From 879490064cafd083121a0cf6d4d42fb7588b9eb0 Mon Sep 17 00:00:00 2001
From: Takamasa Horibe <horibe.takamasa@gmail.com>
Date: Wed, 7 Jun 2023 21:15:19 +0900
Subject: [PATCH 01/19] tmp

Signed-off-by: Takamasa Horibe <horibe.takamasa@gmail.com>
---
 .../autoware-architecture/planning/index.md   | 21 ++++++++++++++++---
 1 file changed, 18 insertions(+), 3 deletions(-)

diff --git a/docs/design/autoware-architecture/planning/index.md b/docs/design/autoware-architecture/planning/index.md
index a422dfd96e2..5ec3e3f26eb 100644
--- a/docs/design/autoware-architecture/planning/index.md
+++ b/docs/design/autoware-architecture/planning/index.md
@@ -1,10 +1,18 @@
 # Planning component design
 
+## Purpose of this document
+
+TODO: 背景と目的の認識合意、誰にどのように使われるかを明確に記載する。
+
+この文書は、Planning Componentの開発における目標やハイレベルな設計戦略、およびそれに関連する意思決定とその理由を説明します。このドキュメントを通じて、すべてのOSS開発者は、Planning Componentがどのような設計思想や制約のもとで設計され、どのような目標を達成するために開発が行われているのかを理解することができます。これにより、円滑な開発参加が可能となります。
+
+さらに、(これらの情報は将来的に分離して管理されるかもしれませんが、)具体的なリファレンス実装や提供される機能の一覧も後半に記載されています。これにより、開発者やユーザーは、Planning Componentを使用することで現在何が可能なのか、機能をどのように活用したり、拡張したり、追加したりすることができるのかを理解することができます。
+
 ## Overview
 
-The Planning component generates the trajectory message that will be subscribed to by the Control component based on the environmental state obtained from the Localization and the Perception components.
+The Planning component generates the trajectory message that will be subscribed to by the Control component based on the environmental state obtained from the Localization and the Perception components. This component design follows the overarching philosophy of Autoware, defined as the [microautonomy concept](https://autowarefoundation.github.io/autoware-documentation/main/design/autoware-concepts/).
 
-## Requirements
+## Goals and non-goals
 
 The goal of the Planning component is to generate a trajectory (path and velocity) of the ego vehicle that is safe and well-regulated while satisfying the given mission.
 
@@ -22,6 +30,13 @@ The goal of the Planning component is to generate a trajectory (path and velocit
 - The Planning component is not designed to always outperform human drivers.
 - The Planning component is not capable of “never crashes”.
 
+## Requirements
+
+ここはGoalとかではなく、Pythonで書く必要がある、みたいなことを書く。PlanningにRequirementsって何がある?
+
+## Assumptions
+
+高島さん曰く、ここにAssumptiosがあった方が良いらしいが、例えばどんなことだろう?
 ## High-level architecture
 
 This diagram describes the high-level architecture of the Planning Component.
@@ -30,7 +45,7 @@ This diagram describes the high-level architecture of the Planning Component.
 
 The Planning component consists of the following sub-components:
 
-- **Mission Planning**: Calculates the route based on the given goal and map information.
+- **Mission Planning**: Calculates the route from a starting position and a given goal based on map information.
 - **Scenario Planning**: Determines the trajectory based on the current scenario, such as Lane Driving or Parking.
   - **Lane Driving**: Calculates the trajectory for driving within constructed lanes.
     - **Behavior Planner**: Calculates suitable trajectory based on safety considerations and traffic rules.

From 33dd7c637883b4c7f6aa02291f9d22e6751e0eb3 Mon Sep 17 00:00:00 2001
From: Takamasa Horibe <horibe.takamasa@gmail.com>
Date: Mon, 19 Jun 2023 18:19:00 +0900
Subject: [PATCH 02/19] update

Signed-off-by: Takamasa Horibe <horibe.takamasa@gmail.com>
---
 .../high-level-planning-diagram.drawio.svg    | 336 +++++++++++++-----
 .../autoware-architecture/planning/index.md   |  70 +++-
 2 files changed, 306 insertions(+), 100 deletions(-)

diff --git a/docs/design/autoware-architecture/planning/image/high-level-planning-diagram.drawio.svg b/docs/design/autoware-architecture/planning/image/high-level-planning-diagram.drawio.svg
index bbf860704b2..f83c6c25a09 100644
--- a/docs/design/autoware-architecture/planning/image/high-level-planning-diagram.drawio.svg
+++ b/docs/design/autoware-architecture/planning/image/high-level-planning-diagram.drawio.svg
@@ -1,6 +1,24 @@
-<svg host="65bd71144e" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="761px" height="836px" viewBox="-0.5 -0.5 761 836" content="&lt;mxfile&gt;&lt;diagram id=&quot;8qt1-HtFgWOiWtJ-FPd8&quot; name=&quot;planning (v0.13.0)&quot;&gt;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&lt;/diagram&gt;&lt;/mxfile&gt;">
+<svg host="65bd71144e" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="1231px" height="836px" viewBox="-0.5 -0.5 1231 836" content="&lt;mxfile&gt;&lt;diagram id=&quot;8qt1-HtFgWOiWtJ-FPd8&quot; name=&quot;planning (v0.13.0)&quot;&gt;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&lt;/diagram&gt;&lt;/mxfile&gt;">
     <defs/>
     <g>
+        <rect x="970" y="50" width="260" height="190" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 258px; height: 1px; padding-top: 57px; margin-left: 971px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <br/>
+                                Legend
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1100" y="69" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Legend
+                </text>
+            </switch>
+        </g>
         <path d="M 80 131.76 L 145.76 131.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
         <path d="M 157.76 131.78 L 145.76 137.77 L 145.77 125.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
         <rect x="0" y="466" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
@@ -67,11 +85,11 @@
                 </text>
             </switch>
         </g>
-        <rect x="160" y="0" width="600" height="50" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <rect x="160" y="0" width="770" height="50" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 598px; height: 1px; padding-top: 25px; margin-left: 161px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 768px; height: 1px; padding-top: 25px; margin-left: 161px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
                                 API Layer
@@ -79,21 +97,21 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="460" y="29" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="545" y="29" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     API Layer
                 </text>
             </switch>
         </g>
-        <path d="M 610 102.05 L 610 64.24" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 610 52.24 L 616 64.24 L 604 64.24 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="160" y="102.05" width="600" height="637.95" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
-        <path d="M 460 210 Q 460 210 460 225.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 460 237.76 L 454 225.76 L 466 225.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="220" y="154" width="480" height="56" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <path d="M 737.5 102.05 L 737.5 64.24" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 737.5 52.24 L 743.5 64.24 L 731.5 64.24 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="160" y="102.05" width="770" height="637.95" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <path d="M 545 210 Q 545 210 545 225.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 545 237.76 L 539 225.76 L 551 225.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="220" y="154" width="650" height="56" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 478px; height: 1px; padding-top: 182px; margin-left: 221px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 648px; height: 1px; padding-top: 182px; margin-left: 221px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
                                 <b>
@@ -103,16 +121,16 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="460" y="186" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="545" y="186" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     Mission Planning
                 </text>
             </switch>
         </g>
-        <rect x="220" y="240" width="480" height="390" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <rect x="220" y="240" width="650" height="390" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 478px; height: 1px; padding-top: 247px; margin-left: 221px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 648px; height: 1px; padding-top: 247px; margin-left: 221px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
                                 <b>
@@ -123,16 +141,16 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="460" y="259" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="545" y="259" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     Scenario Planning
                 </text>
             </switch>
         </g>
-        <rect x="245" y="300" width="265" height="290" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <rect x="255" y="300" width="395" height="290" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 263px; height: 1px; padding-top: 307px; margin-left: 246px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 393px; height: 1px; padding-top: 307px; margin-left: 256px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
                                 <b>
@@ -143,18 +161,18 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="378" y="319" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="453" y="319" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     Lane Driving Scenario
                 </text>
             </switch>
         </g>
-        <path d="M 607.5 590 L 607.5 610 L 460 610 L 460 645.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 460 657.76 L 454 645.76 L 466 645.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="540" y="300" width="135" height="290" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <path d="M 767.5 590 L 767.5 610 L 608 610 L 545 610 L 545 645.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 545 657.76 L 539 645.76 L 551 645.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="700" y="300" width="135" height="290" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 133px; height: 1px; padding-top: 307px; margin-left: 541px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 133px; height: 1px; padding-top: 307px; margin-left: 701px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
                                 <b>
@@ -165,18 +183,18 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="608" y="319" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="768" y="319" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     Parking Scenario
                 </text>
             </switch>
         </g>
-        <path d="M 377.5 445 Q 377.5 445 377.5 461.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 377.5 473.76 L 371.5 461.76 L 383.5 461.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="265" y="350" width="225" height="95" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <path d="M 452.5 445 Q 452.5 445 452.5 461.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 452.5 473.76 L 446.5 461.76 L 458.5 461.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="275" y="350" width="355" height="95" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 223px; height: 1px; padding-top: 357px; margin-left: 266px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 353px; height: 1px; padding-top: 357px; margin-left: 276px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
                                 <b>
@@ -186,18 +204,18 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="378" y="369" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="453" y="369" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     Behavior Planning
                 </text>
             </switch>
         </g>
-        <path d="M 377.5 571 L 377.5 610 L 460 610 L 460 645.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 460 657.76 L 454 645.76 L 466 645.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="265" y="476" width="225" height="95" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <path d="M 452.5 571 L 452.5 610 L 545 610 L 545 645.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 545 657.76 L 539 645.76 L 551 645.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="275" y="476" width="355" height="95" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 223px; height: 1px; padding-top: 483px; margin-left: 266px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 353px; height: 1px; padding-top: 483px; margin-left: 276px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
                                 <b>
@@ -207,18 +225,18 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="378" y="495" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="453" y="495" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     Motion Planning
                 </text>
             </switch>
         </g>
-        <path d="M 460 716 L 460 765.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 460 777.76 L 454 765.76 L 466 765.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="220" y="660" width="480" height="56" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <path d="M 545 716 L 545 769.81" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 545 781.81 L 539 769.81 L 551 769.81 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="220" y="660" width="650" height="56" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 478px; height: 1px; padding-top: 688px; margin-left: 221px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 648px; height: 1px; padding-top: 688px; margin-left: 221px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
                                 <b>
@@ -228,16 +246,16 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="460" y="692" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="545" y="692" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     Validation
                 </text>
             </switch>
         </g>
-        <rect x="160" y="784.05" width="600" height="50" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <rect x="160" y="784.05" width="770" height="50" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 598px; height: 1px; padding-top: 809px; margin-left: 161px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 768px; height: 1px; padding-top: 809px; margin-left: 161px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
                                 Control Component
@@ -245,7 +263,7 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="460" y="813" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="545" y="813" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     Control Component
                 </text>
             </switch>
@@ -270,8 +288,8 @@
                 </text>
             </switch>
         </g>
-        <path d="M 460 54 L 460 139.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 460 151.76 L 454 139.76 L 466 139.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <path d="M 545 54 L 545 139.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 545 151.76 L 539 139.76 L 551 139.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
         <rect x="0" y="610" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
@@ -315,11 +333,11 @@
                 </text>
             </switch>
         </g>
-        <rect x="283" y="383.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="293" y="383.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 393px; margin-left: 284px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 393px; margin-left: 294px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
@@ -329,16 +347,16 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="328" y="396" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="338" y="396" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     Lane Change
                 </text>
             </switch>
         </g>
-        <rect x="389" y="383.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="408" y="383.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 393px; margin-left: 390px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 393px; margin-left: 409px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
@@ -348,16 +366,16 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="434" y="396" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="453" y="396" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     Intersection
                 </text>
             </switch>
         </g>
-        <rect x="283" y="414.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="520" y="383.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 424px; margin-left: 284px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 393px; margin-left: 521px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
@@ -367,16 +385,16 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="328" y="427" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="565" y="396" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     Crosswalk
                 </text>
             </switch>
         </g>
-        <rect x="389" y="414.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="520" y="413.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 424px; margin-left: 390px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 423px; margin-left: 521px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
                                 <div style="">
@@ -386,16 +404,16 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="434" y="427" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="565" y="426" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     etc...
                 </text>
             </switch>
         </g>
-        <rect x="283" y="513.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="293" y="513.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 523px; margin-left: 284px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 523px; margin-left: 294px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
@@ -405,16 +423,16 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="328" y="526" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="338" y="526" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     Path Smooth
                 </text>
             </switch>
         </g>
-        <rect x="386" y="513.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="408" y="513.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 523px; margin-left: 387px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 523px; margin-left: 409px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
@@ -424,16 +442,16 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="431" y="526" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="453" y="526" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     Velocity Smooth
                 </text>
             </switch>
         </g>
-        <rect x="283" y="544.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="293" y="544.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 554px; margin-left: 284px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 554px; margin-left: 294px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
@@ -443,16 +461,16 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="328" y="557" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="338" y="557" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     Collision Check
                 </text>
             </switch>
         </g>
-        <rect x="386" y="544.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="520" y="544.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 554px; margin-left: 387px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 554px; margin-left: 521px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
                                 <div style="">
@@ -462,16 +480,16 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="431" y="557" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="565" y="557" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     etc...
                 </text>
             </switch>
         </g>
-        <rect x="562" y="393.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="722" y="393.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 403px; margin-left: 563px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 403px; margin-left: 723px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
@@ -481,16 +499,16 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="607" y="406" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="767" y="406" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     Free Space
                 </text>
             </switch>
         </g>
-        <rect x="562" y="424.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="722" y="424.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 434px; margin-left: 563px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 434px; margin-left: 723px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
@@ -500,16 +518,16 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="607" y="437" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="767" y="437" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     Cost map
                 </text>
             </switch>
         </g>
-        <rect x="562" y="457.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="722" y="457.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 467px; margin-left: 563px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 467px; margin-left: 723px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
                                 <div style="">
@@ -519,7 +537,7 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="607" y="470" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="767" y="470" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     etc...
                 </text>
             </switch>
@@ -532,41 +550,187 @@
         <path d="M 157.76 531.78 L 145.76 537.77 L 145.77 525.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
         <path d="M 94.56 675.11 L 160 674.86" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
         <path d="M 82.56 675.15 L 94.53 669.11 L 94.58 681.11 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="550" y="684.52" width="122" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="672" y="175" width="122" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 120px; height: 1px; padding-top: 694px; margin-left: 551px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 120px; height: 1px; padding-top: 184px; margin-left: 673px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
-                                    Trajectory Validation
+                                    Route Planning
                                 </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="611" y="697" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
-                    Trajectory Validation
+                <text x="733" y="188" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Route Planning
                 </text>
             </switch>
         </g>
-        <rect x="550" y="176.52" width="122" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="293" y="413.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 120px; height: 1px; padding-top: 186px; margin-left: 551px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 423px; margin-left: 294px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
-                                    Route Planning
+                                    Avoidance
                                 </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="611" y="189" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
-                    Route Planning
+                <text x="338" y="426" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Avoidance
+                </text>
+            </switch>
+        </g>
+        <rect x="408" y="413.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 423px; margin-left: 409px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Pull Over
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="453" y="426" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Pull Over
+                </text>
+            </switch>
+        </g>
+        <rect x="520" y="513.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 523px; margin-left: 521px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Drivable Area
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="565" y="526" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Drivable Area
+                </text>
+            </switch>
+        </g>
+        <rect x="408" y="544.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 554px; margin-left: 409px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Slow Down
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="453" y="557" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Slow Down
+                </text>
+            </switch>
+        </g>
+        <rect x="633" y="678.51" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 688px; margin-left: 634px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    TTC Check
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="678" y="691" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    TTC Check
+                </text>
+            </switch>
+        </g>
+        <rect x="743" y="678.51" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 688px; margin-left: 744px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    ACC Check
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="788" y="691" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    ACC Check
+                </text>
+            </switch>
+        </g>
+        <rect x="1010" y="101.05" width="180" height="27.95" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 178px; height: 1px; padding-top: 108px; margin-left: 1011px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Planning (Sub) Components
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1100" y="120" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Planning (Sub) Components
+                </text>
+            </switch>
+        </g>
+        <rect x="1010" y="145.05" width="180" height="27.95" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 178px; height: 1px; padding-top: 152px; margin-left: 1011px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Planning Modules
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1100" y="164" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Planning Modules
+                </text>
+            </switch>
+        </g>
+        <rect x="1010" y="191" width="180" height="27.95" fill="#f5f5f5" stroke="#000000" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 178px; height: 1px; padding-top: 198px; margin-left: 1011px;">
+                        <div data-drawio-colors="color: #000000; " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Other Components
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1100" y="210" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Other Components
                 </text>
             </switch>
         </g>
diff --git a/docs/design/autoware-architecture/planning/index.md b/docs/design/autoware-architecture/planning/index.md
index 5ec3e3f26eb..ef56be959d6 100644
--- a/docs/design/autoware-architecture/planning/index.md
+++ b/docs/design/autoware-architecture/planning/index.md
@@ -1,12 +1,17 @@
 # Planning component design
 
+
 ## Purpose of this document
 
-TODO: 背景と目的の認識合意、誰にどのように使われるかを明確に記載する。
+<!-- この文書は、Planning Componentの開発における目標やハイレベルな設計戦略、およびそれに関連する意思決定とその理由を説明します。このドキュメントを通じて、すべてのOSS開発者は、Planning Componentがどのような設計思想や制約のもとで設計され、どのような目標を達成するために開発が行われているのかを理解することができます。これにより、円滑な開発参加が可能となります。
+
+さらに、(これらの情報は将来的に分離して管理されるかもしれませんが、)具体的なリファレンス実装や提供される機能の一覧も後半に記載されています。これにより、開発者やユーザーは、Planning Componentを使用することで現在何が可能なのか、機能をどのように活用したり、拡張したり、追加したりすることができるのかを理解することができます。 -->
+
 
-この文書は、Planning Componentの開発における目標やハイレベルな設計戦略、およびそれに関連する意思決定とその理由を説明します。このドキュメントを通じて、すべてのOSS開発者は、Planning Componentがどのような設計思想や制約のもとで設計され、どのような目標を達成するために開発が行われているのかを理解することができます。これにより、円滑な開発参加が可能となります。
+This document outlines the goals, high-level design strategies, and related rationales in the development of the Planning Component. Through this document, all OSS developers will be able to comprehend the design philosophy and constraints under which the Planning Component is designed, and the goals driving its development. This will enable them to participate seamlessly in the development.
+
+Furthermore, a list of concrete reference implementations and provided features is also included in the latter part of this document, while this information might be managed separately in the future. This allows developers and users to understand what is currently possible with the Planning Component, how to utilize, expand, or add to its features.
 
-さらに、(これらの情報は将来的に分離して管理されるかもしれませんが、)具体的なリファレンス実装や提供される機能の一覧も後半に記載されています。これにより、開発者やユーザーは、Planning Componentを使用することで現在何が可能なのか、機能をどのように活用したり、拡張したり、追加したりすることができるのかを理解することができます。
 
 ## Overview
 
@@ -14,30 +19,44 @@ The Planning component generates the trajectory message that will be subscribed
 
 ## Goals and non-goals
 
-The goal of the Planning component is to generate a trajectory (path and velocity) of the ego vehicle that is safe and well-regulated while satisfying the given mission.
+The goal of the Planning component is to generate a trajectory (path and velocity) of the self-driving vehicle that is safe and well-regulated while satisfying the given mission.
+
+<!-- 全体の設計においては、microautonomyのコンセプトに従い、適切なモジュール化と明確なインターフェース定義、およびそれにって得られる高い拡張性を重要視します。すなわち、Autowareにおけるplanningモジュールの目的は、世の中すべての複雑なUseCaseを達成することではなく(もちろん基本的なUseCaseが達成できるレベルのソフトはベースとして提供されるべきですが)、ユーザーの要求レベルに合わせて適切にカスタマイズできる(更には必要な機能が適切に追加開発できる)platformを提供することです。 -->
+
+In our overall design, we emphasize the concept of "microautonomy". This term refers to a design approach that focuses on the proper modularization of functions, clear definition of interfaces between these modules, and as a result, high expandability of the system.
+
+The purpose of the planning module in our Autoware system is not to solve every conceivable complex use case (although we do aim to support basic ones), but rather to provide a platform that can be customized to the user's needs and can facilitate the development of additional features.
 
 **Goals:**
 
-- The basic functions are provided so that a simple ODD can be defined.
+- The basic functions are provided so that a simple ODD (Operational Design Domain) can be defined.
 - The functionality is modularized to accommodate the third-party components. That is, a complicated or realistic ODD needs not be defined by the basic functions provided by default.
 - The capability is extensible with the third-party components or the decision of human operators.
-- The mechanism and policy are separated to allow the system or operators to change the behavior of the ego vehicle. Ultimately speaking, the policy can be set to crash an obstacle and the mechanism always follows. Otherwise, the system is not safe from the design point of view.
+
+<!-- Not sure what the following says. -->
+ <!-- - The mechanism and policy are separated to allow the system or operators to change the behavior of the ego vehicle. Ultimately speaking, the policy can be set to crash an obstacle and the mechanism always follows. Otherwise, the system is not safe from the design point of view. -->
 
 **Non-goals:**
 
-- The Planning component is not self-contained but can be extended with third parties.
+
+The following points are listed as non-goals, intended to clarify our design concepts. However, it's important to note that while we do not demand a "never crash" capability as listed below, our architecture should still be designed in a manner that could accommodate the needs to achieve a "never crash" state through third-party extensions or future enhancements.
+
+- The Planning component is not self-contained but can be extended and enhanced with third parties.
 - The Planning component is not aimed at the complete functionality and capability.
 - The Planning component is not designed to always outperform human drivers.
 - The Planning component is not capable of “never crashes”.
 
+ While "never crashes" is not a present goals, we need to create an architecture that can potentially achieve such a state with third-party components or decision of human operators or future enhancement.
+
+
 ## Requirements
 
 ここはGoalとかではなく、Pythonで書く必要がある、みたいなことを書く。PlanningにRequirementsって何がある?
 
 ## Assumptions
 
-高島さん曰く、ここにAssumptiosがあった方が良いらしいが、例えばどんなことだろう?
-## High-level architecture
+Assumptiosがあった方が良いらしいが、例えばどんなことだろう?
+## High level design
 
 This diagram describes the high-level architecture of the Planning Component.
 
@@ -53,9 +72,28 @@ The Planning component consists of the following sub-components:
   - **Parking**: Calculates the trajectory for parking in unstructured areas.
 - **Validation**: Verifies the safety of the trajectory.
 
-Each component contains some modules that can be dynamically loaded and unloaded based on the situation. For instance, the Behavior Planning component includes modules such as lane change, intersection, and crosswalk modules.
+Following the microautonomy architecture, we adopt a modular system framework where the tasks are implemented as modules that can be dynamically loaded and unloaded to achieve different features depending on the given use cases. For instance, the Behavior Planning component includes modules such as lane change, intersection, and crosswalk modules.
 
-Our planning components are built based on the microautonomy architecture with Autoware. We adopt a modular system framework where the tasks are implemented as modules that can be dynamically loaded and unloaded to achieve different features depending on the given use cases.
+
+<!-- **Rationale**
+Planningと各Componentの分離について。planningとperceptionやcontrol componentを分離して開発することにより、third-party のperception component などとの連携は非常に簡単に実行できる(利用するコンポーネントを切り替えるだけである)。しかし、ここには性能と拡張性のトレードオフが存在する。例えば、perception componentは本来planning componentが必要とする物体に対してのみ認識と移動予測を行えば十分であるが、componentを分離するとこのような密なコミュニケーションを行うことができない。また、計画と制御の分離によって、車両運動性能を適切に考慮した上で計画を行うことが難しくなる。これを補うためには、interfaceでやり取りをする情報を増やす必要があったり、計算量を増やす必要が出てくる。
+
+**Rationale**
+Scenario Planningレイヤーの導入について。レーン構造が整備されているエリアでの走行と、駐車場のようなフリースペースエリアの走行ではインターフェースの定義や利用可能な情報のレベルが異なる。例えば、Lane Drivingでは地図のIDがついた経路を取り扱えるのに対し、これはフリースペースでの計画に対して適切ではない。また今後さらに異なるインターフェースを持つべきシナリオが現れた際に柔軟に対応できるように、シナリオレベルでplanningのコンポーネントを切り替えるという仕組みを導入している。一方で、異なるシナリオ間でモジュールを再利用できない点は課題として残っている。
+
+**Rationale**
+BehaviorとMotionの分離について。Planning全体を振る舞いを決定する「Behavior」と、最終的な運動動作を決定する「Motion」に分離することは王道のアプローチである。ただしこれは性能とのトレードオフであり、機能を分離するほど性能が劣化する。例えば、Behaviorは最終的にMotionがどのような計算をするかを知る前に判断を行わなければならず、一般的に保守的な判断を行うことになる。一方で、behaviorとmotionを結合したシステムでは判断と乗り心地といった概念が結合しており、機能の拡張性の面で課題が残る。我々は拡張性を重要視し、behavior-motionの構成で開発を進めている。(昔に議論された[こちらの資料](https://github.com/tier4/AutowareArchitectureProposal.proj/blob/main/docs/design/software_architecture/Planning/DesignRationale.md)も役に立つ。) -->
+
+
+**Rationale for the separation of planning and other components**
+ By developing the planning, perception, localzition, and control components separately, it becomes easy to collaborate with third-party components in the component level. However, there's a trade-off between performance and extensibility here. For instance, a perception component would ideally perform recognition and motion prediction only for the objects that the planning component needs, but separating the components hinders such close communication. Additionally, separating planning and control makes it harder to consider vehicle motion performance when planning. To compensate for this, it's necessary to either increase the information exchanged via the interface or increase the computation load.
+
+
+**Rationale for introducing the Scenario Planning layer**
+The definition of the interface and the level of available information vary between driving in an area with well-structured lanes and driving in a free-space area like a parking lot. For example, while Lane Driving can handle routes with map IDs, this is not appropriate for planning in free space. To flexibly handle future scenarios that might require different interfaces, we have introduced a mechanism that switches planning components at the scenario level. However, a remaining issue is the inability to reuse modules across different scenarios.
+
+**Rationale for the separation of Behavior and Motion**
+The classic approach to Planning involves dividing it into 'Behavior', which decides the action, and 'Motion', which determines the final movement. However, this separation implies a trade-off with performance, as performance tends to degrade with increasing separation of functions. For example, Behavior needs to make decisions without prior knowledge of the computations that Motion will eventually perform, which generally results in conservative decision-making. On the other hand, if behavior and motion are integrated, motion performance and decision-making become interdependent, creating challenges in terms of expandability, such as when you wish to extend only the decision-making function to follow a regional traffic rules. We prioritize expandability and continue to develop using a behavior-motion configuration. (This [previously discussed document](https://github.com/tier4/AutowareArchitectureProposal.proj/blob/main/docs/design/software_architecture/Planning/DesignRationale.md) may be useful.)
 
 ## Component interface
 
@@ -106,11 +144,15 @@ This section describes the inputs and outputs of the Planning Component and of i
 - **Validation to Control Component**
   - Trajectory: Same as above but with some additional safety considerations.
 
-## How to add new modules (WIP)
+## How to add new features (WIP)
 
 As mentioned in the goal session, this planning module is designed to be extensible by third-party components. For specific instructions on how to add new modules and expand its functionality, please refer to the provided documentation or guidelines (WIP).
 
-## Supported Functions
+
+
+## Detailed information
+
+### Supported features
 
 | Feature                                      | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | Requirements                                                                | Figure                                                                          |
 | -------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------- | ------------------------------------------------------------------------------- |
@@ -154,7 +196,7 @@ As mentioned in the goal session, this planning module is designed to be extensi
 
 <!-- ![supported-functions](image/planning-functions.drawio.svg) -->
 
-## Reference Implementation
+### Reference Implementation
 
 The following diagram describes the reference implementation of the Planning component. By adding new modules or extending the functionalities, various ODDs can be supported.
 

From 94eabed72404c2a350bad65c49b92a2a344da188 Mon Sep 17 00:00:00 2001
From: Takamasa Horibe <horibe.takamasa@gmail.com>
Date: Mon, 19 Jun 2023 18:22:47 +0900
Subject: [PATCH 03/19] pre-commit

Signed-off-by: Takamasa Horibe <horibe.takamasa@gmail.com>
---
 .../autoware-architecture/planning/index.md       | 15 +++------------
 1 file changed, 3 insertions(+), 12 deletions(-)

diff --git a/docs/design/autoware-architecture/planning/index.md b/docs/design/autoware-architecture/planning/index.md
index ef56be959d6..e1672f2a989 100644
--- a/docs/design/autoware-architecture/planning/index.md
+++ b/docs/design/autoware-architecture/planning/index.md
@@ -1,18 +1,15 @@
 # Planning component design
 
-
 ## Purpose of this document
 
 <!-- この文書は、Planning Componentの開発における目標やハイレベルな設計戦略、およびそれに関連する意思決定とその理由を説明します。このドキュメントを通じて、すべてのOSS開発者は、Planning Componentがどのような設計思想や制約のもとで設計され、どのような目標を達成するために開発が行われているのかを理解することができます。これにより、円滑な開発参加が可能となります。
 
 さらに、(これらの情報は将来的に分離して管理されるかもしれませんが、)具体的なリファレンス実装や提供される機能の一覧も後半に記載されています。これにより、開発者やユーザーは、Planning Componentを使用することで現在何が可能なのか、機能をどのように活用したり、拡張したり、追加したりすることができるのかを理解することができます。 -->
 
-
 This document outlines the goals, high-level design strategies, and related rationales in the development of the Planning Component. Through this document, all OSS developers will be able to comprehend the design philosophy and constraints under which the Planning Component is designed, and the goals driving its development. This will enable them to participate seamlessly in the development.
 
 Furthermore, a list of concrete reference implementations and provided features is also included in the latter part of this document, while this information might be managed separately in the future. This allows developers and users to understand what is currently possible with the Planning Component, how to utilize, expand, or add to its features.
 
-
 ## Overview
 
 The Planning component generates the trajectory message that will be subscribed to by the Control component based on the environmental state obtained from the Localization and the Perception components. This component design follows the overarching philosophy of Autoware, defined as the [microautonomy concept](https://autowarefoundation.github.io/autoware-documentation/main/design/autoware-concepts/).
@@ -38,7 +35,6 @@ The purpose of the planning module in our Autoware system is not to solve every
 
 **Non-goals:**
 
-
 The following points are listed as non-goals, intended to clarify our design concepts. However, it's important to note that while we do not demand a "never crash" capability as listed below, our architecture should still be designed in a manner that could accommodate the needs to achieve a "never crash" state through third-party extensions or future enhancements.
 
 - The Planning component is not self-contained but can be extended and enhanced with third parties.
@@ -46,8 +42,7 @@ The following points are listed as non-goals, intended to clarify our design con
 - The Planning component is not designed to always outperform human drivers.
 - The Planning component is not capable of “never crashes”.
 
- While "never crashes" is not a present goals, we need to create an architecture that can potentially achieve such a state with third-party components or decision of human operators or future enhancement.
-
+While "never crashes" is not a present goals, we need to create an architecture that can potentially achieve such a state with third-party components or decision of human operators or future enhancement.
 
 ## Requirements
 
@@ -56,6 +51,7 @@ The following points are listed as non-goals, intended to clarify our design con
 ## Assumptions
 
 Assumptiosがあった方が良いらしいが、例えばどんなことだろう?
+
 ## High level design
 
 This diagram describes the high-level architecture of the Planning Component.
@@ -74,7 +70,6 @@ The Planning component consists of the following sub-components:
 
 Following the microautonomy architecture, we adopt a modular system framework where the tasks are implemented as modules that can be dynamically loaded and unloaded to achieve different features depending on the given use cases. For instance, the Behavior Planning component includes modules such as lane change, intersection, and crosswalk modules.
 
-
 <!-- **Rationale**
 Planningと各Componentの分離について。planningとperceptionやcontrol componentを分離して開発することにより、third-party のperception component などとの連携は非常に簡単に実行できる(利用するコンポーネントを切り替えるだけである)。しかし、ここには性能と拡張性のトレードオフが存在する。例えば、perception componentは本来planning componentが必要とする物体に対してのみ認識と移動予測を行えば十分であるが、componentを分離するとこのような密なコミュニケーションを行うことができない。また、計画と制御の分離によって、車両運動性能を適切に考慮した上で計画を行うことが難しくなる。これを補うためには、interfaceでやり取りをする情報を増やす必要があったり、計算量を増やす必要が出てくる。
 
@@ -84,10 +79,8 @@ Scenario Planningレイヤーの導入について。レーン構造が整備さ
 **Rationale**
 BehaviorとMotionの分離について。Planning全体を振る舞いを決定する「Behavior」と、最終的な運動動作を決定する「Motion」に分離することは王道のアプローチである。ただしこれは性能とのトレードオフであり、機能を分離するほど性能が劣化する。例えば、Behaviorは最終的にMotionがどのような計算をするかを知る前に判断を行わなければならず、一般的に保守的な判断を行うことになる。一方で、behaviorとmotionを結合したシステムでは判断と乗り心地といった概念が結合しており、機能の拡張性の面で課題が残る。我々は拡張性を重要視し、behavior-motionの構成で開発を進めている。(昔に議論された[こちらの資料](https://github.com/tier4/AutowareArchitectureProposal.proj/blob/main/docs/design/software_architecture/Planning/DesignRationale.md)も役に立つ。) -->
 
-
 **Rationale for the separation of planning and other components**
- By developing the planning, perception, localzition, and control components separately, it becomes easy to collaborate with third-party components in the component level. However, there's a trade-off between performance and extensibility here. For instance, a perception component would ideally perform recognition and motion prediction only for the objects that the planning component needs, but separating the components hinders such close communication. Additionally, separating planning and control makes it harder to consider vehicle motion performance when planning. To compensate for this, it's necessary to either increase the information exchanged via the interface or increase the computation load.
-
+By developing the planning, perception, localzition, and control components separately, it becomes easy to collaborate with third-party components in the component level. However, there's a trade-off between performance and extensibility here. For instance, a perception component would ideally perform recognition and motion prediction only for the objects that the planning component needs, but separating the components hinders such close communication. Additionally, separating planning and control makes it harder to consider vehicle motion performance when planning. To compensate for this, it's necessary to either increase the information exchanged via the interface or increase the computation load.
 
 **Rationale for introducing the Scenario Planning layer**
 The definition of the interface and the level of available information vary between driving in an area with well-structured lanes and driving in a free-space area like a parking lot. For example, while Lane Driving can handle routes with map IDs, this is not appropriate for planning in free space. To flexibly handle future scenarios that might require different interfaces, we have introduced a mechanism that switches planning components at the scenario level. However, a remaining issue is the inability to reuse modules across different scenarios.
@@ -148,8 +141,6 @@ This section describes the inputs and outputs of the Planning Component and of i
 
 As mentioned in the goal session, this planning module is designed to be extensible by third-party components. For specific instructions on how to add new modules and expand its functionality, please refer to the provided documentation or guidelines (WIP).
 
-
-
 ## Detailed information
 
 ### Supported features

From 6cc498e4f3a5dc42c41ff6b2de7470cc755c0001 Mon Sep 17 00:00:00 2001
From: Takamasa Horibe <horibe.takamasa@gmail.com>
Date: Mon, 19 Jun 2023 22:31:27 +0900
Subject: [PATCH 04/19] tmp

Signed-off-by: Takamasa Horibe <horibe.takamasa@gmail.com>
---
 .../autoware-architecture/planning/index.md   | 31 ++++++++++++-------
 1 file changed, 20 insertions(+), 11 deletions(-)

diff --git a/docs/design/autoware-architecture/planning/index.md b/docs/design/autoware-architecture/planning/index.md
index e1672f2a989..a8cf7ee202d 100644
--- a/docs/design/autoware-architecture/planning/index.md
+++ b/docs/design/autoware-architecture/planning/index.md
@@ -6,23 +6,19 @@
 
 さらに、(これらの情報は将来的に分離して管理されるかもしれませんが、)具体的なリファレンス実装や提供される機能の一覧も後半に記載されています。これにより、開発者やユーザーは、Planning Componentを使用することで現在何が可能なのか、機能をどのように活用したり、拡張したり、追加したりすることができるのかを理解することができます。 -->
 
-This document outlines the goals, high-level design strategies, and related rationales in the development of the Planning Component. Through this document, all OSS developers will be able to comprehend the design philosophy and constraints under which the Planning Component is designed, and the goals driving its development. This will enable them to participate seamlessly in the development.
+This document outlines the goals, high-level design strategies, and related rationales in the development of the Planning Component. Through this document, all OSS developers will be able to comprehend the design philosophy, goals and constraints under which the Planning Component is designed. This will enable them to participate seamlessly in the development.
 
 Furthermore, a list of concrete reference implementations and provided features is also included in the latter part of this document, while this information might be managed separately in the future. This allows developers and users to understand what is currently possible with the Planning Component, how to utilize, expand, or add to its features.
 
-## Overview
-
-The Planning component generates the trajectory message that will be subscribed to by the Control component based on the environmental state obtained from the Localization and the Perception components. This component design follows the overarching philosophy of Autoware, defined as the [microautonomy concept](https://autowarefoundation.github.io/autoware-documentation/main/design/autoware-concepts/).
-
 ## Goals and non-goals
 
-The goal of the Planning component is to generate a trajectory (path and velocity) of the self-driving vehicle that is safe and well-regulated while satisfying the given mission.
+The role of the Planning component is to generate a trajectory (path and velocity) of the self-driving vehicle that is safe and well-regulated while satisfying the given mission.
 
 <!-- 全体の設計においては、microautonomyのコンセプトに従い、適切なモジュール化と明確なインターフェース定義、およびそれにって得られる高い拡張性を重要視します。すなわち、Autowareにおけるplanningモジュールの目的は、世の中すべての複雑なUseCaseを達成することではなく(もちろん基本的なUseCaseが達成できるレベルのソフトはベースとして提供されるべきですが)、ユーザーの要求レベルに合わせて適切にカスタマイズできる(更には必要な機能が適切に追加開発できる)platformを提供することです。 -->
 
-In our overall design, we emphasize the concept of "microautonomy". This term refers to a design approach that focuses on the proper modularization of functions, clear definition of interfaces between these modules, and as a result, high expandability of the system.
+In our overall design, we emphasize the concept of "[microautonomy](https://autowarefoundation.github.io/autoware-documentation/main/design/autoware-concepts)". This term refers to a design approach that focuses on the proper modularization of functions, clear definition of interfaces between these modules, and as a result, high expandability of the system. 
 
-The purpose of the planning module in our Autoware system is not to solve every conceivable complex use case (although we do aim to support basic ones), but rather to provide a platform that can be customized to the user's needs and can facilitate the development of additional features.
+The goal of the Planning component is not to solve every conceivable complex use case (although we do aim to support basic ones), but rather to provide a platform that can be customized to the user's needs and can facilitate the development of additional features.
 
 **Goals:**
 
@@ -35,7 +31,7 @@ The purpose of the planning module in our Autoware system is not to solve every
 
 **Non-goals:**
 
-The following points are listed as non-goals, intended to clarify our design concepts. However, it's important to note that while we do not demand a "never crash" capability as listed below, our architecture should still be designed in a manner that could accommodate the needs to achieve a "never crash" state through third-party extensions or future enhancements.
+To clarify our design concepts, the following points are listed as non-goals.
 
 - The Planning component is not self-contained but can be extended and enhanced with third parties.
 - The Planning component is not aimed at the complete functionality and capability.
@@ -79,14 +75,27 @@ Scenario Planningレイヤーの導入について。レーン構造が整備さ
 **Rationale**
 BehaviorとMotionの分離について。Planning全体を振る舞いを決定する「Behavior」と、最終的な運動動作を決定する「Motion」に分離することは王道のアプローチである。ただしこれは性能とのトレードオフであり、機能を分離するほど性能が劣化する。例えば、Behaviorは最終的にMotionがどのような計算をするかを知る前に判断を行わなければならず、一般的に保守的な判断を行うことになる。一方で、behaviorとmotionを結合したシステムでは判断と乗り心地といった概念が結合しており、機能の拡張性の面で課題が残る。我々は拡張性を重要視し、behavior-motionの構成で開発を進めている。(昔に議論された[こちらの資料](https://github.com/tier4/AutowareArchitectureProposal.proj/blob/main/docs/design/software_architecture/Planning/DesignRationale.md)も役に立つ。) -->
 
+### Discussions
+
+The following provides discussion points on trade-offs in the architecture. From this information, you will understand the current design philosophy of the Planning Component, its challenges, and potential improvement.
+
 **Rationale for the separation of planning and other components**
 By developing the planning, perception, localzition, and control components separately, it becomes easy to collaborate with third-party components in the component level. However, there's a trade-off between performance and extensibility here. For instance, a perception component would ideally perform recognition and motion prediction only for the objects that the planning component needs, but separating the components hinders such close communication. Additionally, separating planning and control makes it harder to consider vehicle motion performance when planning. To compensate for this, it's necessary to either increase the information exchanged via the interface or increase the computation load.
 
 **Rationale for introducing the Scenario Planning layer**
-The definition of the interface and the level of available information vary between driving in an area with well-structured lanes and driving in a free-space area like a parking lot. For example, while Lane Driving can handle routes with map IDs, this is not appropriate for planning in free space. To flexibly handle future scenarios that might require different interfaces, we have introduced a mechanism that switches planning components at the scenario level. However, a remaining issue is the inability to reuse modules across different scenarios.
+There are different requirements for interfaces between driving in well-structured lanes and driving in a free-space area like a parking lot. For example, while Lane Driving can handle routes with map IDs, this is not appropriate for planning in free space. The mechanism that switches planning sub-components at the scenario level (Lane Driving, Parking, etc) enables a flexible design of the interface, however, it has a drawbacks of the reuse of modules across different scenarios.
+
 
 **Rationale for the separation of Behavior and Motion**
-The classic approach to Planning involves dividing it into 'Behavior', which decides the action, and 'Motion', which determines the final movement. However, this separation implies a trade-off with performance, as performance tends to degrade with increasing separation of functions. For example, Behavior needs to make decisions without prior knowledge of the computations that Motion will eventually perform, which generally results in conservative decision-making. On the other hand, if behavior and motion are integrated, motion performance and decision-making become interdependent, creating challenges in terms of expandability, such as when you wish to extend only the decision-making function to follow a regional traffic rules. We prioritize expandability and continue to develop using a behavior-motion configuration. (This [previously discussed document](https://github.com/tier4/AutowareArchitectureProposal.proj/blob/main/docs/design/software_architecture/Planning/DesignRationale.md) may be useful.)
+The classic approach to Planning involves dividing it into "Behavior", which decides the action, and "Motion", which determines the final movement. However, this separation implies a trade-off with performance, as performance tends to degrade with increasing separation of functions. For example, Behavior needs to make decisions without prior knowledge of the computations that Motion will eventually perform, which generally results in conservative decision-making. On the other hand, if behavior and motion are integrated, motion performance and decision-making become interdependent, creating challenges in terms of expandability, such as when you wish to extend only the decision-making function to follow a regional traffic rules.
+
+To understand this background. this [previously discussed document](https://github.com/tier4/AutowareArchitectureProposal.proj/blob/main/docs/design/software_architecture/Planning/DesignRationale.md) may be useful.
+
+
+### Policies
+
+Autowareは拡張性の高いデザインを
+
 
 ## Component interface
 

From 47f672f48a7e644d283f3302c582e68c5d850294 Mon Sep 17 00:00:00 2001
From: Takamasa Horibe <horibe.takamasa@gmail.com>
Date: Mon, 19 Jun 2023 22:56:36 +0900
Subject: [PATCH 05/19] update

Signed-off-by: Takamasa Horibe <horibe.takamasa@gmail.com>
---
 .../autoware-architecture/planning/index.md   | 25 ++++++++++++++++++-
 1 file changed, 24 insertions(+), 1 deletion(-)

diff --git a/docs/design/autoware-architecture/planning/index.md b/docs/design/autoware-architecture/planning/index.md
index a8cf7ee202d..e5bee0eb570 100644
--- a/docs/design/autoware-architecture/planning/index.md
+++ b/docs/design/autoware-architecture/planning/index.md
@@ -94,7 +94,30 @@ To understand this background. this [previously discussed document](https://gith
 
 ### Policies
 
-Autowareは拡張性の高いデザインを
+様々なニーズやODDへの適応は、異なるpolicyという形で表現することができます。例えば、自動走行レベルにおいて、Planningは以下のpolicyを提供します。
+
+- **Fully-autonomous** that delegates all decision makings to the system, thus the system is responsible for the safety.
+- **Semi-autonomous** that delegates most of decision makings to the system but the rest of decision makings strictly defined remain with the human operator, thus both the system and the human operator are responsible for the safety.
+- **Motion-autonomous** that delegates only the low-level motion plan to the system, while high-level mission and behavior plannings remain with the human operator, thus the human operator is responsible for the safety.
+
+このpolicyは求められているユースケースやODDによって変わります。走行前に決定されているかもしれないし、走行中に動的に切り替わる可能性もあります。ここで、必ずしもFully-autonomousのみが最終目標ではないことに注意してください。期待するODDやセンサー構成、センサーコストによっては、Semi-autonomousの前提でシステムを作成することもあります。我々のゴールは、これらのポリシーが柔軟に変更可能であるアーキテクチャを設計することです。
+
+TODO: このautonomous levelのポリシー変更は設計方針が決まっていないので要議論。HMIとの連携でこれらの実現は可能かと思われるが、厳密に検討されていない。
+
+
+<!-- 以下、planning design docから -->
+
+<!-- It is extremely important to separate the mechanism and policy, allowing us to modularize the Behavior Planning component and the Motion Planning component not only from the software point of view but also from the actual logic point of view. A bad example of logic is based on such a design that takes the minimum of the velocity levels that are calculated by the modules of the Behavior Planning component and the Motion Planning component. You cannot compare these velocity levels in the same logic, because the behavior is derived by data observed in the environment, while the motion is determined by mathematical formulas. The right design is that we make one policy that uses the velocity level calculated by the Behavior Planning component and another policy that uses the velocity level calculated by the Motion Planning component, and develop the mechanism in which one of the policies can be selected by another logic (this could be a human operator to begin with) depending on the use cases. More specifically, we must develop the mechanism in which the modules to be activated can be changed by selecting the policy. Who to select the policy is undefined in design, though it should be eventually the system but can be the human operator at the beginning. The functionality and capability that fail to work out when the policy is selected by the human operator will not work out anyway even when the policy is selected by the system autonomously.  
+
+In the literature, the system framework often falls into a hierarchical framework and a parallel framework. The hierarchical framework classifies the tasks into multiple stages, and they are executed in the order of stages constructed hierarchically. The parallel framework, on the other hand, does not construct a hierarchy of the tasks but allows the  features to have their own mechanism. Examples of these frameworks are depicted below.
+
+J. Wei, J. M. Snider, T. Gu, J. M. Dolan and B. Litkouhi, "A behavioral planning framework for autonomous driving," 2014 IEEE Intelligent Vehicles Symposium Proceedings, 2014, pp. 458-464, doi: 10.1109/IVS.2014.6856582.
+
+Our planning components are built based on the microautonomy architecture with Autoware. We adopt a modular system framework where the tasks are implemented as modules that can be dynamically loaded and unloaded to achieve different features depending on the given use cases, like the parallel framework, and the modules belong to the components constructed hierarchically, like the hierarchical framework. This way, we benefit from the advantages of the two frameworks. -->
+
+
+
+
 
 
 ## Component interface

From c2f1d5573374a1bde8932948e20ccbe8681ad49f Mon Sep 17 00:00:00 2001
From: Takamasa Horibe <horibe.takamasa@gmail.com>
Date: Tue, 20 Jun 2023 10:21:20 +0900
Subject: [PATCH 06/19] update

Signed-off-by: Takamasa Horibe <horibe.takamasa@gmail.com>
---
 .../design/autoware-architecture/planning/index.md | 14 ++++++++------
 1 file changed, 8 insertions(+), 6 deletions(-)

diff --git a/docs/design/autoware-architecture/planning/index.md b/docs/design/autoware-architecture/planning/index.md
index e5bee0eb570..d2286982393 100644
--- a/docs/design/autoware-architecture/planning/index.md
+++ b/docs/design/autoware-architecture/planning/index.md
@@ -77,34 +77,36 @@ BehaviorとMotionの分離について。Planning全体を振る舞いを決定
 
 ### Discussions
 
-The following provides discussion points on trade-offs in the architecture. From this information, you will understand the current design philosophy of the Planning Component, its challenges, and potential improvement.
+The following provides discussion points on trade-offs in the architecture. From this information, you can see the current design limitation, challenges, and potential improvement.
 
 **Rationale for the separation of planning and other components**
-By developing the planning, perception, localzition, and control components separately, it becomes easy to collaborate with third-party components in the component level. However, there's a trade-off between performance and extensibility here. For instance, a perception component would ideally perform recognition and motion prediction only for the objects that the planning component needs, but separating the components hinders such close communication. Additionally, separating planning and control makes it harder to consider vehicle motion performance when planning. To compensate for this, it's necessary to either increase the information exchanged via the interface or increase the computation load.
+By developing the planning, perception, localization, and control components separately, it becomes easy to collaborate with third-party components in the component level. However, there's a trade-off between performance and extensibility here. For instance, a perception component would ideally perform recognition and motion prediction only for the objects that the planning component needs, but separating the components hinders such close communication. Additionally, separating planning and control makes it harder to consider vehicle motion performance when planning. To compensate for this, it's necessary to either increase the information exchanged via the interface or increase the computation load.
 
 **Rationale for introducing the Scenario Planning layer**
 There are different requirements for interfaces between driving in well-structured lanes and driving in a free-space area like a parking lot. For example, while Lane Driving can handle routes with map IDs, this is not appropriate for planning in free space. The mechanism that switches planning sub-components at the scenario level (Lane Driving, Parking, etc) enables a flexible design of the interface, however, it has a drawbacks of the reuse of modules across different scenarios.
 
 
 **Rationale for the separation of Behavior and Motion**
-The classic approach to Planning involves dividing it into "Behavior", which decides the action, and "Motion", which determines the final movement. However, this separation implies a trade-off with performance, as performance tends to degrade with increasing separation of functions. For example, Behavior needs to make decisions without prior knowledge of the computations that Motion will eventually perform, which generally results in conservative decision-making. On the other hand, if behavior and motion are integrated, motion performance and decision-making become interdependent, creating challenges in terms of expandability, such as when you wish to extend only the decision-making function to follow a regional traffic rules.
+One of the classic approach to Planning involves dividing it into "Behavior", which decides the action, and "Motion", which determines the final movement. However, this separation implies a trade-off with performance, as performance tends to degrade with increasing separation of functions. For example, Behavior needs to make decisions without prior knowledge of the computations that Motion will eventually perform, which generally results in conservative decision-making. On the other hand, if behavior and motion are integrated, motion performance and decision-making become interdependent, creating challenges in terms of expandability, such as when you wish to extend only the decision-making function to follow a regional traffic rules.
 
 To understand this background. this [previously discussed document](https://github.com/tier4/AutowareArchitectureProposal.proj/blob/main/docs/design/software_architecture/Planning/DesignRationale.md) may be useful.
 
 
-### Policies
+### Mechanism and policy
 
-様々なニーズやODDへの適応は、異なるpolicyという形で表現することができます。例えば、自動走行レベルにおいて、Planningは以下のpolicyを提供します。
+Planningにおいて、様々なニーズやODDへの適応するために、いくつかのポリシーを定義します。例えば、自動走行レベルにおいて、Planningは以下のpolicyを提供します。
 
 - **Fully-autonomous** that delegates all decision makings to the system, thus the system is responsible for the safety.
 - **Semi-autonomous** that delegates most of decision makings to the system but the rest of decision makings strictly defined remain with the human operator, thus both the system and the human operator are responsible for the safety.
 - **Motion-autonomous** that delegates only the low-level motion plan to the system, while high-level mission and behavior plannings remain with the human operator, thus the human operator is responsible for the safety.
 
-このpolicyは求められているユースケースやODDによって変わります。走行前に決定されているかもしれないし、走行中に動的に切り替わる可能性もあります。ここで、必ずしもFully-autonomousのみが最終目標ではないことに注意してください。期待するODDやセンサー構成、センサーコストによっては、Semi-autonomousの前提でシステムを作成することもあります。我々のゴールは、これらのポリシーが柔軟に変更可能であるアーキテクチャを設計することです。
+このpolicyは求められているユースケースやODDによって変わります。走行前に決定されているかもしれないし、走行中に動的に切り替わる可能性もあります。ここで、必ずしもFully-autonomousのみがゴールではないことに注意してください。期待するODDやセンサー構成、センサーコストによっては、Semi-autonomousの前提でシステムを作成することもあります。我々のゴールは、これらのポリシーが柔軟に変更可能であるアーキテクチャを設計することです。
 
 TODO: このautonomous levelのポリシー変更は設計方針が決まっていないので要議論。HMIとの連携でこれらの実現は可能かと思われるが、厳密に検討されていない。
 
 
+It is extremely important to separate the mechanism and policy, allowing us to modularize the planning components not only from the software point of view but also from the actual logic point of view. In the literature, the planning system framework often falls into a hierarchical framework and a parallel framework. The hierarchical framework classifies the tasks into multiple stages, and they are executed in the order of stages constructed hierarchically. The parallel framework, on the other hand, does not construct a hierarchy of the tasks but allows the  features to have their own mechanism. Examples of these frameworks are depicted below.
+
 <!-- 以下、planning design docから -->
 
 <!-- It is extremely important to separate the mechanism and policy, allowing us to modularize the Behavior Planning component and the Motion Planning component not only from the software point of view but also from the actual logic point of view. A bad example of logic is based on such a design that takes the minimum of the velocity levels that are calculated by the modules of the Behavior Planning component and the Motion Planning component. You cannot compare these velocity levels in the same logic, because the behavior is derived by data observed in the environment, while the motion is determined by mathematical formulas. The right design is that we make one policy that uses the velocity level calculated by the Behavior Planning component and another policy that uses the velocity level calculated by the Motion Planning component, and develop the mechanism in which one of the policies can be selected by another logic (this could be a human operator to begin with) depending on the use cases. More specifically, we must develop the mechanism in which the modules to be activated can be changed by selecting the policy. Who to select the policy is undefined in design, though it should be eventually the system but can be the human operator at the beginning. The functionality and capability that fail to work out when the policy is selected by the human operator will not work out anyway even when the policy is selected by the system autonomously.  

From 09d2c69b64fafc47e2d00098964d37f0fc14dcfc Mon Sep 17 00:00:00 2001
From: Takamasa Horibe <horibe.takamasa@gmail.com>
Date: Tue, 20 Jun 2023 21:03:10 +0900
Subject: [PATCH 07/19] update

Signed-off-by: Takamasa Horibe <horibe.takamasa@gmail.com>
---
 .../image/how-to-add-new-modules.drawio.svg   | 1403 +++++++++++++++++
 .../autoware-architecture/planning/index.md   |   69 +-
 .../planning/planning-system-literature.png   |  Bin 0 -> 82598 bytes
 3 files changed, 1421 insertions(+), 51 deletions(-)
 create mode 100644 docs/design/autoware-architecture/planning/image/how-to-add-new-modules.drawio.svg
 create mode 100644 docs/design/autoware-architecture/planning/planning-system-literature.png

diff --git a/docs/design/autoware-architecture/planning/image/how-to-add-new-modules.drawio.svg b/docs/design/autoware-architecture/planning/image/how-to-add-new-modules.drawio.svg
new file mode 100644
index 00000000000..ca3f9ab856c
--- /dev/null
+++ b/docs/design/autoware-architecture/planning/image/how-to-add-new-modules.drawio.svg
@@ -0,0 +1,1403 @@
+<svg host="65bd71144e" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="3362px" height="950px" viewBox="-0.5 -0.5 3362 950" content="&lt;mxfile&gt;&lt;diagram id=&quot;8qt1-HtFgWOiWtJ-FPd8&quot; name=&quot;planning (v0.13.0)&quot;&gt;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&lt;/diagram&gt;&lt;/mxfile&gt;">
+    <defs/>
+    <g>
+        <path d="M 80 246.76 L 145.76 246.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 157.76 246.78 L 145.76 252.77 L 145.77 240.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="0" y="581" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 646px; margin-left: 1px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="text-align: left">
+                                    Localization
+                                </div>
+                                <div style="text-align: left">
+                                    Component
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="40" y="650" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Localization...
+                </text>
+            </switch>
+        </g>
+        <rect x="0" y="435" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 500px; margin-left: 1px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Perception
+                                <br/>
+                                Component
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="40" y="504" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Perception...
+                </text>
+            </switch>
+        </g>
+        <path d="M 94.56 330.11 L 160 329.86" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 82.56 330.15 L 94.53 324.11 L 94.58 336.11 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="0" y="290" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 355px; margin-left: 1px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Human
+                                <br/>
+                                Machine
+                                <br/>
+                                Interface
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="40" y="359" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Human...
+                </text>
+            </switch>
+        </g>
+        <rect x="160" y="115" width="770" height="50" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 768px; height: 1px; padding-top: 140px; margin-left: 161px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                API Layer
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="545" y="144" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    API Layer
+                </text>
+            </switch>
+        </g>
+        <path d="M 737.5 217.05 L 737.5 179.24" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 737.5 167.24 L 743.5 179.24 L 731.5 179.24 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="160" y="217.05" width="770" height="637.95" fill="#ffe6cc" stroke="#d79b00" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 768px; height: 1px; padding-top: 536px; margin-left: 161px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 15px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <b style="font-size: 15px;">
+                                    Third-party Planning Component
+                                </b>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="545" y="541" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="15px" text-anchor="middle">
+                    Third-party Planning Component
+                </text>
+            </switch>
+        </g>
+        <path d="M 545 855 L 545 884.81" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 545 896.81 L 539 884.81 L 551 884.81 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="160" y="899.05" width="770" height="50" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 768px; height: 1px; padding-top: 924px; margin-left: 161px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Control Component
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="545" y="928" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Control Component
+                </text>
+            </switch>
+        </g>
+        <path d="M 545 169 L 545 200.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 545 212.76 L 539 200.76 L 551 200.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="0" y="725" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 790px; margin-left: 1px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="">
+                                    System
+                                </div>
+                                <div style="">
+                                    Component
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="40" y="794" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    System...
+                </text>
+            </switch>
+        </g>
+        <path d="M 300 165 L 300 200.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 300 212.76 L 294 200.76 L 306 200.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="0" y="217.05" width="80" height="60" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 247px; margin-left: 1px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Map
+                                <br/>
+                                Component
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="40" y="251" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Map...
+                </text>
+            </switch>
+        </g>
+        <path d="M 80 381.76 L 145.76 381.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 157.76 381.78 L 145.76 387.77 L 145.77 375.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <path d="M 80 501.76 L 145.76 501.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 157.76 501.78 L 145.76 507.77 L 145.77 495.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <path d="M 80 646.76 L 145.76 646.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 157.76 646.78 L 145.76 652.77 L 145.77 640.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <path d="M 94.56 790.11 L 160 789.86" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 82.56 790.15 L 94.53 784.11 L 94.58 796.11 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <path d="M 1290 246.76 L 1355.76 246.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 1367.76 246.78 L 1355.76 252.77 L 1355.77 240.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="1210" y="581" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 646px; margin-left: 1211px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="text-align: left">
+                                    Localization
+                                </div>
+                                <div style="text-align: left">
+                                    Component
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1250" y="650" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Localization...
+                </text>
+            </switch>
+        </g>
+        <rect x="1210" y="435" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 500px; margin-left: 1211px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Perception
+                                <br/>
+                                Component
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1250" y="504" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Perception...
+                </text>
+            </switch>
+        </g>
+        <path d="M 1304.56 330.11 L 1370 329.86" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 1292.56 330.15 L 1304.53 324.11 L 1304.58 336.11 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="1210" y="290" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 355px; margin-left: 1211px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Human
+                                <br/>
+                                Machine
+                                <br/>
+                                Interface
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1250" y="359" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Human...
+                </text>
+            </switch>
+        </g>
+        <rect x="1370" y="115" width="770" height="50" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 768px; height: 1px; padding-top: 140px; margin-left: 1371px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                API Layer
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1755" y="144" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    API Layer
+                </text>
+            </switch>
+        </g>
+        <path d="M 1947.5 217.05 L 1947.5 179.24" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 1947.5 167.24 L 1953.5 179.24 L 1941.5 179.24 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="1370" y="217.05" width="770" height="637.95" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <path d="M 1755 325 Q 1755 325 1755 340.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 1755 352.76 L 1749 340.76 L 1761 340.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="1430" y="269" width="650" height="56" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 648px; height: 1px; padding-top: 297px; margin-left: 1431px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <b>
+                                    Mission Planning
+                                </b>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1755" y="301" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Mission Planning
+                </text>
+            </switch>
+        </g>
+        <rect x="1430" y="355" width="650" height="390" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 648px; height: 1px; padding-top: 362px; margin-left: 1431px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <b>
+                                    <br/>
+                                    Scenario Planning
+                                </b>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1755" y="374" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Scenario Planning
+                </text>
+            </switch>
+        </g>
+        <rect x="1465" y="415" width="395" height="290" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 393px; height: 1px; padding-top: 422px; margin-left: 1466px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <b>
+                                    <br/>
+                                    Lane Driving Scenario
+                                </b>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1663" y="434" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Lane Driving Scenario
+                </text>
+            </switch>
+        </g>
+        <path d="M 1977.5 705 L 1977.5 725 L 1818 725 L 1755 725 L 1755 760.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 1755 772.76 L 1749 760.76 L 1761 760.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="1910" y="415" width="135" height="290" fill="#ffe6cc" stroke="#d79b00" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 133px; height: 1px; padding-top: 560px; margin-left: 1911px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <b style="border-color: var(--border-color);">
+                                    Third-party Planning Component
+                                </b>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1978" y="564" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Third-party Planning C...
+                </text>
+            </switch>
+        </g>
+        <path d="M 1662.5 560 Q 1662.5 560 1662.5 576.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 1662.5 588.76 L 1656.5 576.76 L 1668.5 576.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="1485" y="465" width="355" height="95" fill="#ffe6cc" stroke="#d79b00" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 353px; height: 1px; padding-top: 513px; margin-left: 1486px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <b style="border-color: var(--border-color);">
+                                    Third-party Planning Component
+                                </b>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1663" y="516" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Third-party Planning Component
+                </text>
+            </switch>
+        </g>
+        <path d="M 1662.5 686 L 1662.5 725 L 1755 725 L 1755 760.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 1755 772.76 L 1749 760.76 L 1761 760.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="1485" y="591" width="355" height="95" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 353px; height: 1px; padding-top: 598px; margin-left: 1486px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <b>
+                                    Motion Planning
+                                </b>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1663" y="610" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Motion Planning
+                </text>
+            </switch>
+        </g>
+        <path d="M 1755 831 L 1755 884.81" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 1755 896.81 L 1749 884.81 L 1761 884.81 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="1430" y="775" width="650" height="56" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 648px; height: 1px; padding-top: 803px; margin-left: 1431px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <b>
+                                    Validation
+                                </b>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1755" y="807" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Validation
+                </text>
+            </switch>
+        </g>
+        <rect x="1370" y="899.05" width="770" height="50" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 768px; height: 1px; padding-top: 924px; margin-left: 1371px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Control Component
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1755" y="928" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Control Component
+                </text>
+            </switch>
+        </g>
+        <rect x="1390" y="230" width="140" height="30" fill="none" stroke="none" pointer-events="all" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="1390" y="230" width="140" height="30" fill="none" stroke="none" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 245px; margin-left: 1460px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: nowrap;">
+                                <b>
+                                    Planning Component
+                                </b>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1460" y="249" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Planning Component
+                </text>
+            </switch>
+        </g>
+        <path d="M 1755 169 L 1755 254.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 1755 266.76 L 1749 254.76 L 1761 254.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="1210" y="725" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 790px; margin-left: 1211px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="">
+                                    System
+                                </div>
+                                <div style="">
+                                    Component
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1250" y="794" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    System...
+                </text>
+            </switch>
+        </g>
+        <path d="M 1510 165 L 1510 200.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 1510 212.76 L 1504 200.76 L 1516 200.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="1210" y="217.05" width="80" height="60" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 247px; margin-left: 1211px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Map
+                                <br/>
+                                Component
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1250" y="251" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Map...
+                </text>
+            </switch>
+        </g>
+        <rect x="1503" y="628.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 638px; margin-left: 1504px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Path Smooth
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1547" y="641" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Path Smooth
+                </text>
+            </switch>
+        </g>
+        <rect x="1618" y="628.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 638px; margin-left: 1619px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Velocity Smooth
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1662" y="641" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Velocity Smooth
+                </text>
+            </switch>
+        </g>
+        <rect x="1503" y="659.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 669px; margin-left: 1504px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Collision Check
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1547" y="672" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Collision Check
+                </text>
+            </switch>
+        </g>
+        <rect x="1730" y="659.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 669px; margin-left: 1731px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="">
+                                    etc...
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1775" y="672" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    etc...
+                </text>
+            </switch>
+        </g>
+        <path d="M 1290 381.76 L 1355.76 381.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 1367.76 381.78 L 1355.76 387.77 L 1355.77 375.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <path d="M 1290 501.76 L 1355.76 501.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 1367.76 501.78 L 1355.76 507.77 L 1355.77 495.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <path d="M 1290 646.76 L 1355.76 646.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 1367.76 646.78 L 1355.76 652.77 L 1355.77 640.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <path d="M 1304.56 790.11 L 1370 789.86" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 1292.56 790.15 L 1304.53 784.11 L 1304.58 796.11 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="1882" y="290" width="122" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 120px; height: 1px; padding-top: 299px; margin-left: 1883px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Route Planning
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1943" y="303" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Route Planning
+                </text>
+            </switch>
+        </g>
+        <rect x="1730" y="628.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 638px; margin-left: 1731px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Drivable Area
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1775" y="641" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Drivable Area
+                </text>
+            </switch>
+        </g>
+        <rect x="1618" y="659.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 669px; margin-left: 1619px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Slow Down
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1662" y="672" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Slow Down
+                </text>
+            </switch>
+        </g>
+        <rect x="1843" y="793.51" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 803px; margin-left: 1844px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    TTC Check
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1887" y="806" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    TTC Check
+                </text>
+            </switch>
+        </g>
+        <rect x="1953" y="793.51" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 803px; margin-left: 1954px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    ACC Check
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1997" y="806" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    ACC Check
+                </text>
+            </switch>
+        </g>
+        <path d="M 2510 246.76 L 2575.76 246.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 2587.76 246.78 L 2575.76 252.77 L 2575.77 240.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="2430" y="581" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 646px; margin-left: 2431px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="text-align: left">
+                                    Localization
+                                </div>
+                                <div style="text-align: left">
+                                    Component
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="2470" y="650" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Localization...
+                </text>
+            </switch>
+        </g>
+        <rect x="2430" y="435" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 500px; margin-left: 2431px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Perception
+                                <br/>
+                                Component
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="2470" y="504" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Perception...
+                </text>
+            </switch>
+        </g>
+        <path d="M 2524.56 330.11 L 2590 329.86" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 2512.56 330.15 L 2524.53 324.11 L 2524.58 336.11 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="2430" y="290" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 355px; margin-left: 2431px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Human
+                                <br/>
+                                Machine
+                                <br/>
+                                Interface
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="2470" y="359" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Human...
+                </text>
+            </switch>
+        </g>
+        <rect x="2590" y="115" width="770" height="50" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 768px; height: 1px; padding-top: 140px; margin-left: 2591px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                API Layer
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="2975" y="144" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    API Layer
+                </text>
+            </switch>
+        </g>
+        <path d="M 3167.5 217.05 L 3167.5 179.24" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 3167.5 167.24 L 3173.5 179.24 L 3161.5 179.24 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="2590" y="217.05" width="770" height="637.95" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <path d="M 2975 325 Q 2975 325 2975 340.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 2975 352.76 L 2969 340.76 L 2981 340.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="2650" y="269" width="650" height="56" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 648px; height: 1px; padding-top: 297px; margin-left: 2651px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <b>
+                                    Mission Planning
+                                </b>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="2975" y="301" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Mission Planning
+                </text>
+            </switch>
+        </g>
+        <rect x="2650" y="355" width="650" height="390" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 648px; height: 1px; padding-top: 362px; margin-left: 2651px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <b>
+                                    <br/>
+                                    Scenario Planning
+                                </b>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="2975" y="374" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Scenario Planning
+                </text>
+            </switch>
+        </g>
+        <rect x="2685" y="415" width="395" height="290" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 393px; height: 1px; padding-top: 422px; margin-left: 2686px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <b>
+                                    <br/>
+                                    Lane Driving Scenario
+                                </b>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="2883" y="434" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Lane Driving Scenario
+                </text>
+            </switch>
+        </g>
+        <path d="M 3197.5 705 L 3197.5 725 L 3038 725 L 2975 725 L 2975 760.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 2975 772.76 L 2969 760.76 L 2981 760.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="3130" y="415" width="135" height="290" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 133px; height: 1px; padding-top: 422px; margin-left: 3131px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <b>
+                                    <br/>
+                                    Parking Scenario
+                                </b>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="3198" y="434" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Parking Scenario
+                </text>
+            </switch>
+        </g>
+        <path d="M 2882.5 560 Q 2882.5 560 2882.5 576.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 2882.5 588.76 L 2876.5 576.76 L 2888.5 576.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="2705" y="465" width="355" height="95" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 353px; height: 1px; padding-top: 472px; margin-left: 2706px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <b>
+                                    Behavior Planning
+                                </b>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="2883" y="484" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Behavior Planning
+                </text>
+            </switch>
+        </g>
+        <path d="M 2882.5 686 L 2882.5 725 L 2975 725 L 2975 760.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 2975 772.76 L 2969 760.76 L 2981 760.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="2705" y="591" width="355" height="95" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 353px; height: 1px; padding-top: 598px; margin-left: 2706px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <b>
+                                    Motion Planning
+                                </b>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="2883" y="610" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Motion Planning
+                </text>
+            </switch>
+        </g>
+        <path d="M 2975 831 L 2975 884.81" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 2975 896.81 L 2969 884.81 L 2981 884.81 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="2650" y="775" width="650" height="56" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 648px; height: 1px; padding-top: 803px; margin-left: 2651px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <b>
+                                    Validation
+                                </b>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="2975" y="807" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Validation
+                </text>
+            </switch>
+        </g>
+        <rect x="2590" y="899.05" width="770" height="50" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 768px; height: 1px; padding-top: 924px; margin-left: 2591px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Control Component
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="2975" y="928" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Control Component
+                </text>
+            </switch>
+        </g>
+        <rect x="2610" y="230" width="140" height="30" fill="none" stroke="none" pointer-events="all" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="2610" y="230" width="140" height="30" fill="none" stroke="none" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 245px; margin-left: 2680px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: nowrap;">
+                                <b>
+                                    Planning Component
+                                </b>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="2680" y="249" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Planning Component
+                </text>
+            </switch>
+        </g>
+        <path d="M 2975 169 L 2975 254.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 2975 266.76 L 2969 254.76 L 2981 254.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="2430" y="725" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 790px; margin-left: 2431px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="">
+                                    System
+                                </div>
+                                <div style="">
+                                    Component
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="2470" y="794" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    System...
+                </text>
+            </switch>
+        </g>
+        <path d="M 2730 165 L 2730 200.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 2730 212.76 L 2724 200.76 L 2736 200.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="2430" y="217.05" width="80" height="60" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 247px; margin-left: 2431px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Map
+                                <br/>
+                                Component
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="2470" y="251" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Map...
+                </text>
+            </switch>
+        </g>
+        <rect x="2723" y="498.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 508px; margin-left: 2724px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Lane Change
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="2768" y="511" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Lane Change
+                </text>
+            </switch>
+        </g>
+        <rect x="2838" y="498.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 508px; margin-left: 2839px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Intersection
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="2883" y="511" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Intersection
+                </text>
+            </switch>
+        </g>
+        <rect x="2950" y="498.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 508px; margin-left: 2951px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Crosswalk
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="2995" y="511" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Crosswalk
+                </text>
+            </switch>
+        </g>
+        <rect x="2950" y="528.03" width="89" height="18.97" fill="#ffe6cc" stroke="#d79b00" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 538px; margin-left: 2951px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="">
+                                    <span style="border-color: var(--border-color);">
+                                        Third-party Module
+                                    </span>
+                                    <br/>
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="2995" y="541" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Third-party Mod...
+                </text>
+            </switch>
+        </g>
+        <rect x="2723" y="628.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 638px; margin-left: 2724px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Path Smooth
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="2768" y="641" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Path Smooth
+                </text>
+            </switch>
+        </g>
+        <rect x="2838" y="628.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 638px; margin-left: 2839px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Velocity Smooth
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="2883" y="641" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Velocity Smooth
+                </text>
+            </switch>
+        </g>
+        <rect x="2723" y="659.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 669px; margin-left: 2724px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Collision Check
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="2768" y="672" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Collision Check
+                </text>
+            </switch>
+        </g>
+        <rect x="2950" y="659.03" width="89" height="18.97" fill="#ffe6cc" stroke="#d79b00" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 669px; margin-left: 2951px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="">
+                                    Third-party Module
+                                    <br/>
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="2995" y="672" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Third-party Mod...
+                </text>
+            </switch>
+        </g>
+        <rect x="3152" y="508.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 518px; margin-left: 3153px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Free Space
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="3197" y="521" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Free Space
+                </text>
+            </switch>
+        </g>
+        <rect x="3152" y="539.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 549px; margin-left: 3153px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Cost map
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="3197" y="552" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Cost map
+                </text>
+            </switch>
+        </g>
+        <rect x="3152" y="572.03" width="89" height="18.97" fill="#ffe6cc" stroke="#d79b00" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 582px; margin-left: 3153px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="">
+                                    Third-party Module
+                                    <br/>
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="3197" y="585" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Third-party Mod...
+                </text>
+            </switch>
+        </g>
+        <path d="M 2510 381.76 L 2575.76 381.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 2587.76 381.78 L 2575.76 387.77 L 2575.77 375.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <path d="M 2510 501.76 L 2575.76 501.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 2587.76 501.78 L 2575.76 507.77 L 2575.77 495.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <path d="M 2510 646.76 L 2575.76 646.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 2587.76 646.78 L 2575.76 652.77 L 2575.77 640.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <path d="M 2524.56 790.11 L 2590 789.86" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 2512.56 790.15 L 2524.53 784.11 L 2524.58 796.11 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="3102" y="290" width="122" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 120px; height: 1px; padding-top: 299px; margin-left: 3103px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Route Planning
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="3163" y="303" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Route Planning
+                </text>
+            </switch>
+        </g>
+        <rect x="2723" y="528.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 538px; margin-left: 2724px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Avoidance
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="2768" y="541" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Avoidance
+                </text>
+            </switch>
+        </g>
+        <rect x="2838" y="528.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 538px; margin-left: 2839px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Pull Over
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="2883" y="541" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Pull Over
+                </text>
+            </switch>
+        </g>
+        <rect x="2950" y="628.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 638px; margin-left: 2951px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Drivable Area
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="2995" y="641" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Drivable Area
+                </text>
+            </switch>
+        </g>
+        <rect x="2838" y="659.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 669px; margin-left: 2839px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Slow Down
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="2883" y="672" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Slow Down
+                </text>
+            </switch>
+        </g>
+        <rect x="3063" y="793.51" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 803px; margin-left: 3064px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    TTC Check
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="3108" y="806" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    TTC Check
+                </text>
+            </switch>
+        </g>
+        <rect x="3173" y="793.51" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 803px; margin-left: 3174px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    ACC Check
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="3218" y="806" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    ACC Check
+                </text>
+            </switch>
+        </g>
+        <rect x="210" y="15" width="700" height="30" fill="none" stroke="none" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 698px; height: 1px; padding-top: 30px; margin-left: 211px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 25px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Replace the entier planning component
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="560" y="38" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="25px" text-anchor="middle">
+                    Replace the entier planning component
+                </text>
+            </switch>
+        </g>
+        <rect x="1410" y="15" width="700" height="30" fill="none" stroke="none" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 698px; height: 1px; padding-top: 30px; margin-left: 1411px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 25px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Replace the planning sub-component,
+                                <br/>
+                                or add a new scenario component
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1760" y="38" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="25px" text-anchor="middle">
+                    Replace the planning sub-component,...
+                </text>
+            </switch>
+        </g>
+        <rect x="2630" y="15" width="700" height="30" fill="none" stroke="none" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 698px; height: 1px; padding-top: 30px; margin-left: 2631px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 25px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Add a new planning module
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="2980" y="38" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="25px" text-anchor="middle">
+                    Add a new planning module
+                </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%">
+                Text is not SVG - cannot display
+            </text>
+        </a>
+    </switch>
+</svg>
\ No newline at end of file
diff --git a/docs/design/autoware-architecture/planning/index.md b/docs/design/autoware-architecture/planning/index.md
index d2286982393..edde599b0d2 100644
--- a/docs/design/autoware-architecture/planning/index.md
+++ b/docs/design/autoware-architecture/planning/index.md
@@ -2,10 +2,6 @@
 
 ## Purpose of this document
 
-<!-- この文書は、Planning Componentの開発における目標やハイレベルな設計戦略、およびそれに関連する意思決定とその理由を説明します。このドキュメントを通じて、すべてのOSS開発者は、Planning Componentがどのような設計思想や制約のもとで設計され、どのような目標を達成するために開発が行われているのかを理解することができます。これにより、円滑な開発参加が可能となります。
-
-さらに、(これらの情報は将来的に分離して管理されるかもしれませんが、)具体的なリファレンス実装や提供される機能の一覧も後半に記載されています。これにより、開発者やユーザーは、Planning Componentを使用することで現在何が可能なのか、機能をどのように活用したり、拡張したり、追加したりすることができるのかを理解することができます。 -->
-
 This document outlines the goals, high-level design strategies, and related rationales in the development of the Planning Component. Through this document, all OSS developers will be able to comprehend the design philosophy, goals and constraints under which the Planning Component is designed. This will enable them to participate seamlessly in the development.
 
 Furthermore, a list of concrete reference implementations and provided features is also included in the latter part of this document, while this information might be managed separately in the future. This allows developers and users to understand what is currently possible with the Planning Component, how to utilize, expand, or add to its features.
@@ -14,15 +10,13 @@ Furthermore, a list of concrete reference implementations and provided features
 
 The role of the Planning component is to generate a trajectory (path and velocity) of the self-driving vehicle that is safe and well-regulated while satisfying the given mission.
 
-<!-- 全体の設計においては、microautonomyのコンセプトに従い、適切なモジュール化と明確なインターフェース定義、およびそれにって得られる高い拡張性を重要視します。すなわち、Autowareにおけるplanningモジュールの目的は、世の中すべての複雑なUseCaseを達成することではなく(もちろん基本的なUseCaseが達成できるレベルのソフトはベースとして提供されるべきですが)、ユーザーの要求レベルに合わせて適切にカスタマイズできる(更には必要な機能が適切に追加開発できる)platformを提供することです。 -->
-
-In our overall design, we emphasize the concept of "[microautonomy](https://autowarefoundation.github.io/autoware-documentation/main/design/autoware-concepts)". This term refers to a design approach that focuses on the proper modularization of functions, clear definition of interfaces between these modules, and as a result, high expandability of the system. 
+In our overall design, we emphasize the concept of [microautonomy architecture](https://autowarefoundation.github.io/autoware-documentation/main/design/autoware-concepts). This term refers to a design approach that focuses on the proper modularization of functions, clear definition of interfaces between these modules, and as a result, high expandability of the system. Therefore, the goal of the Planning component is set not to solve every conceivable complex use case (although we do aim to support basic ones), but rather to provide a platform that can be customized to the user's needs and can facilitate the development of additional features.
 
-The goal of the Planning component is not to solve every conceivable complex use case (although we do aim to support basic ones), but rather to provide a platform that can be customized to the user's needs and can facilitate the development of additional features.
+To clarify the design concepts, the following points are listed as goals and non-goals.
 
 **Goals:**
 
-- The basic functions are provided so that a simple ODD (Operational Design Domain) can be defined.
+- The basic functions are provided so that a simple Operational Design Domain (ODD) can be defined.
 - The functionality is modularized to accommodate the third-party components. That is, a complicated or realistic ODD needs not be defined by the basic functions provided by default.
 - The capability is extensible with the third-party components or the decision of human operators.
 
@@ -31,22 +25,20 @@ The goal of the Planning component is not to solve every conceivable complex use
 
 **Non-goals:**
 
-To clarify our design concepts, the following points are listed as non-goals.
-
 - The Planning component is not self-contained but can be extended and enhanced with third parties.
 - The Planning component is not aimed at the complete functionality and capability.
 - The Planning component is not designed to always outperform human drivers.
 - The Planning component is not capable of “never crashes”.
 
-While "never crashes" is not a present goals, we need to create an architecture that can potentially achieve such a state with third-party components or decision of human operators or future enhancement.
+While performance such as "never crashes" is not a present goals, we need to create an architecture that can potentially achieve such a state with third-party components or decision of human operators or future enhancement.
 
 ## Requirements
 
-ここはGoalとかではなく、Pythonで書く必要がある、みたいなことを書く。PlanningにRequirementsって何がある?
+WIP
 
 ## Assumptions
 
-Assumptiosがあった方が良いらしいが、例えばどんなことだろう?
+WIP
 
 ## High level design
 
@@ -66,61 +58,32 @@ The Planning component consists of the following sub-components:
 
 Following the microautonomy architecture, we adopt a modular system framework where the tasks are implemented as modules that can be dynamically loaded and unloaded to achieve different features depending on the given use cases. For instance, the Behavior Planning component includes modules such as lane change, intersection, and crosswalk modules.
 
-<!-- **Rationale**
-Planningと各Componentの分離について。planningとperceptionやcontrol componentを分離して開発することにより、third-party のperception component などとの連携は非常に簡単に実行できる(利用するコンポーネントを切り替えるだけである)。しかし、ここには性能と拡張性のトレードオフが存在する。例えば、perception componentは本来planning componentが必要とする物体に対してのみ認識と移動予測を行えば十分であるが、componentを分離するとこのような密なコミュニケーションを行うことができない。また、計画と制御の分離によって、車両運動性能を適切に考慮した上で計画を行うことが難しくなる。これを補うためには、interfaceでやり取りをする情報を増やす必要があったり、計算量を増やす必要が出てくる。
-
-**Rationale**
-Scenario Planningレイヤーの導入について。レーン構造が整備されているエリアでの走行と、駐車場のようなフリースペースエリアの走行ではインターフェースの定義や利用可能な情報のレベルが異なる。例えば、Lane Drivingでは地図のIDがついた経路を取り扱えるのに対し、これはフリースペースでの計画に対して適切ではない。また今後さらに異なるインターフェースを持つべきシナリオが現れた際に柔軟に対応できるように、シナリオレベルでplanningのコンポーネントを切り替えるという仕組みを導入している。一方で、異なるシナリオ間でモジュールを再利用できない点は課題として残っている。
-
-**Rationale**
-BehaviorとMotionの分離について。Planning全体を振る舞いを決定する「Behavior」と、最終的な運動動作を決定する「Motion」に分離することは王道のアプローチである。ただしこれは性能とのトレードオフであり、機能を分離するほど性能が劣化する。例えば、Behaviorは最終的にMotionがどのような計算をするかを知る前に判断を行わなければならず、一般的に保守的な判断を行うことになる。一方で、behaviorとmotionを結合したシステムでは判断と乗り心地といった概念が結合しており、機能の拡張性の面で課題が残る。我々は拡張性を重要視し、behavior-motionの構成で開発を進めている。(昔に議論された[こちらの資料](https://github.com/tier4/AutowareArchitectureProposal.proj/blob/main/docs/design/software_architecture/Planning/DesignRationale.md)も役に立つ。) -->
-
 ### Discussions
 
 The following provides discussion points on trade-offs in the architecture. From this information, you can see the current design limitation, challenges, and potential improvement.
 
-**Rationale for the separation of planning and other components**
+**Separation of planning and other components**
 By developing the planning, perception, localization, and control components separately, it becomes easy to collaborate with third-party components in the component level. However, there's a trade-off between performance and extensibility here. For instance, a perception component would ideally perform recognition and motion prediction only for the objects that the planning component needs, but separating the components hinders such close communication. Additionally, separating planning and control makes it harder to consider vehicle motion performance when planning. To compensate for this, it's necessary to either increase the information exchanged via the interface or increase the computation load.
 
-**Rationale for introducing the Scenario Planning layer**
+**Introducing the Scenario Planning layer**
 There are different requirements for interfaces between driving in well-structured lanes and driving in a free-space area like a parking lot. For example, while Lane Driving can handle routes with map IDs, this is not appropriate for planning in free space. The mechanism that switches planning sub-components at the scenario level (Lane Driving, Parking, etc) enables a flexible design of the interface, however, it has a drawbacks of the reuse of modules across different scenarios.
 
-
-**Rationale for the separation of Behavior and Motion**
+**Separation of Behavior and Motion**
 One of the classic approach to Planning involves dividing it into "Behavior", which decides the action, and "Motion", which determines the final movement. However, this separation implies a trade-off with performance, as performance tends to degrade with increasing separation of functions. For example, Behavior needs to make decisions without prior knowledge of the computations that Motion will eventually perform, which generally results in conservative decision-making. On the other hand, if behavior and motion are integrated, motion performance and decision-making become interdependent, creating challenges in terms of expandability, such as when you wish to extend only the decision-making function to follow a regional traffic rules.
 
-To understand this background. this [previously discussed document](https://github.com/tier4/AutowareArchitectureProposal.proj/blob/main/docs/design/software_architecture/Planning/DesignRationale.md) may be useful.
-
+To understand this background, this [previously discussed document](https://github.com/tier4/AutowareArchitectureProposal.proj/blob/main/docs/design/software_architecture/Planning/DesignRationale.md) may be useful.
 
 ### Mechanism and policy
 
-Planningにおいて、様々なニーズやODDへの適応するために、いくつかのポリシーを定義します。例えば、自動走行レベルにおいて、Planningは以下のpolicyを提供します。
+In planning, several policies are defined to achieve various user's needs and ODDs. For example, in terms of the level of autonomous driving, Planning provides the following policies.
 
 - **Fully-autonomous** that delegates all decision makings to the system, thus the system is responsible for the safety.
 - **Semi-autonomous** that delegates most of decision makings to the system but the rest of decision makings strictly defined remain with the human operator, thus both the system and the human operator are responsible for the safety.
 - **Motion-autonomous** that delegates only the low-level motion plan to the system, while high-level mission and behavior plannings remain with the human operator, thus the human operator is responsible for the safety.
 
-このpolicyは求められているユースケースやODDによって変わります。走行前に決定されているかもしれないし、走行中に動的に切り替わる可能性もあります。ここで、必ずしもFully-autonomousのみがゴールではないことに注意してください。期待するODDやセンサー構成、センサーコストによっては、Semi-autonomousの前提でシステムを作成することもあります。我々のゴールは、これらのポリシーが柔軟に変更可能であるアーキテクチャを設計することです。
-
-TODO: このautonomous levelのポリシー変更は設計方針が決まっていないので要議論。HMIとの連携でこれらの実現は可能かと思われるが、厳密に検討されていない。
-
-
-It is extremely important to separate the mechanism and policy, allowing us to modularize the planning components not only from the software point of view but also from the actual logic point of view. In the literature, the planning system framework often falls into a hierarchical framework and a parallel framework. The hierarchical framework classifies the tasks into multiple stages, and they are executed in the order of stages constructed hierarchically. The parallel framework, on the other hand, does not construct a hierarchy of the tasks but allows the  features to have their own mechanism. Examples of these frameworks are depicted below.
-
-<!-- 以下、planning design docから -->
-
-<!-- It is extremely important to separate the mechanism and policy, allowing us to modularize the Behavior Planning component and the Motion Planning component not only from the software point of view but also from the actual logic point of view. A bad example of logic is based on such a design that takes the minimum of the velocity levels that are calculated by the modules of the Behavior Planning component and the Motion Planning component. You cannot compare these velocity levels in the same logic, because the behavior is derived by data observed in the environment, while the motion is determined by mathematical formulas. The right design is that we make one policy that uses the velocity level calculated by the Behavior Planning component and another policy that uses the velocity level calculated by the Motion Planning component, and develop the mechanism in which one of the policies can be selected by another logic (this could be a human operator to begin with) depending on the use cases. More specifically, we must develop the mechanism in which the modules to be activated can be changed by selecting the policy. Who to select the policy is undefined in design, though it should be eventually the system but can be the human operator at the beginning. The functionality and capability that fail to work out when the policy is selected by the human operator will not work out anyway even when the policy is selected by the system autonomously.  
-
-In the literature, the system framework often falls into a hierarchical framework and a parallel framework. The hierarchical framework classifies the tasks into multiple stages, and they are executed in the order of stages constructed hierarchically. The parallel framework, on the other hand, does not construct a hierarchy of the tasks but allows the  features to have their own mechanism. Examples of these frameworks are depicted below.
-
-J. Wei, J. M. Snider, T. Gu, J. M. Dolan and B. Litkouhi, "A behavioral planning framework for autonomous driving," 2014 IEEE Intelligent Vehicles Symposium Proceedings, 2014, pp. 458-464, doi: 10.1109/IVS.2014.6856582.
-
-Our planning components are built based on the microautonomy architecture with Autoware. We adopt a modular system framework where the tasks are implemented as modules that can be dynamically loaded and unloaded to achieve different features depending on the given use cases, like the parallel framework, and the modules belong to the components constructed hierarchically, like the hierarchical framework. This way, we benefit from the advantages of the two frameworks. -->
-
-
-
-
+This policy can vary depending on the desired use cases and ODDs. It might be determined before driving begins, or it may switch dynamically during operation. The activated modules and their configuration change according to the policy to achieve the expected behaviors. Note that our goal is not necessarily to achieve only fully-autonomous. Depending on the expected ODD, sensor configuration, and sensor costs, we may also design the system on the premise of semi-autonomy. Our goal as an OSS platform is to design an architecture that allows for flexible changes to these policies. [Separation the mechanism and policy](https://en.wikipedia.org/wiki/Separation_of_mechanism_and_policy) allows us to modularize the planning components not only from the software point of view but also from the actual logic point of view.
 
+**TODO:** How to handle the policy of the autonomous level has not yet been finalized and needs further discussion. While it is believed that these can be implemented in collaboration with the Human-Machine Interface, further investigation and discussion is needed.
 
 ## Component interface
 
@@ -173,7 +136,11 @@ This section describes the inputs and outputs of the Planning Component and of i
 
 ## How to add new features (WIP)
 
-As mentioned in the goal session, this planning module is designed to be extensible by third-party components. For specific instructions on how to add new modules and expand its functionality, please refer to the provided documentation or guidelines (WIP).
+As mentioned in the goal session, this planning module is designed to be extensible by third-party components. When incorporating third-party components, there are several approaches.
+
+As stated in the figure, you can completely replace the entire planning function, replace or add to the planning sub-components, or add new modules into the existing planning component. The latter part offers advantages as it allows for cooperation with the existing Planning functions, but it does require adherence to the detailed interfaces defined within the Planning Component. Conversely, while replacing the entire planning function enables you to utilize other components of Autoware, it does not allow for integration with the existing planning functions. For specific instructions on how to add new modules and expand its functionality, please refer to the forthcoming documentation or guidelines (WIP).
+
+![how-to-add-new-modules](image/how-to-add-new-modules.drawio.svg)
 
 ## Detailed information
 
diff --git a/docs/design/autoware-architecture/planning/planning-system-literature.png b/docs/design/autoware-architecture/planning/planning-system-literature.png
new file mode 100644
index 0000000000000000000000000000000000000000..ce1c81aba3701ef0f3a55c7e861e5508bce1e423
GIT binary patch
literal 82598
zcmeGDRa6|`A3X{N2oMNP@CFi`;O-FIC6M6m?hc^|5HvW!B?*?`?rsgiT^e_5-1Qd8
z@B5#5nl<ab+%;=WJ;3Vf>Z)^2eRS`A!c>%`(NT#}pFMkqE-NFU`s^8^=d)*Uaxaj8
zGx--h0l>fKE@HADUI2&h3)4{GGm)#LrmLERxvPhfv)MBXdj~r+CKnTDGc$V^O9$6O
zgjQkTA`Yt$ny%u`W=5`74)(7<SlO8YC!alIXJzNusIOw>-b@c=XWdN7ea*(UnG(Rs
zu@M@~#j}+k$GZGV_t~@8&txS;KX|6^FL=4)o!>tmZw+KLQeT=c$%w(fq1wOw`8vWD
zb=4kGw?Mtnt+3djy12Sn&#w4E+s0~7TUS)K?UT4f@%QfmuU|*J!|I58hf}d+wt0yh
zVT>ao$wHtX?II{`eqbSdn39Hd(vam9y}}z682W#XE>eyu#Q*atw0An&Uqj-*gGz~h
z84vrvBTNm|Q}VyBBvupP_5b?@JC-;1{}+B{*4^;z@0i0#p*2>Pmf!2^`KEF~ZVKa6
zSTB~{8%^}Wfu-nTLu{gWI;80#PIN3RTjdb4?4~Br_yoG&5+1~<j4|SUwiKK1m7}k)
zL6JNT_Wx`8>vU#NZU*(D<wNkJKpMAQ$A+^Jp;S>n|J#|GNIPi4w{N3`8Z6Gv&c=Fi
zPfw!%?@8q<bU}8|S9o|%JGn_XFP=MsXs66bN6|VBcgAuD()r?VZoF-wQEsxpuy7!+
zj-JLD`a(PeW8?00n3ju+3z!BTKBHz^lh<jLu{Q9QTK=0w02J1<b-HqSYohlDd)Nuo
zq+jYy77-fS`{oDu{nKs!9sg%6f2Zyw2Uq&vH=#1=s%;E^Pe1*^$^YNu|9=1f|JmOq
zDbgf(?VRHTLWb6u=mmrP`!~YfQ2tx8kRW*dSaCX>urjwj^&0zy@HO6YW@&AsR2oT1
z$()=V!zUB@&zG*HfaL{=>D1b9lr$c!M)EAGwD}}EgF;S+1fpLu*F9@pBHwdv`53jP
zVql=GrlwXTk8RZsbH_zPVpDXB0IU%>u4(?>M8M-<eNw|<W5Hvo8@S@dbHMC;mBhsn
z1_uYv_GjZaH#aGTmze+)f4Dugn5{6oX%oc|xW2yDb)PkJ-5H~v%Ke{lZ~=xIlDx)S
zw_xvg9AV%%zy|4R09~i^xojSlg705;vPOlsoyIE*uf$4|8BG>^tkY%wwEQ{*ah&sa
zLBUVGMt3wK_Movb)oS^F6TL<PM(F$U=O`V7)B|J!iHdZiKjFi}!;_vwm;%m@S|(Ig
zahB9?67zc;fcD}f0I!2Ov}ROPunWbg{*6NGSSo;7ItMW@F>UNu4o?*yInN|>+2EU*
znUyn(|GOmgJ8fEMC}_nNIwdE|R|G<5`uAIj7KZ;PgBji)JTSf}L5!%%%SUuH%Ean_
z>)acw0Qj8@$OVMF29?8vu~t{R1$Dd!JsVdve(k@sW?e|wq3HHunhW;3Pf|=3s}<4_
z7G!A~wR(PCrW^8IAMyrdPqUirDP%w3ARy{y+o6a)!OdwRfPqowBZZIzjaWMDw$rLp
zK!Dhr@AaJ9&eVO;LmxDC+ZDh337TuLU9w-m__2xfGuUF-EnF1+p8=l~Ke<0n2nb@d
zHI(t;<Hy*H48_-2yz8Q+xO3fOwOi$`gS55_`jS*^(QCBn17(?ro;oO2*@KN&N0YS4
z#~0c-2z{m-_#DO^gbnLgnvV~H`q$qBL`{0e^65w}dC<H%&jqxuHus9`<jmHO+N+c?
zeG6A|anUPX)=)Pe9I*Ge?Q(_J4Ylx*mQixvt7ytt)n>Y~Fm*Z11rZl&oj))LIu4&E
z=-z19*E6PZK6+%8%(-neovm|B<a(H_m$k3wUA3GN|1}7Sb!aXb5Z#@A{r(*mLgpPx
z;?NXJ#9@B4lb^NfJB7O(!&)T4?{+8)8DJg0zjc4`K6Sg>n!UCyeOY^A9ipcryh+~L
znj!Guhg`}yFM64&XGL(fhN^LTLJD5L*(+VGuhkgC3iDf=OMN@-1Tg@2n}L0U%*;MY
zz#M#g5jdFOwZ5Fa9W>d1R@T`~-R68l+seU}ejlegEZ)i&%}{bp>XK+rWqd_X2a|mi
z?&cNXF0<0Wz4-CT21ENaU%u`rb?<uNFt5D8mmuUy{@;`&Fc7rcpI(qH)O?}AP4Ij|
zt?6t`ejtq}T1{E#8#bj>Ol<7uezzAlaGJu-r~+!L@84OwqlT^UZw_P*j;RHYmS_l1
zZQ<we$0DgS-;wu=(WH#hJ?!f?yz-zDT1KReJk~H69wN(fUL850s%!PKYbl~AY1ovC
za`=;H5yGjvbOQMnyhFjpm9{!&tQx4_(e5hegJ!65`1<|^^Se!E$SHIEx5mRg`PwA|
zIj5V<md31e=TH=bkcaux5R%yxj$~#p*^nH9G81W(kWSv<FA%%mtz~~bLgp(_fy8D<
z84)h&FU=i>E*);sid>^;X=y2B31_5mSe$I8Ik3BKt1#EE<3tHvX!?sgW@2F2^S_FI
zUFe9*(scf|a!I!*CeA(QM&zaSUTvwxVk5cB08w^wtuHz+Mx(%_SRJ2&chXwj&*wPs
zvYI~L^t|o~o5B1A9x#emaJAFYVy|Ub+e57UNv(c16r|qtVAaiE-J?)ZBOYra#r}%O
z?4%v(+@Qfa0#9YOJH6nVRMXLs7FXlY)W^X^cpeBhPs2O<0v-K4h!P`F#DDk&@U^_S
z+Kc`q8E0pl76inRi^WQK$YRE#cII<b<n(v4x8U-tHOZpFOfksWyS+}zH@ka#mX?-3
z`Cj#GT*M|PD6o!(^p{x`l;-n+5c}oZwtoI7No)wFu^m@*mU|nf&l8OM<HwKBDiiG+
z7b|X(R=*1KOMYPY6Hrl`UGhDR<-G_b%Y{C8gBt5BfHb$f{Id#g_|C;jH5&1r$NQz3
zuPYbv>FEjqmz7{*UiYAzIlYO=>2VNTG~}oGshoaFZF&i%va#kN#ueiN8r9zrfg=wD
z)Ae6!A3t`}X8DS#s;WkOVor)UJ9CYTkJs5REG{;K*4WwAh_Nch15sU7O-*Ot#@5#K
zbaT)yiVMwTX@(`Z0v#RQcBv)9vChmUNH(5^&9Lp+LF1utrq?Es`A~Xa<*;x+*R-zq
z`}d<itf0$;IpzfH-!+tLN_4yKW;wK6df3qZKwUCpwS~3VqpQ!!Xrfs*$i6Qumb(W<
zFZqW5z7*;pF+-Yu*u)<q8OLpfnnHpx>-K7=9ibc>uhy?-8q63>9MXH1n6utBG-gt>
z%=dSTT!A?^YC2~s$QmIk2X$MbJ#Mn=^^bR{J1k758j$!a7`g^)9WQBr(41Y?(HYob
z?WR>IN`UfZL9MEeFY)El0}0I;Ls!vUZ{_$ydn>tTY}D3cCd%iHc{aDV{XEh#RvNvE
zkDmVYls>WB57s|&cjP(_k4IkF=ez;sPDWuz4c1IX)WLQcQZ80#_zAWuz1H$wdG|E#
zwtD2Z6Y<PfPBGcemmYH~IyFl~su?hsTzH0?n{hhLoNgQ*`m>mcrGwuOsi{47X1gTD
z@>{~MomwY*Uj`QGwticW61u)Feq0$V7qXnMPtn3u*l15-!2+?S7~Jne&SZ->CLsrF
zi_!*N<31F)4YVBhE#S)SwZWLV%m}a#EtuDX*DooI)XH>xjOVI<@DUPWgU)Y`=n3wF
z%#6A!wcHS-YbFP3td#uo;(;9=4s5>NC!d8wKvGdv9b0YvjDUPH?=oCXXaeOX_dSBk
z5b&^f)0LG)>F(}U$l$N;p0VWo6GtsS2hvbg6)V+muG=eVeDOu>Hqs3gf+>9EPbTDD
z#pix^b)1u*&*8GE(BQTw1=KdR^Ug1m4E*?XYHazQYYep4;OtDDYW933>!4*=+Pbb4
zc~fDrRAOh=bUr6G=AHh|C^+k$e?Jv}AzCD!UYx&dGtkQxS`iouGYs)K8o2j3TAspC
zFgRj%7|ep;Ufz9vMIk|<n84(ncx<uIwXO5ePx5kc9hU2Gls%4wiy;liLVLgb7Kv7?
z>DY)!z@2N2cbU`9qQ}5*h&*eq!-3p0Mbe>pFpXt!vmq+t`ncZWWUOK^d54tn)6}eM
zFUHA{2}}9HQij3ZIoyK_lx2r_b_l^kNPIS`A+V7#tAB;WM!llCApGl@pfmh~x`+_4
z7>+Ku2X6>iPpi8JeC`#^@2+ndo407l(rXjuEZ>SN@rSg-Ts$B9ragV)+fzhts2?+K
z2xu_-Hora2cNCI4bfdbOcGa=D&Q}LZlY4!!%M`P}8(*qBj7r<FD>2_3fY2A#qL|if
z`6Q)FFG|~7JMQFvnEdiO8B%Vd^u2d-V0=8&^pnY3jiob!gXT4lbWKZ_!`8#KwF0R!
z$`3^;!-rtjFCK9$n_&b?tCQ1P$7iI|V{Zgv=YL}4P<xupeiHka#x6!s^#L1k-JJ+)
z`E<K_?5Vvkub@CBBGNkPL{CqzkiwojSc4pFG?FWyq+Ux)P0eQZCxP4M#Jd@&R1wE*
zuj_T3o!R4QmGjEW%O_2EczEIy6MK3hNq+zS4fow*IJ3%TI_h%Kr*x376&2zx^LBe6
z^!*y$r<KEjtW#7o+Kb%m(%AEU{1YiH_#}Pq(5^fJ?XO%5C^`8#hK5G_cEc*Q->Ua&
zWAOJSjr56S;Ud~;m1t_&6~d7di}WQCnNd$qWKfWfs4iFM>8%JqQ=zqGBui))V44(`
zHwp!=s9dk;nh$8dyOeERnTY+=d!ZBKj;7{!WnwOT|I%FO5yPZ0<1<f;Lilj>?5F1z
z8E!~?qAwd8c)lG9L0W~clVOUAuGt&A2lq4Bsl<D~7dA#zYUAsphfJ;1*tZmt-^qGo
z#c$$^qjgd>mmw3}e<vYDodd%E&dedN+<xPgr3w0qImtK)Rd<$uz6lEMkYGeR3_dwl
z4qnm5^S-vU%-e+&?YV(5j_hx;UgEAki*zMfZHl0q_ZP=DcV1q2-vmg*;hBBu>2rvX
zf}!&SJ>GY4@S;3YvII)Wo=6b9YbWd4Wn0gzFCKQw@i*o-RB0bdlKYF?&UJ6L-n;&h
z@8<lzRW|B+rfk-|O8p_z8Eppz?#sV6n}RJ501u-0J3}zH^3v?BtI-3kQmLq@sv4SY
zrc3TlvmONv(-2#imUd_2;&2|0qrp{L<BR3?wT;~u%z6!uP`g^}$b(vLe4y9({d?u9
z;Q<ndInd5<^6+pttxA-%K6qPOTh|>l?9HX0GB|-i8aU0tXxTc`DT3D*I*eD_pfQ0E
zt*cfK8Dg#!I7Ir1Qv1_qw^<ru#9lkUi&{OnJrrP_d?v_a#Z|Z&{N7F!ia8q_Mk8H%
zmyaQ?m!?P;2cr4&f*0KhQJoJC;*^CNzFoWCJQjF0v}O(wh@JA<ewf}{6O~@G(i1_-
zG@pg;Ka(OuXBQOOUA3raXjf;9D56d`hNYlQ=~~fu5#1;sn;xz>iV7Scc;GvRq;#$T
zPB4j(FM42C6{B37_y-MpV>LylEWe7BUkDPgVLeJ@s8gAp&n13;2f>R~cfKIXi<Z;J
zeg6I5)2=HhG`QisGg*7s$K9n<pY(z*zap~g;(z{5;6Wuu*WeRFYW*D2ZbEd+9Bky@
zj|Quk3i*B?@~<25HTj#?*G{ix6cz2NH4Z*|3X+YDjkQdr+t;R@ot>2maZ^*9wc5qX
z1YMtQogQ^!o&t@Ss-B)=zEZ~1a`PT{;r0y;Z4UA*b=By=kZ!91@JXbWfR=PRe)@qs
zL}RN(^hDj$!Ge2BZzh5&OZHxrtpCi^<qx$+nfV^9$@P-OYp2CG_^WWH8f{kRl}Y2+
z%FMXuPRY407{YOP7RPr+C>V-Osl1xrM>|T-F!KjH?N@QJQGS2d;VFz@Nc-S<fGqYD
z&$P-OZ`Ies%goojNQB6hG+bO+pT!|;KYiY+G2gK1gW-v^W~peabn#k}NUe-v$fc)U
z5r-qMs@a%$A_b<)0*B8T?Hf6lUt7CqBQ+q~w6@Jx$n5ZcUA>4tI;lK#@rEdz#4$}V
z`lVIe!1tW($eaH(DD?P;m0=(}HJYm`CMJ}af=AEB^AstmslODKwxm8a^g|f}hdPqJ
zGGt{n<jDQFIgiICy=fPyF6P4T+^o2BAz6~ccOP_bJ(h%6J0<mN*REg_I77GFLi(RJ
zi88%zu>D$0Uxr=YrQkN!nylCJ98bg?mOBm=Hr@2tDBKQ~hCLs@>P9rtxn9}maBe)F
z!-!=ma&_OQTQSE?+Uarmh12(rI77~7tWX0LnFvKqqdp39a6?=9R{jbMzCsZ?#hGo{
zHCw!yjt}|uOB}+=<jhYFDHdr=Hn=}<x3|%jyXD0E_6-m8*jZS&oCB9bvz>+YuV)NF
zxOb-kS`uGja*K2)r26`Lg=E&xi_Jc3m$%S;OyAyQ{0wi5mHm~SdEPa<MC75(pKu5=
zm-WjG&zqEf1=|Uv%F6ctcnnqBUIf1oig@h#Cejip$xveMD2Lk^_mX~>JEnvAo_C`t
zR`)SJ>u6KDzy2*}VxmoH;H#>`cYbtTH5uPH1uz<?$D}NO-6x#e_)?)WP%KpOa@wS#
zqjd`QS`xJV_)+tfy6`O>==hU2K0(Yut(B6Tpe-0nI(2uZ$yoS{#(g4rG)yvXx@}FF
zf`cRSd32h?t-RvDY=tqja^nM_BOre$%zS^Q{3{__Ku}PSI{DB=Bp>&RW2lNts3V;M
z-7AV$VXI0khWl1aTL%OVCT(?VJ8E%XR%RqFn(&eL^RN^L-%z|4nZfQ@d4bWWBOgTh
ze!nNOiPwhg8j{%+dT`Af^?Ac7K3P@FJv@Z#(I>9eo~*5kA*$U0j*R6%f~9^(RM0%Z
z(Ii=BB3LHKkyn9gRfThzx96*GDCQD4I+{B=*P-#5`@Orc=Q$s~IiBNM@@LNlB)63p
zM$q=KgOYxC#-A&!qn56h)=M&kP<O|aEM->GeanPRl~BuxV8>*YUtyan@QG%yM{UR(
z;@MC8zhKKjok5-03K|rm<V7=eiIF-CPSlb!bq{LR{#}mAGMr*m#5BfG-Wo+J(4tTh
z=^LCdV<<+fP-%n|MUXgm*%rtanYQ8<WGf)Y3!))*E2Dh#(;s)yCxb$Q@;wDM35Aco
z1(Y{-!G-tY;8GCB+I&2O#c90il3v&g?o=0w;^_{K^tuy8mGc>?lt)SF^HV@<{%3V;
zPbf5%l9wQvU}lX^i=Ud33)f-uG14K6mLx~x)sl@%m{e4@LlS%gh$E2!tRlLy-ENBP
zD?wtT`S9S2&p6+9v=$uG&8_db;}%6O^2*}$E&jI<LT=aBTxseRo>pYy5eglXBwi=&
zx7Rs7Z0as}g(8a`Wm&qNy<~ixEqf+=O}AGe$Jp1u^$U1PbA^8(TSW0^epl;DD{bvl
z_rMT$(JRug@V{GM+cuaBd|7hGhB=T5S-YI?UhPom5a6k_opm2-J<IoX&?L|uob;`*
zC34qh7GE%9^t51WG18lDxI*|NZsj_3QtrL;w!tE2TzK+ww!4gS!cM<Cz23nD8I@>p
zu`}e+C)M&JK@^c-a?^)H3zkUk3Zsn>MtyxH_tN&Oy{QVvW9c)dKU+bg;+nUsg7)`o
z>ipHiZww`Ogf=zz_4YLD?YU;nxpa!DZd^IFZiX7GDv?%-_4^=Z)vw%`Xez7_ZG;u`
zoEP{hcBsEP!i<ksH%!UK14-o<O>db+?#Doj234W%>PTrK5B^8xkTEV4bw(|jl3J3;
zjlvhS9)@)KQ+`#+O273`zzylu0=fwogBG24kL7G`g1-@)lR2A$LhuK&jRukH(2yN1
z3uZeudnEkM3ZeB^32VI=-V+i37z(Oj0749v*(-X^?+z2U7A26%f)Cz#!$(OPZDqJ|
zzKSfe=PwWwG|c`?<homkSGY118<+W6o8xsa0F}-Wa9E#wM7zz5+&RHgQ0mUu+*+3<
zP-*fe{l;~kOixO*<Up01OTC_RWku%2?_r);=Cr5O@m}UYAee2-HCIg(gSj$gOjx{k
zkKdo3Ta%2uZ-<^RIE0LHXtm*|Uy*imB8)4Nkm!B~++ivgf!Zf?AwDA+a?n|Kkq0-E
ze1$+yb&ccb27@HrsSdff#V5;I2lzbN7}Xu+R%Z`8(T=zs%?Lpi1Rq}a8Ei}1)Crod
zyKP>D&7$!cvDY!;1kju2<+46>6!z|%zcKrUZd!GyP#cHgNt-oT5}G#g^+S^qlA510
z<x*ukOqq&<%Rfb>BW&pwJ6oxitvSpzCqHfxOr_yUCgXa@M|E|afUy}cFPy&RzoAG&
zxe(F{#qx8u5V7rSgDFyRaiP$jYXZx!FJXIx7$+-_YE0n1HW5*3)`ZR+opt7)wrP!=
zRGMG|{)C<FQv)%9j~X0`jJUqV)8K$rUlIxAh-kq@&vE@LDY{~wSR<=%M%TUc+cHXp
z0?j#Q=6)9z{qo+8@MF;Glew<vV-?!=Lrl9$?xH9wGOy5Z``6m%Tw1|m+RXPM=A#_1
z+TB44{gDtmm==BNJNuBI>Nf6PckAxEQtF}>9kF!5I~{AszEe_dFiMV6gcJk9tzkRm
z9ypfZFxnWU_f9vT^{a1lgC(84G5U6xO4CL1aXWkP9Bn6h%)H7NaRWgo!k4KNUs-g!
zB*@#V_U~&E15G#ljzRo2+luLN6BRmaRPo2%V|OT27Jlw+j%r+wX>KByH{PeaM@DCs
zwH{oR;(B?qNrEi>=?e_r|7rlLn!lE6ONhi=i=5OLxsdl|`qIr$fk@LHQ=J47Nx#Ng
z0&@Wgh<(&TKS<RsaG%8fbF%CtsyFGLI0TMN5*aeS<6G!eJheIhUqk%_ivhgTeVvdj
zh{Ftr@{#kKj^9V6;W)8?gBN%@+~rO_LY*b8pCgn>l^Ur^Zw~(wMxkBFe@VO9Xd|y}
z&h-xuH^VrIj0XKRq+Fb{G~Gf-j_wduZ`VDAiebDx_J3o4{+FT}L+#w4Zd4;z+MYm$
zlskbC#wWb>{v!FYosoa<$@jXGb<*aaXRfoF_56=%`+Lo`_tX6UJN`dXMq}br05I+d
z5ELIYGyp&eZ%<Xiv0gVw?1yI3o4--sx$7V7uhZho=dtKTOUmyW>PAli5DtmVdZ_+u
zylf>>e{(d|!_y-1iFq{xP#kWU1jRry8|BnS=svB82zl#Lv=L!B^Z(vY$-gVzU~}I9
zkRb}_FpZ(^Mg3tqPYg=+w7$t&Ph`5+W{Nh-r_fjU`0S3$ZT}4i=kjT8pdSF}l`QDR
z9#5k<R(xa-Z$wz6-<*2BH(lwpCdJ&aO#w8b`Fmb3lJmlzxFMo{3Cl?tfctx~|FEJl
z%7X{NYWB4x<D771j4x}Uq-){-gLj2Z{_ig4|JStLpKv$0zazpC0YR+lM_E~0ZdEbp
zA#jw7%1`Zil-&Q=lJ)PlS{K|eHHs~4B=L+GViP3DgGhcyU+wU$^ES8-P%lT68nC51
zBAE3PoNP)95IT*?zRJ7#$9DE={KWr9DLAXBo(PODs<pS;UlTq0dA)JVBT3SONS6+;
z=GlOUst6WyndkqYE_KRq;`}UWf%8#LiS4mY9L(t95_u#dw=Kx8M*Q<M-jK?x8&AEz
z>tx)Ml`5;R4<}rjG@tp2P}p6NnqF8blQk$pIb|R_I)|ePjOmR>18JDxmbh}=AsNua
zv`_*mR!n!v$ykgKO&{;GX{gMx$=W>;1yl!g|A_C{z*>*6LL<Xun!Nswtf>gU4CmQ0
zdrHO0k18<|zseJf)27NR;o8Kd^vPzeL<cN!1!^?P3hCvXrSRc2aMMJJUnj>ZyQ{}I
zt}*}N_LI{y@f;2!o5OQ^O_}V!Bk`+vz9aaAbmke#&J=@R?0;GS*MVW0K8Mjd8(KVp
zf-*gQ-BEM*g92pWR`U8vNcxm=u#591R+yiD$+k>1bGPe2KUKSJ-kV)YS^@0R^I7z$
zQ56IzkAtC(qU9x$0}d(bsq9H(829x1^5Qreh@`V~jLIN)%}1WkDKdT`zGDG?1EpB6
z1fs^h9ZW9tcc(Djzq5rH@7Ho&@{p33ZhfMfF0RL1m<c3()cXV`wIsvl^Zjpi9Ox8y
ziM!oX2=ip`qu4WV50~n}L(;DjTxqMkDAV@huXdPtIGO^xZ%YMxmLBe3{|+2Bl@Lvs
ztz0rby99SWX6SUBwLX59CfNV3Hcf#8;}`aGpuYEeKrZ1kdM&WzmArHZ)7qV<U(as~
zuPAmU^Av8q>yu4ROLRIkcpONNWJWrB`?I1VVE4o=;mdg4rbex!_L8e``YF}8L5h4z
zeh~73i_6__ixB}6g7L%V5G|LfqskBiL)Fp``y<Sof;SFipB@yy77gVzrd?THza4AL
z>}CP`VO$@e>iaDl2p)Abx(YmeILWs0JiY%|q_5iU^ytCCW8g<js&<cjzFhx}LBqM9
zsTK<jNeA65O60+_CyF$}>R?H)w5BFeL*MI*WCVV-*Z$p|uaW?a^W^kYXP*I}TZaS=
z1r6=;v;6oGkTGo8Jlx#4SX!<q$o;O2(o9~ye95<0RM|T)U|a5RzB@S&e!NFczXh<;
zT!0m>(=EBLIh?PLpRKg0^giF^hUDetIbUxi#U~_GExALSl10G6!@{@wa9b@`s}c0f
z%=Xx}c5_u>PuE+G=W#>u2?#jM{=5QW;w6*}^^51ltOe$k-}Sv8bKNpL>dTjxX;3GS
zda-tQkya%@lUcbH84;p^cw^#~_)$uy8<$$<=CsK^oxPtbHCWo5=i}p3$P`RTPfx$E
zfz}Knll!*q&sGA_wm7PqF=8}Zn#1?%2>)<8ic}z(&xHmcXYGdcbae-2EwUDNZ_feF
z?DP*qX%*kp+Ogx!PX2hU!xFwpt^L9ufK2vkyDS8NJB3tElzwZXNI?KiXnK6OwTp7A
z*VXks?gsP{)yY0UOFfXv6>)NM!VSR$SY{MlnkxQFlW3uyzvyvVLP8fJf$lqfef@~~
z=@PyEab*!jU>Ip@kZAJZm^b2%jSIJS(GnC-==4T^l1VBJ@KQ|Awnv#3NwE3u{<HPc
zAyzg;1O&^Oi#PI9iSa6e3GcLHJ{}6U!#G4t_uU?&NtE~G2LE`?-(|;NK};yOPy72o
z0?x0-^A_b5#o@)3gfr}gki`O$FwO6imPDFDNgl4Twj$};op-g^w@?;O>R!O!ZXJSK
zBiJ8#A1*@3$0;d0Y%rIG6u~W#1dy|>Rnhxx{g}Qz5<8`bhiIY?ak7KK-SZdV_`3Vy
z@on#Ew=+V{WP3gNH&&qO1xLh`J~-bJsVMTXG%b$ByoOmMLkR8RQ5JGm_U$DYqC89{
z76&!&od5k*=r(#_8yc3C$&vbi;C<Y7>T(2dnjsbj9rXfJ$5%_>PV&r*&RN>%AFpSl
z-LRAewJOcgZKjH>ZrMqYvZbT#u`3Sdsw46<y~Cx+KUEEuH~U=X8MOK_!RteuW-82H
zg0K4xFf?^;FJL><r3Ml8g#`tkcgK(vE}JR1Eiz$W&j|l%C(u-p)@iQGB@CJbKuq|b
zjm*rbqXkc1xNHsCxfDTRo9Qk?R$Q#UmkS=Pt_QJ{(yAXmOc)<1rg1wheYzxN_1v4Q
zW&qeH=LrAW`udcuOrI#g+N=2hgzC#$v`A(^Kmb16A%q+}km0e|m&l|u2Lc23#$i5?
z44f~~YfNS{K>`RV8y8!^`Uv@)O$*@;e@aGN?HN4E(Y>;M@&XA8>|hMih9xc+P{^M@
za%4XHY>S?2k=##{;H6D>6pOg*ud&njyEe0LKA+--q~^(rio$)mIkR#a{L|m>b<~cG
zNm!tq&Kt`y#G5@CbN(ZQjDI-<&Zm_}=cT8}{h8W9^QAs8wyDjl2<C=Rr?sAH{>!gK
z9G<{Pp`f(*_|BPf6CHHV=_0MpiQj6oWk%v@YxjO4Pf>(xIRlshOVbhjvp{6byzk%r
zAMS5!y%@3i1pki-7a1?SUA$jPv*jew<oCcQ_mQt(ov);m2|MXH`SRgLjc|koQ{Yuk
ze5z=^y^!ZthMBDmZ~Raq$@t!z>@p4^d4V<8Klw&b=LeztkGivbXv8YvOKb1}321_!
zb3&t!E^>=>XWv0&oBPl_Q3UX{VBshYWNX>qbiy#KL;9<ZJQ)G%PgYimI#-9hC(D~S
z`u>_v-L@%+OfT@N89#AanU(L0|56tQ&q@WOFoFF0i%|~7%6LAoqlPMObMm__BNL*G
z8<Is&FtwTzag>=BAsJ@hj+SYj1=a<LEAtMTOaE_&uViO#`y)RPXfr)2KEM0k-2$*k
z-$etppBFttK|%RS%oXkqo2&ME>E`Xt575X=H6+2Ja&o8uW8@X_+L;Af0|>6<3n3WK
z;lGmbL@5D86d$*M01!kH)GxO-H=QRxYOI`IYcF6nc5X}!2@s+=@BYp|c$rBKM8vmm
z-x6|JPqcUgvK**jDL_y;4suOby{Iwt;5ARB0YYVQriYXi(pI_)#*^c?wc0@ezT@}g
zsdMAP)6lA_s?>-3oj^D^IK6-VSUcHvveMDfEm!n2XV=u!4Avu~5sp}ECdb6I<;ccs
zqwie~Wu&CY0@!xMCx93!*5N5>zR>PiaV&I6%j@fnrG)ynD)DW+LP8^a#|tvQIosjn
z;$j03ac377Hncz>D*+GE&bUoBiCPIJv2Uw^;ollvy1@XPu5g->i765Yl^I5z!PVMn
zfH;kSpw@fP(Bn!+TYGL-_*v<+yt})5;VnBmdorgL4p1T6oTo}=zXzT&zA7Hn+!IZ{
zwENb1=H3qx9u9D6?R^fkz@{ca=B6XD-Q8VnA$MMoy^DQPe|J|HZn<4rlD>CXPmfe;
zTAGefR47RQe=S3=hWf{rSUhs(JP?US2-}^{pVtjZuVS%^bG&acQr~h{E?+}_%Q)g%
zm6%72N0BY4Iq@M8HtJySqq8v9Vk(;;2#Dy3u^ORT$@&B$$L9<P1`yiLG<@0B69_9x
zA1+D}kZ~3G;P4Q17O+@#*?0jOYlpkw;xD_)*>a^40_9dX6GV-(PuM7q?|PuzoXW~O
zgQv{j{2=|3VJFO3`29yqY>-ejc<N(&8z+-))aiAkK|xhjLO)9@kPy?=bvU1R3}Pi}
zT3VOQ6bmv|-*U#nL7hTqt-~-No7zLTm_~aJUmR>;Wn~3q(QAK~#)Sj*EpD_xARwLe
z8$6u&yC4U)t8Wbr46HYu4nYaHhq6SnHaE>_l+t^FbvyQM)=ZqVuCq<00mOj09*2u|
zLpFp+va+(p`llToVtz+~<W;i;&)h@&+6~JlVfpFKs84Uor3j!{sHv-o)!p}|A_D^8
ze~#9O2+GLFv>jg7&SU~96ELtj-On%Wz{UH`imd<<V|U@kg%${4ocN!A7!jJ9nK`v1
z5@3Y^MQpLz!`*d4Qj*KV^%ju74bTAKz&$>F{-phDo)x?Mz9tYfz1!+_8W(*6*T^4^
zLXexx^-F6f%g7DKa%2IMtmd0y{mQ*}0Jv?Ep8G7^*2V3;U2s3pOYtvXCRwEx`$Ym?
zn#8PEck+h;n(pK9ZvTlMtYnO!SIdiui>oN*3idt<??V2cobu$G+rCK9_;7}Tl^lE`
zG;nyUn;ku!7+GL9COKX4upKf&+lL(0Sr)r?OqCOpl<41F{0)I0BWeMy=b=5-h|ouD
ziY{u6wziHZFdC*DhYYfKL7Qn7mpI-M>HY#K*vNR*(5380Awuj6LIb*PRyH)`pBTuW
zeg!U{d-wJBTDs-JK3Cx#`F`_i^%Qt$cdpl6vb4_{zO3G=VYFHLBMET=N)Di3jf;x|
zyqtfzz|g;|tBYIX(vPSXs_5-~GfmvcgJ#QwB}gcobtpev%*32jI5}C5Y~tVvokN8N
z8fi_n*leC&1C3%*f3<^~myPJn79#v-b&XnbG~gCeQa#heFMYEw`vD{*yS{bj@`3>B
z3My(Yyls_*QQ(mL*Ud4^kk&SQ0>mt|vFYh$kDXmjWO3~AR#EE9gLFT2wkGf~NeZv`
zS$#0940CDX6QF4Y-}Yu|C>3st?lmT_efgdv;OFh+i#rj_Azm6VZF5f7FmlbwxOIE~
zSrDyYS7ZI!lel6VF=>T_l8a!KS^FiUk%G6rQQj@Jrot&OB50K83g^?lKn#9ux2{g1
zz{XMTrGmuz2!CkJ<G=oRS%NZ1><tKzwV{m8gD75Ici6Qpn)06$DnJU9Q@p3+i{37Y
zikncLS99$b6w?w%;-G|t28&6E8v#I24MIs3MKCE3*>Kdif#iqhW_VnHt&OVa3`V7T
z$FYYK%~SRY3=bF{{51P8H8DCd^G@+2SLDjDeTs)|nj^0S-GstM@W-aBb=?LG{%?NW
zvzmz{wPvbndZKpX2#S%4L1IQ7E38J4H?L5!Yu>aDU(z{?F?!k%eXEWPO5N2wKB*j7
zNE|*g@s5i(#zy^8-pL)S68g&yH&QAzs8b@fBZv~)7Eu$>)1r00#(MEfC{PA83Q*ur
z2Ok|*;o|CNEr*zo6XYh7Vq|y99N9gYU15*}<CMn0XPrkQW+R%+%|&04Gr|7yLtbC^
zi(KJ}U_{`aS3MUpo5g&kqUy*$b@18Oz6th36Dqi~hM6cg$L#epc%6j_@On&f0$lmg
zZ9EbGj<f=?{vXVemc(5F^3BXN@PK&VZz|+~szdJdmn_$03*$^^9Dgp9la9Bmd^BSY
zjMjF)+4c*?+JIf*7EU>iI3;(M3I$4qPT(~jex+m6W=b70hSYAAQq@|ZFl2#acvM-;
zKOD2^`pim@`T7xqH7`Zj_0Ab}j!|gu&K{H5^F&HAY`h$f<y6N{ug>myG<nNNWhcqY
zJwKr%G-?)UH^ngNsnRPvde<gKgm$R{MP&WM&7Q1`jOD4QGljF~`~OLkk*QTi(p*^j
zw|uZkkO8Tqyt6hxv&-X0{q~}$boXPfGh(*S=UMiY#?)~s)0s-7FJ)2dcrSA3T}iz7
zlkIWhRArAFpCKq~OVb!!Gu%XJ_cbWuEu+U|eiMf%k-oSQq{8I;lJ?TO!up*5t&R9q
zJO@49zD&s3Yu-rSWUBnFu}U8g)G^%cMGrc}Zt7PXTgx6KhGuLB=?pT5euC)cF+Z90
z`Y`I~U~};<+1$+i($?xY%%y2-N<vuynUFH0Q*Po8q)sK_q@j$6K3T;s`wP~UrhcM_
z<`=;mw3Gt49v9F2j>e6L!g#OX=}i%Jg!kpvEvM(_6<%XqjV(6f=m1h;UAM`Pgu%zv
zKI##@9`gSaaD!ek#3(^lS-`ysMh!9wHqy~>S_u~zYlJk38;b<bEw*UKrcznKav04>
zW+T-G&s$hAI6k|RHpZtcrC3h1mod&K+IU3In<Lob8oUl!3=AGAH9-O}R#=U&O}tH=
zOh1c}sXH=g&E>X2TYXJd;YXb`7*)Pgg0u{PVG0xUT3*+a1{e^oP{zbv=T1vu6gOik
zo_Y#4WZbcConBwT9KiCDl88V_Hh$|y2&BKIZBYk`lLfW^z1AhvPS=&=hL*c828Ioc
zO(iwpkLB}ZMfX|l!6qSA7(CeFbuT2_VdpguZP-BC;p?RxAfd63Cb&#$RW)v7MPqJ0
zQ*}R>mj(1gWsLXUKD@xQ(;Yid03I3&Q-9JAzu2Mu{ui3;;%SU^>&GuQmwpZo=+r44
zrXJ-;6z=BJ{1X#piA$pZB+=#u*yE8oAre_MAkPQLzu5m3DKfqsjAN(`tk<+Wr$We}
zaYZTZ@8@_;&Js@bEjOr608&f&7bT5l`30z<3kt%4;sE~^h#pUS1b|$bmR2|^2EbVe
zor>B@a8^u@bNJY?rF0;S@rjA&{!51%x45yq-<RY7xUyyW7(%`URBMJq>3l(*E1!f`
z0b%a(YPT-<{v6OveIpfc@2XP;f=KMuGB3vD<m87BAFxor80$rW+D<n5>j7H+>i!Ts
zoXTYboC^j019%O}yiUzC{cfzt01QICNb|ED^x4G3#L<X2=J5c>aG6mj5=E@cSB9tU
zAYqu1k&%K|%Yk<{)2(?$MQ9Kw0O6}L0(^7+)8)dG_!LkHcQ=5r`Ce#SuuxE(AmY+0
znO^MA0-97zpl$?U-9)o;!*+Om&lSY~)sHDDDdo%`B_!5=sjI6?sj1-t#W|pj-*4QL
z!Vp<;Ox_vKuLOqp1f_x?qqlC!bGIX6ovdeMVO=Q2Phj13z`;VJ%Sj(Cps?%*z=J+u
zf{vgNpyNviMB`6oaL-qwY(G;Vv#_o6Vt{YPv+8bk3%&M=Yh9sW(CDrncC7ecujwVY
zy7wCrzO_X{Czb$s`}6a2iR|}414j=i&7byLV7=&SPyiM<dvSNNP^-cerO_RxYDov|
z7-9NbffyJPBIV}hKB?$|A`1q!*TM&iu56$uW-C$x;KhqMABK8h2gay^2nz5@wO7u)
z0Sz)5pj}#=4u8YLlLRz>F94nY+U{RyQ$oW1uRDwd1Byx-<xGXc#b%&<KOGjyvR`QE
zZeV<R*>$D>Vl5vNSasQ~x`!Kk^*z56Fwm9M)Ks94^Y~R%^wo{t3Brm7^e9KyzCiT>
z^Z+SBJ^;$iPXQFEtbp9IqN2k1?+zGW=?NuDVPFyX-S<Pyv^)hfHIpbQkVXH3)%F{I
zzRf#!qBCk&(M{!cH8Yepu}@Kh*yezm7U)U&uGi!L?W6HUhX4Gm(tMBtgb|;aSyFb%
z%I&!PZqesZ2uOHrY-|7&-z)kL%P%Y}1R9*goE)l~^F3*I_Zs`^xMViP_}V2uAQLM9
zs=lbTzq=%GfW0;wycj=J=%&niMFC=9eSN*F0gdm4eknoeG|3*j#5%*@TPF1O_pdeV
zm8{jRMX5b<gb@LK#uozp-T=gxf9D8-L&5;b*xNG$lA)V66#(MaekzKha1zacQb+;V
zqEjS)Z4E-ceZ~-l-nq{3C~P5ZWot_XXhIZUf&(z+Yf=0xswjZ>gMrw|T6aFB1MK?<
z4V4*qViICIlNC)CFs4fNr4?OVl}GlLdHs!+D}1T)b7NEE#H{7mg)iH`R4J)(^)Ko4
zLQgj<`UbY{UJmD5+;X-oxQSpWx^aE@Fl9(>7L$=0`umI2ziQ|N{ol=#*0Aj7yL&$N
zd%`xhyu2QeP0{(n{P;xEEt79j<+$w&sB+c7G?`BLYtehM6<ht{`knDIA<PS2d!KcZ
zn~m`(l?4LHmYm!6B+@jSx4j-two;zc==T*TMbgZ!-QZii0_=&;7chBlyEzG9?P1W`
zza~!wgt6c!vWL%?h#7td@vGn`c14oJlZm3)R~fEw(~(Tw&J>&n1%{)A%103BL-+Vg
z^^@g=$LRQ50^e&)o_=X5cer{hQOER!$4|&Vf6xfeUZB88I%m9xGJpsSk_42_^&5#g
zngG63yWma&;7C0mB8oayy}bAiTW*=jqC)`nXiP>1DX<@8UH%Exi0w?>ab7!Zls)re
zML$A}msM13M~_JqUC!aqy1B3cphvZ)#=Eyt=k%}ZyE`<Ik+Zu|^^lR#ScPkcKi6oS
z@MCZr`bCD+5#~k5wd2+we*WxPfhue5c3u()1Kk~yhLkRXHJ=CpBp}F+{*?TGi=_o0
z3+pyhZRi*o*K45mfP>;7KV<_M-I>PTDW{8z<%N5TB-+@n=j2Gs?7{>SbJ*^7OTDX?
zOBRzoFy4dLU-Y~=emQ82;R@YG+04ARu1z`~n#a^?w&y^Xia9`tGJ02wK~<-?50EK^
ziRGTNZ{HSJzgT-y`8~lTid04vi@QjFDD`A_0aDRa#jvYn<;Q-GN1|13jo|i!ZZXGp
zF8}t|d`-$OO&}FRWXC?0ZZI4#=Lfru>~8WhUpt~kV$!(ElkG)^*9#HOGLDkJ=c^K<
zrxV955$Wlfx(gP1EAX-m*D(z}hkftta{-~Avun5n1&}rSH^!_-c$beoTka%rTma=4
zfWXD3rpj>=N4oJ*IAfjR0?xD=0W*ZY|2g{NM;=m*Z$(hF@SK=&sSD9uAx9YVvk+3V
z{^X0=C8x<^W!2H=Tzi`?FlvpHXxh!n$~P5ThDei8p5wX7N>AepmnPOdBm0&IRhq{m
zOh(PhNII<FOYP9%q2<{62o#?<#{%`E)0fN}!_h-#I-i1MKJi5_TyXSc`B0B9Y0H|J
zUWx>e3W!~YxLiSD;I+u;TC6C}%7;L&yPFUK=VS1rv^Xy+FXzF0FRmJRII>oxZO%I6
zxpI(4{?b6V#@*NaMO`I3x^Pl^<CSr>`sHwjdKkG{J<Nm0@j92ld05Ac^NYzTH(<M6
zscXCdKreK6;L&OV*hx_5%?~=~UxYsPxE!vH$uhc6;#TZ1hR3Yt+o<TDLjb~?I;%hC
z^X79*(7P8{-q<<WoY*9i<sj$99WB1|v!RnyrNjL{T0`M_<v++M6cHt`M7@<QKfm)<
zt{EISj2@ZzwJpi>dHD2r`PhFUV|IAItZ%@l<@EYMuQC10AN>jcr0}23j0R2q#ffP4
z*QbZu<8Lr<4Lu9B9<M_LAD3VX4-m!@qDjPT#^{*UKEb1|N;J}h&bFHO{+}rsQx~&`
z%rxCm!)t>O0p=z{nQ6VB32gW-<hcS3!|`lj-AxhbW-DifX;*RsEV91C)3UyMjIcdn
z!aF{s({4esY3L4#PbG}(wxytWlQI*kf&;xYJsS}=r3raw<q<bQpsD>4laTO%|77|u
z39_iwS0^IW1?bh^B~Ka-d}p)=@g!~;3{Yh+kZ&(Ahold<f*gwSrNY+ZmX_K>*`PCK
znB7!K)?cv1(t8&DZtVafLRnoMAJ}BpZCw7mk?Ktl)+!He{ui<5u_ablP5Mpx<ic4%
z-4QXoMTs@SOTA^l{#DJTvCE;L<ct*&5fQ|zDI@EJ7d#sUEqGsNhfY!h%YXBI?KhLz
z+VmcM6)jtt3p+mNKnW}R&3SH}CxXr86lvP}fVD?#a=M(gHL4v4d+%<t?AN^a?<f89
z0%!3gm)>;lK<N=bo@O(suR>EtUdkOK`qG*6EDQ-Jk-->?^vctl;;cE_G}PO8(oSUd
z*+S3iSl_i9mm9yIG=WjWSL500oN<2q;dDkipF&rQUOA~`3=vgGOYR(Ui<oV?#3H6)
zROcwbk(07_xVhZxFDu`28Ew1ZEoLted-0}gXVALZ_)ZEp4;5Gnrr58`codds1rZ*V
z?t@Yo-!#_Hw+*+q`DetlWo7N8t)U-qOghU`wZZ<`UIl$i4PmSAcr%>Y!(4l}QIGpg
z(FH=}rOb`qySg&@=hp;OXEpVF-FxUsY7F-}%OvS@Pf$})m$M^fd|W2237KK7Lb`BZ
zX>XJ8ioDdJ4S+BU(V^0GPw=A7jKGa>iA+-8&el_Ab$)a6w3gG-QSn(-4eHq#DKy|&
z1Yf>v(TtaN_r>TIn5w*Xq}x*Nr<uqLc({K6B#7E48upX}T>jfJxGlKhkr%TWzx_N&
z5vf03!F4}Vi8?2&s_zK(xJM-~!+KhQQi+>-RN$XDy#AX28LpHU6A2Y}FpFzX8@z>K
zLWM>d61Q{xx2PD)FZTw{NJ@=OFFE%&r|?d8;Y5P1dvdsyC_c7;Nrso)n6jqxU8dKf
z*$dPH=EYw7VaHEKby{s%f_9xloO_nB6-Y1MDl<R&e<K;nHgO2_$8WQ(Fe%q2ahR@3
zmhC4RG|?+|9ggBZ0iWJRL0V9^{Vp7IyG$zebGu^Yvh?{RX7^{9-a>*`;KK*IgN!Ur
z_8C0NEUyXBV6XmUel#!{CY9K#Vf(eDedv^0qGs^2px@cFqk8Sou10&53nA<973nBT
z5SCczc=)Vso^qD(#Pl>SG4b1GJsn;mJQj&P3b;}%(QGW@w4OF2%Gt_0YJDBt<*$9y
zj<C=nOE<HkheL+D^SRr47;9IvH*ItLLRF^t>x^poP2)q(xODEw+Pn~{?lGGYEHnpx
z*iUio(VEaiNE<6Jn?bjE^{R8j$eElVnTWXy;TvuOIZgO%mUIPo+umA@A9S?m;E^Ns
z%8U4D&5HU|fyYziA=oH}!G>rR_2sGhVi<DsTdTmK&DF(9&$D}K-!YoDc0mrxl6}SW
z+YsqOonr1)=<e07oYlxVZszE3CZ=|CE?hEeh^uKM;P)@yXfx!G_W{j@^lPlP4QJUl
zXaIe9z@#<0JCRsumMGE)$|yX5oJ)6-Oa^gqhBM#aa5!30`P48O!iG9Q&He>@#C};x
z!NEv^!sKwpY_HhSGTs3jEDveF?+^w@;UDo_oK1ek)nDsev-;lBLKZz7vPAw)WM#Jq
z|HbmDx25IL^7-{>6z5wm*T{Em(M#l(zT^gL-hzv3T%0XR5QB=i5c|d~yW2lU*9evk
zQG7+{Te=?Pmy7Hf1BBBkE2*DL5Rbf?ftNMDe7=fl2`MEc>508O#~tD1RJ8H6{<sqN
zpBCUSIJoC#{m+RNWCR^eTzcBgRgZG{vdlwSc*%B7LDQ5SHXc{rXl$94{7&<MSsg|%
z$wQ3!0dFHjijr>WrqFpETYUO=NeN<QhGQf8M>z5E(X+$Sc2HaoH8?%Ec^y~Z^BCQF
zt#W(v4N`w}dgF|^*bcAp+i%~x_eDk=89OF@@qFuT*<xe0OsOPH5M$zB0}(~6$~gQd
zuw5Pn6EmsrNV{%eKq1q6m)^d910PVq1n5O!ty1;A(0`*%At~xM;}k5hI)0(Hs1gl#
zwflCa!kR6jCLsnyAnVj_pT2{@>)|OP7AePF@(|8N!fm9q2WjJ^wZU(dZW)bo!p)C?
z_H?w^*<3GYOD4zjW7!23{3P9{S2Vdn--^ZG>CthD=_VhbF6~j!O^EEI-l#g{3pZ*O
z`1$Q{vwt|La_1eo5%!Pg)`h<d=~oR?<lM7<q;r@*V{@k)fVSOMKD0LlsETd2NL??M
zplxR;e&@|{+v8E$SKgeL?};HI4L9DNNF=B*>NdtNE~KL5z%ZB;#hB{mc({vol?xMf
z_+_+E5v^6V`^>J<jbciDc$1~Y+@KiQMS<9aCcVFHKY<*5RKmu5`E)|{{d>jtR(Sd>
zwz|#f)HR*F18=3iX9_{5D;;O$+(XW`PWmm_b6nunY0p4x3BnAC$0K?k%gJ6s2>evv
zJ>SxoeyK@;seE$#@Zsb8j}G}cRSCNdgaZ$9PfaPx^IvpK**%4^>4^b1OVPj{ELGzK
z+whuVv$Y?@oW;pw6>`LLU8_|E-+xh|*ZGTl^~{t$)jK<YW@v83#$pCb>3t-k&ZT~Z
ze7Bvu@d__#_3O+0wGjqFp+jc;p)}>%nQ{qDH+L4lL|OtW_Nx+<^}Oy;6*VQR_te75
z^c!Z>35gmwr1;^3RMS>ZDR~jC^WAh>-O1aat8M_{t~=^@`TiAR+93YEa}XA-C=igf
zDLP-P=t#R=i`pjg;&h0;ukx;8_KJs+`DG2oKlIj-&8}<MZ%wu84}QL}sCP2f_&JZy
zJqQlIrk1ZiYQm;Ub~`!ce$QJLH}gkv-sjR}KVo}mFuP%#dBE^6l|tBOP5i>Zi`!0|
zIQh2i1DOFfBzO8T_8^5Bzv<+)$GsU>i!_<3f;sPp{mtA)GFtmT=(=oGFT-R<C%_kE
z%8U1Kh%I23`=HF{@WL1bJl|6Xf~2Leaj^r&@q!t~hC&R$y)FjgQ@=i&N`$Ny@^|Gs
z46RNfb2~lQX~aS)BO30@PP#p=PA_1BH<vowSa!7BIiK^h?g-uo4sHE$vcMW=CbfIy
z*Y~}C@18(J^#~(or&Jy$w`eGd&&pCZGI|40K~+}cG&9s(EaLe;8iMThYK;#@l1LsG
z;V3(l%&gcZ!{Mc#b>jE=SLQjo4ePu1E4=9%B`h#MC+{!z;7@M#q<?9U(T$@+2&?2D
zD_3K-oAaTYYYy!7i?0W2W{XdJA##OI6L{GY9-B9f4zv`DVzQB0L)pyBm$`oGzCu|R
zFFj(%=>y+rEXw{dLU2%|{&o(RE^TjA8Jx@ha0%{dq-h&T|4_6$I`~4x&r-z9PXO1U
z?u*kDq5I*yxUHpz@%XKCXGU#>=_HcA*PWmBJ(5ymd_TEYOt}eiJjf`I7fi6}-duki
zbrICKH`9FkI?9%oJ7k`p7AV`!@Nsd)#l+y1^409G34W#|E70gNrwnR@POYCQNCa7y
zqgDB5AvvH6Ock476L3*sHU=!FuzAW|9Q74qs*$^qC1vrXN3q$nFRXd4j}my^E?g3d
z<dBfA#)rLhS-q&;*gvHmZH$c2gSum}CRJV)Cuucsv@NjQe>M_Qg$v{!bq~i>H$-|n
z&9qs8tj@lXNx-*N1lI-qsE`dg`g2=*atA5g&f?0vy7HWNbE`U>PjXrd!QCxm{Uwbo
zSF78%l$G8&d(S_b@8WRdI<!2CexA-|%eZ!%!?}2Opg={>4IdaNJ@<ASG*h2gtAF?G
zHaYETjXFEbBl(RGp3S|{gXcZt=GU~|0k#EM1vv?>>oD1!wv_ClA1+O4b3bAG_txn0
zHTK!Ra#9C+d%qvl8~!dW-RdSVSZ}#KFj?&i)Ad~WlI}L8l|R&l7amqN!#N~a$Rsi!
zDK2Vf+`*Y95S&TL^4+BsJ3)QoyHN)bv65*rNo4`n!l!4X4VMt!sTNT<V_8_T&pKOm
zIYU5fm)Ue4TT1~_=PK3Pw>bG9C8yC}eY{s^F_5etb?WV&pMkul5<Hu63Gb7V%g?OZ
znOW0}2wgiwNokgjovRly+rabWLX?(yK8pP&Ioej^|KjYe!>SCr?qL;??r!Nux<g3;
z0qK(N4(U|7k&*@}LAqPQLw87bH+Vq0esg@D_kF*=zrVaLxV@P(XJ*gdYp=D&*xbFx
zVw0Dxgqzn@0MD%g9OTgU_qf48#|?-964KHkix(@%mO3WPyb1j-)}$rKl#(cvAcbKK
zs%Q(@qG*k&S{`ZBYne?-j?KF?wZA>1HI<xWT&PV?I*Y8#riiJydf8&b!k|OePlt1G
zL7rRGB_XY~(QJF+m`f$$)GX0=JRd9})V>OgbT|q#ly)|EsZWXwkrd4T;?0=2&1pCA
z$9~Giw69WeauhpfO1$ExQpXwOJ1MM|7MuS5w<}|qZ0RedZ=T1g!P%^e7i-fIBu3=&
zNci}w9rwwS{CL~2?GNs8YQAK|gE$JA;-uM&R7sk252tI<2mXBK9MU7op(^5`uk5*p
zZqIn0*1rCxeeuS|v|(Xy`KJ)5UbX@;L=F4nX#w9U95gn^etNqv+PhcE+v4~Bn$G^2
zfh1#zYbTzU=2hMQ?XUMqK@mTM$|=P6mP%YThm&EJG-sAnOf7ceZ+}#-@yFn}UF6$`
zk79MDV3wVT561JL>%fYmsJNERy1!NbRkr_wKqxwy@n&BffdBfcqA|s}agaQMEh%x;
zyUB>(_^41h^^+00Dr1ugxzo|IVW-RH<+O!~py^xBux?h#oU$`B6|WcabEheC7|jl?
z5G`9iVMtM+i%LV5lSjvi$BCTu`!%Cqhe?cuq^7K*8c}Y=lKx0HC4`?#i1|l-!&PR2
zn(cW_?uJdSeNDgk2WOUu>Y!iFuX?Mev(s+hovCVSM9BoFSQ5~io8fCR7`gGmFJOFw
zzf-WCi5ori7bds$s%G{3`}!>OE7Ei|T|zjANza$8EWoU5h4??5QJ9Zr4a3+zMap?F
zCE6Ibf}#gVT@an*I8)zsvc1WmshAo3dATgFtxYsHH`mqME8oE!ggGn;JD?CFAqtm9
zCaK(1J6bCv8!oS<>iBp09iQ>tTd`2qZvX{ZO>|$1W35E6Lb<N8x*Gi7PuUb{f#T}8
zY6+=8Ww7IJBIIu~!5PUMu*=S+o7P8&)-mSN5hQyr&=AecP#j=PxO?N?b3-ghEEqEP
zocr<3%3{;UxfXYa1p4Q3ad9vz8qi1k719MplkhnM02g=yr3n+lcyG@Aw15$`ts8sL
ztf;R~4wF0kwYT@1m1!_1e{e<uRw~`Lq7Qj<?5J*svz_ga_YMGfpEP|BXaRr}#Rel|
z5dyl>sK_NL3{->tTcS~xD-%l&D;}`1ohP#6U>P=;i+*-guu?z^fs;cYWoB&bHQ;0w
z7h{u?v*DB>jU&J9V3w3OA|z~nfP*toXcWipL!B%tyTrjteyuWldGfTv%366Uh?Od&
zF-UFtaI`SL`SahRlZOB|ObT)o!d*I?Dp@<kIv=68zd<{7CHQrR{2P6wkTQBJ4#goE
zF4ZmiT<x0RFO8-dA#z4W@K4EN+6pR)1NP^cIB#i9s(Afh)d52pjSBrG(=lQal0iU+
zXuoVUBK$oy1-;(MHsMY8XI~`~_Hax%(bm%&1`MC@?^X(I2W~Ay9LACf2rcUB>MRCr
z8Gt;+P4wsH-VcDjl{#gA_opKF_pO1M(x=`Hqs!wZ;M%0Dr^gDy5NuWunTV<u1Z@`^
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

literal 0
HcmV?d00001


From f7af713ad0dd70eaa373ece24bfc1b2f5e544b74 Mon Sep 17 00:00:00 2001
From: Takamasa Horibe <horibe.takamasa@gmail.com>
Date: Tue, 20 Jun 2023 21:07:26 +0900
Subject: [PATCH 08/19] update

Signed-off-by: Takamasa Horibe <horibe.takamasa@gmail.com>
---
 docs/design/autoware-architecture/planning/index.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/docs/design/autoware-architecture/planning/index.md b/docs/design/autoware-architecture/planning/index.md
index edde599b0d2..d249c33b52e 100644
--- a/docs/design/autoware-architecture/planning/index.md
+++ b/docs/design/autoware-architecture/planning/index.md
@@ -142,7 +142,7 @@ As stated in the figure, you can completely replace the entire planning function
 
 ![how-to-add-new-modules](image/how-to-add-new-modules.drawio.svg)
 
-## Detailed information
+## Detailed design
 
 ### Supported features
 

From 8586bac09faf18dae92af7cc3556213caa146a74 Mon Sep 17 00:00:00 2001
From: Takamasa Horibe <horibe.takamasa@gmail.com>
Date: Wed, 21 Jun 2023 10:17:17 +0900
Subject: [PATCH 09/19] update purpose

Signed-off-by: Takamasa Horibe <horibe.takamasa@gmail.com>
---
 docs/design/autoware-architecture/planning/index.md | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/docs/design/autoware-architecture/planning/index.md b/docs/design/autoware-architecture/planning/index.md
index d249c33b52e..bbee03bdf37 100644
--- a/docs/design/autoware-architecture/planning/index.md
+++ b/docs/design/autoware-architecture/planning/index.md
@@ -2,9 +2,9 @@
 
 ## Purpose of this document
 
-This document outlines the goals, high-level design strategies, and related rationales in the development of the Planning Component. Through this document, all OSS developers will be able to comprehend the design philosophy, goals and constraints under which the Planning Component is designed. This will enable them to participate seamlessly in the development.
+This document outlines the high-level design strategies, goals and related rationales in the development of the Planning Component. Through this document, it is expected that all OSS developers will comprehend the design philosophy, goals and constraints under which the Planning Component is designed, and participate seamlessly in the development.
 
-Furthermore, a list of concrete reference implementations and provided features is also included in the latter part of this document, while this information might be managed separately in the future. This allows developers and users to understand what is currently possible with the Planning Component, how to utilize, expand, or add to its features.
+Furthermore, detailed design of the reference imprementations and provided featres are are included in the latter part of this document, while this information might be managed separately in the future. This allows developers and users to understand what is currently available with the Planning Component, how to utilize, expand, or add to its features.
 
 ## Goals and non-goals
 

From 21f2678278c085fe964f265eadb8797cadba0322 Mon Sep 17 00:00:00 2001
From: Takamasa Horibe <horibe.takamasa@gmail.com>
Date: Wed, 21 Jun 2023 10:20:39 +0900
Subject: [PATCH 10/19] update goal descriptio

Signed-off-by: Takamasa Horibe <horibe.takamasa@gmail.com>
---
 docs/design/autoware-architecture/planning/index.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/docs/design/autoware-architecture/planning/index.md b/docs/design/autoware-architecture/planning/index.md
index bbee03bdf37..7a8270fb951 100644
--- a/docs/design/autoware-architecture/planning/index.md
+++ b/docs/design/autoware-architecture/planning/index.md
@@ -10,7 +10,7 @@ Furthermore, detailed design of the reference imprementations and provided featr
 
 The role of the Planning component is to generate a trajectory (path and velocity) of the self-driving vehicle that is safe and well-regulated while satisfying the given mission.
 
-In our overall design, we emphasize the concept of [microautonomy architecture](https://autowarefoundation.github.io/autoware-documentation/main/design/autoware-concepts). This term refers to a design approach that focuses on the proper modularization of functions, clear definition of interfaces between these modules, and as a result, high expandability of the system. Therefore, the goal of the Planning component is set not to solve every conceivable complex use case (although we do aim to support basic ones), but rather to provide a platform that can be customized to the user's needs and can facilitate the development of additional features.
+In our overall design, we emphasize the concept of [microautonomy architecture](https://autowarefoundation.github.io/autoware-documentation/main/design/autoware-concepts). This term refers to a design approach that focuses on the proper modularization of functions, clear definition of interfaces between these modules, and as a result, high expandability of the system. Given this context, the goal of the Planning component is set not to solve every conceivable complex use case (although we do aim to support basic ones), but rather to provide a platform that can be customized to the user's needs and can facilitate the development of additional features.
 
 To clarify the design concepts, the following points are listed as goals and non-goals.
 

From 14a4177c7291387e630e1d5c451c46084d0b0661 Mon Sep 17 00:00:00 2001
From: Takamasa Horibe <horibe.takamasa@gmail.com>
Date: Wed, 21 Jun 2023 21:09:41 +0900
Subject: [PATCH 11/19] add japanese version temp

Signed-off-by: Takamasa Horibe <horibe.takamasa@gmail.com>
---
 .../autoware-architecture/planning/index.md   | 59 +++++++++++++++++++
 1 file changed, 59 insertions(+)

diff --git a/docs/design/autoware-architecture/planning/index.md b/docs/design/autoware-architecture/planning/index.md
index 7a8270fb951..638e22bc9ea 100644
--- a/docs/design/autoware-architecture/planning/index.md
+++ b/docs/design/autoware-architecture/planning/index.md
@@ -4,25 +4,42 @@
 
 This document outlines the high-level design strategies, goals and related rationales in the development of the Planning Component. Through this document, it is expected that all OSS developers will comprehend the design philosophy, goals and constraints under which the Planning Component is designed, and participate seamlessly in the development.
 
+このドキュメントは Planning コンポーネントの開発における目標、ハイレベルな設計方針、およびそれらの議論ポイントをまとめています。このドキュメントを通じて、すべてのOSS開発者はPlanning コンポーネントがどのような設計思想、目標、制約の下で設計されているかを理解することができ、それによってスムーズに開発に参加することができます。
+
 Furthermore, detailed design of the reference imprementations and provided featres are are included in the latter part of this document, while this information might be managed separately in the future. This allows developers and users to understand what is currently available with the Planning Component, how to utilize, expand, or add to its features.
 
+ドキュメントの後半では、詳細設計としてリファレンス実装や提供機能の一覧も記載しています(この情報は将来的に別のドキュメントで管理されるかもしれません)。これにより、開発者やユーザーは Planning コンポーネントの現在の実装、およびそれらをどのように活用、拡張するかを理解することができます。
+
 ## Goals and non-goals
 
 The role of the Planning component is to generate a trajectory (path and velocity) of the self-driving vehicle that is safe and well-regulated while satisfying the given mission.
 
+Planning コンポーネントの役割は、与えられたミッションを満たしつつ、安全で交通ルールに基づいた自動運転車両の目標軌道(経路と速度)を生成することです。
+
 In our overall design, we emphasize the concept of [microautonomy architecture](https://autowarefoundation.github.io/autoware-documentation/main/design/autoware-concepts). This term refers to a design approach that focuses on the proper modularization of functions, clear definition of interfaces between these modules, and as a result, high expandability of the system. Given this context, the goal of the Planning component is set not to solve every conceivable complex use case (although we do aim to support basic ones), but rather to provide a platform that can be customized to the user's needs and can facilitate the development of additional features.
 
+Planningの全体設計において、我々は [microautonomy architecture](https://autowarefoundation.github.io/autoware-documentation/main/design/autoware-concepts) の概念を重視しています。microautonomy とは、適切な機能のモジュール化やインターフェースの明確な定義に基づき、システムの高い拡張性を焦点を当てた設計コンセプトです。そのため Planning component の目標は、すべての考えられる複雑なユースケースを解決することではなく(基本的なものはサポートすることを目指していますが)、ユーザーのニーズに合わせてカスタマイズでき、第三者によって機能が容易に追加可能なプラットフォームを提供することに設定されています。
+
 To clarify the design concepts, the following points are listed as goals and non-goals.
 
+この設計コンセプトを明確にするため、以下に Goal と Non-Goal をリスト化します。
+
 **Goals:**
 
 - The basic functions are provided so that a simple Operational Design Domain (ODD) can be defined.
+  - **TODO**: need more information for the "simple ODD"
 - The functionality is modularized to accommodate the third-party components. That is, a complicated or realistic ODD needs not be defined by the basic functions provided by default.
+  - **TODO**: need to clarify the meaning of the "realistic ODD"
 - The capability is extensible with the third-party components or the decision of human operators.
 
 <!-- Not sure what the following says. -->
  <!-- - The mechanism and policy are separated to allow the system or operators to change the behavior of the ego vehicle. Ultimately speaking, the policy can be set to crash an obstacle and the mechanism always follows. Otherwise, the system is not safe from the design point of view. -->
 
+- シンプルな運用設計領域(ODD)を定義できるレベルの基本的なplanning機能を提供する
+  - **TODO**: シンプルの定義はもう少し詳しく書いたほうが良いかも
+- サードパーティによる機能の追加が容易なように、planningの機能はモジュール化されている。
+- 人間の操作者の決定やサードパーティのコンポーネントによって機能を拡張できる。
+
 **Non-goals:**
 
 - The Planning component is not self-contained but can be extended and enhanced with third parties.
@@ -30,8 +47,15 @@ To clarify the design concepts, the following points are listed as goals and non
 - The Planning component is not designed to always outperform human drivers.
 - The Planning component is not capable of “never crashes”.
 
+- Planningコンポーネントは自己完結している必要はない。ただし、サードパーティと共に拡張・強化することができることは必要。
+- Planningコンポーネントは自動運転としての完全な機能を目指しているわけではない。
+- Planningコンポーネントは常に人間のドライバーを上回るように設計されているわけではない。
+- Planningコンポーネントは「絶対に衝突しない」という性能を持っているわけではない。
+
 While performance such as "never crashes" is not a present goals, we need to create an architecture that can potentially achieve such a state with third-party components or decision of human operators or future enhancement.
 
+「絶対に衝突しない」といった性能は現在の目標ではありませんが、サードパーティのコンポーネントや人間の操作者の決定、または将来の強化によってそのような状態を達成できるようなアーキテクチャを作成することは我々の目標です。
+
 ## Requirements
 
 WIP
@@ -48,6 +72,8 @@ This diagram describes the high-level architecture of the Planning Component.
 
 The Planning component consists of the following sub-components:
 
+Planning コンポーネントはいくつかのサブコンポーネントからなります。
+
 - **Mission Planning**: Calculates the route from a starting position and a given goal based on map information.
 - **Scenario Planning**: Determines the trajectory based on the current scenario, such as Lane Driving or Parking.
   - **Lane Driving**: Calculates the trajectory for driving within constructed lanes.
@@ -56,21 +82,42 @@ The Planning component consists of the following sub-components:
   - **Parking**: Calculates the trajectory for parking in unstructured areas.
 - **Validation**: Verifies the safety of the trajectory.
 
+- **Mission Planning**: 地図情報をもとに、初期位置からゴールまでのルートを計算します。
+- **Scenario Planning**: Lane Driving や Parkingなどのシナリオに基づいて、適切な目標軌道を計算します。
+  - **Lane Driving**: レーン構造が存在する場所において、適切な目標軌道を計算します。
+    - **Behavior Planner**: 交通ルールや安全を考慮して適切な経路を計算します。
+    - **Motion Planner**: Behavior Plannerの出力を元に、車両運動や乗り心地を考慮した目標軌道を計算します。
+  - **Parking**: 駐車場などのフリースペース環境において、適切な目標軌道を計算します。
+- **Validation**: 計算された目標軌道の安全性を検証します。
+
 Following the microautonomy architecture, we adopt a modular system framework where the tasks are implemented as modules that can be dynamically loaded and unloaded to achieve different features depending on the given use cases. For instance, the Behavior Planning component includes modules such as lane change, intersection, and crosswalk modules.
 
+ここでは microautonomy アーキテクチャに従い、モジュール型のシステムフレームワークを採用しています。planningの機能はモジュールとして実装され、これらのモジュールは与えられたユースケースに応じて動的にロードおよびアンロードされます。例えば、behavior planning のサブコンポーネントには、レーンチェンジ、交差点、横断歩道モジュールなどのモジュールが含まれています。
+
 ### Discussions
 
 The following provides discussion points on trade-offs in the architecture. From this information, you can see the current design limitation, challenges, and potential improvement.
 
+以下では、アーキテクチャのトレードオフについての議論のポイントを提供します。この情報から、現在の設計の限界、課題、そして潜在的な改善点が見えてきます。
+
 **Separation of planning and other components**
 By developing the planning, perception, localization, and control components separately, it becomes easy to collaborate with third-party components in the component level. However, there's a trade-off between performance and extensibility here. For instance, a perception component would ideally perform recognition and motion prediction only for the objects that the planning component needs, but separating the components hinders such close communication. Additionally, separating planning and control makes it harder to consider vehicle motion performance when planning. To compensate for this, it's necessary to either increase the information exchanged via the interface or increase the computation load.
 
+**planningと他のコンポーネントの分離**
+planning、perception、localization、controlなどのコンポーネントを分離して開発することで、サードパーティ製のコンポーネントとの連携が容易になります。しかし、ここではパフォーマンスと拡張性の間にトレードオフがあります。例えば、perception コンポーネントは理想的には planning コンポーネントが必要とするオブジェクトだけを認識すれば十分ですが、コンポーネントを分離することでそのような密接なコミュニケーションが難しくなり、不要なオブジェクトに対しても処理を実行する必要があります。また、計画と制御を分離すると、計画時に車両の運動性能を考慮することが難しくなるという性能面の欠点があります。これを補うためには、インターフェースの情報量を増やすか、計算負荷を増やすなど対応が必要になります。
+
 **Introducing the Scenario Planning layer**
 There are different requirements for interfaces between driving in well-structured lanes and driving in a free-space area like a parking lot. For example, while Lane Driving can handle routes with map IDs, this is not appropriate for planning in free space. The mechanism that switches planning sub-components at the scenario level (Lane Driving, Parking, etc) enables a flexible design of the interface, however, it has a drawbacks of the reuse of modules across different scenarios.
 
+**Scenario Planning の導入**
+整備されたレーンを走行する場合と、駐車場のような自由空間での走行では、インターフェースに対する情報要求が異なります。例えば、レーン走行中は地図のレーン情報を処理できますが、これは自由空間での計画には適していません。シナリオレベル(Lane Driving / Parking)で Planning サブコンポーネントを切り替えるメカニズムは、インターフェースの柔軟な設計を可能にしますが、異なるシナリオ間でモジュールを再利用できなくなるという欠点もあります。
+
 **Separation of Behavior and Motion**
 One of the classic approach to Planning involves dividing it into "Behavior", which decides the action, and "Motion", which determines the final movement. However, this separation implies a trade-off with performance, as performance tends to degrade with increasing separation of functions. For example, Behavior needs to make decisions without prior knowledge of the computations that Motion will eventually perform, which generally results in conservative decision-making. On the other hand, if behavior and motion are integrated, motion performance and decision-making become interdependent, creating challenges in terms of expandability, such as when you wish to extend only the decision-making function to follow a regional traffic rules.
 
+**Behavior と Motion の分離**
+Planningコンポーネントを行動を決定する "Behavior" と、最終的な動きを決定する ”Motion” に分けることは古典的なアプローチの一つです。しかし、この方針にはパフォーマンスとのトレードオフが存在します。機能の分離が進むとパフォーマンスは一般的に低下する傾向があります。例えば、Behavior は、最終的に Motion が行う計算結果を知るより前に意思決定を行わなければならないため、一般的に保守的な意思決定が行われます。一方、BehaviorとMotionが一体化している場合、運動性能と意思決定が依存するため、例えば国ごとに異なる交通ルールに従うために意思決定機能を拡張する場合において運動性能を考慮する必要があるといった拡張性の課題が生じます。
+
 To understand this background, this [previously discussed document](https://github.com/tier4/AutowareArchitectureProposal.proj/blob/main/docs/design/software_architecture/Planning/DesignRationale.md) may be useful.
 
 ### Mechanism and policy
@@ -81,8 +128,16 @@ In planning, several policies are defined to achieve various user's needs and OD
 - **Semi-autonomous** that delegates most of decision makings to the system but the rest of decision makings strictly defined remain with the human operator, thus both the system and the human operator are responsible for the safety.
 - **Motion-autonomous** that delegates only the low-level motion plan to the system, while high-level mission and behavior plannings remain with the human operator, thus the human operator is responsible for the safety.
 
+Planningでは、様々なODDやユーザーのニーズを達成するために、いくつかのポリシーが定義されます。例えば、自動運転のレベルにおいて、Planningは以下のポリシーを提供します。
+
+- **Fully-autonomous** :すべての意思決定をシステムに委ね、システムが安全性を担保します。
+- **Semi-autonomous**:ほとんどの意思決定をシステムに委ねますが、一部の意思決定は人間のオペレーターに委ねられ、システムと人間のオペレーターの両方が安全性を担保します。
+- **Motion-autonomous**:低レベルの運動計画のみをシステムに委ね、高レベルのミッションと行動計画は人間のオペレーターが行い、人間のオペレーターが安全性を担保します。
+
 This policy can vary depending on the desired use cases and ODDs. It might be determined before driving begins, or it may switch dynamically during operation. The activated modules and their configuration change according to the policy to achieve the expected behaviors. Note that our goal is not necessarily to achieve only fully-autonomous. Depending on the expected ODD, sensor configuration, and sensor costs, we may also design the system on the premise of semi-autonomy. Our goal as an OSS platform is to design an architecture that allows for flexible changes to these policies. [Separation the mechanism and policy](https://en.wikipedia.org/wiki/Separation_of_mechanism_and_policy) allows us to modularize the planning components not only from the software point of view but also from the actual logic point of view.
 
+このポリシーは、求められるユースケースやODDにより変わります。これは走行前に決定されるかもしれませんし、走行中に動的に切り替わる可能性もあります。起動するモジュールやその設定はポリシーに従って変更され、期待される行動が実現されます。ここで注意すべきは、我々の目標が必ずしも Fully-autonomous だけであるわけではないということです。期待するODD、センサーの構成、センサーコストにより、Semi-autonomous を前提としたシステム設計を行うこともあります。OSSプラットフォームとしての我々の目標は、これらのポリシーを柔軟に変更できるアーキテクチャを設計することです。メカニズムとポリシーを分離することで、ソフトウェアの観点だけでなく、実際のロジックの観点からも計画コンポーネントをモジュラ化することが可能になります。
+
 **TODO:** How to handle the policy of the autonomous level has not yet been finalized and needs further discussion. While it is believed that these can be implemented in collaboration with the Human-Machine Interface, further investigation and discussion is needed.
 
 ## Component interface
@@ -138,8 +193,12 @@ This section describes the inputs and outputs of the Planning Component and of i
 
 As mentioned in the goal session, this planning module is designed to be extensible by third-party components. When incorporating third-party components, there are several approaches.
 
+ゴールのセッションで述べたように、このPlanningコンポーネントはサードパーティのコンポーネントによる拡張を可能にするように設計されています。サードパーティのコンポーネントを組み込む際にはいくつかの方法があります。
+
 As stated in the figure, you can completely replace the entire planning function, replace or add to the planning sub-components, or add new modules into the existing planning component. The latter part offers advantages as it allows for cooperation with the existing Planning functions, but it does require adherence to the detailed interfaces defined within the Planning Component. Conversely, while replacing the entire planning function enables you to utilize other components of Autoware, it does not allow for integration with the existing planning functions. For specific instructions on how to add new modules and expand its functionality, please refer to the forthcoming documentation or guidelines (WIP).
 
+図に示した通り、機能の追加には「Planning Componentを完全に置き換える」、「Planningのサブコンポーネントを置き換えるまたは追加する」、「既存のPlanningコンポーネントに新たなモジュールを追加する」方法があります。後者の方法ほど、既存のPlanning機能との連携が可能であるという利点がありますが、Planningコンポーネント内で定義されている詳細なインターフェースに従う必要があります。一方、Planning機能全体を置き換えることにより、大枠のinterfaceを揃えるだけでAutowareの他のコンポーネントを利用することができますが、既存のPlanning機能との統合はできません。新しいモジュールを追加し、その機能を拡張する具体的な指示については、近日公開予定のドキュメンテーションまたはガイドライン(作業中)をご参照ください。
+
 ![how-to-add-new-modules](image/how-to-add-new-modules.drawio.svg)
 
 ## Detailed design

From 05be7fa456a69e24290597bb874b30a833c177fa Mon Sep 17 00:00:00 2001
From: Takamasa Horibe <horibe.takamasa@gmail.com>
Date: Mon, 21 Aug 2023 16:32:12 +0900
Subject: [PATCH 12/19] tmp

Signed-off-by: Takamasa Horibe <horibe.takamasa@gmail.com>
---
 ...lanning-diagram-miyake-reviewed.drawio.svg | 643 ++++++++++++++++++
 .../autoware-architecture/planning/index.md   |  16 +-
 2 files changed, 658 insertions(+), 1 deletion(-)
 create mode 100644 docs/design/autoware-architecture/planning/image/high-level-planning-diagram-miyake-reviewed.drawio.svg

diff --git a/docs/design/autoware-architecture/planning/image/high-level-planning-diagram-miyake-reviewed.drawio.svg b/docs/design/autoware-architecture/planning/image/high-level-planning-diagram-miyake-reviewed.drawio.svg
new file mode 100644
index 00000000000..e8541faf07e
--- /dev/null
+++ b/docs/design/autoware-architecture/planning/image/high-level-planning-diagram-miyake-reviewed.drawio.svg
@@ -0,0 +1,643 @@
+<svg host="65bd71144e" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="1251px" height="836px" viewBox="-0.5 -0.5 1251 836" content="&lt;mxfile&gt;&lt;diagram id=&quot;8qt1-HtFgWOiWtJ-FPd8&quot; name=&quot;planning (v0.13.0)&quot;&gt;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&lt;/diagram&gt;&lt;/mxfile&gt;">
+    <defs/>
+    <g>
+        <rect x="990" y="102.05" width="260" height="190" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 258px; height: 1px; padding-top: 109px; margin-left: 991px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <br/>
+                                Legend
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1120" y="121" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Legend
+                </text>
+            </switch>
+        </g>
+        <path d="M 80 131.76 L 145.76 131.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 157.76 131.78 L 145.76 137.77 L 145.77 125.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="0" y="466" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 531px; margin-left: 1px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="text-align: left">
+                                    Localization
+                                </div>
+                                <div style="text-align: left">
+                                    Component
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="40" y="535" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Localization...
+                </text>
+            </switch>
+        </g>
+        <rect x="0" y="320" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 385px; margin-left: 1px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Perception
+                                <br/>
+                                Component
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="40" y="389" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Perception...
+                </text>
+            </switch>
+        </g>
+        <path d="M 94.56 215.11 L 160 214.86" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 82.56 215.15 L 94.53 209.11 L 94.58 221.11 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="0" y="175" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 240px; margin-left: 1px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Human
+                                <br/>
+                                Machine
+                                <br/>
+                                Interface
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="40" y="244" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Human...
+                </text>
+            </switch>
+        </g>
+        <rect x="160" y="0" width="770" height="50" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 768px; height: 1px; padding-top: 25px; margin-left: 161px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                API Layer
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="545" y="29" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    API Layer
+                </text>
+            </switch>
+        </g>
+        <path d="M 737.5 102.05 L 737.5 64.24" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 737.5 52.24 L 743.5 64.24 L 731.5 64.24 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="160" y="102.05" width="770" height="637.95" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <path d="M 545 210 Q 545 210 545 225.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 545 237.76 L 539 225.76 L 551 225.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="220" y="154" width="650" height="56" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 648px; height: 1px; padding-top: 182px; margin-left: 221px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <b>
+                                    Mission Planning
+                                </b>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="545" y="186" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Mission Planning
+                </text>
+            </switch>
+        </g>
+        <rect x="220" y="240" width="650" height="390" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 648px; height: 1px; padding-top: 247px; margin-left: 221px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <b>
+                                    <br/>
+                                    <br/>
+                                </b>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="545" y="259" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    ...
+                </text>
+            </switch>
+        </g>
+        <rect x="260" y="280" width="560" height="140" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 558px; height: 1px; padding-top: 287px; margin-left: 261px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <b>
+                                    Behavior
+                                </b>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="540" y="299" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Behavior
+                </text>
+            </switch>
+        </g>
+        <rect x="260" y="466" width="560" height="112.97" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 558px; height: 1px; padding-top: 473px; margin-left: 261px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <b>
+                                    Motion
+                                </b>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="540" y="485" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Motion
+                </text>
+            </switch>
+        </g>
+        <path d="M 545 716 L 545 769.81" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 545 781.81 L 539 769.81 L 551 769.81 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="220" y="660" width="650" height="56" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 648px; height: 1px; padding-top: 688px; margin-left: 221px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <b>
+                                    Validation
+                                </b>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="545" y="692" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Validation
+                </text>
+            </switch>
+        </g>
+        <rect x="160" y="784.05" width="770" height="50" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 768px; height: 1px; padding-top: 809px; margin-left: 161px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Control Component
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="545" y="813" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Control Component
+                </text>
+            </switch>
+        </g>
+        <rect x="180" y="115" width="140" height="30" fill="none" stroke="none" pointer-events="all" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="180" y="115" width="140" height="30" fill="none" stroke="none" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 130px; margin-left: 250px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: nowrap;">
+                                <b>
+                                    Planning Component
+                                </b>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="250" y="134" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Planning Component
+                </text>
+            </switch>
+        </g>
+        <path d="M 545 54 L 545 139.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 545 151.76 L 539 139.76 L 551 139.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="0" y="610" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 675px; margin-left: 1px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="">
+                                    System
+                                </div>
+                                <div style="">
+                                    Component
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="40" y="679" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    System...
+                </text>
+            </switch>
+        </g>
+        <path d="M 300 50 L 300 85.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 300 97.76 L 294 85.76 L 306 85.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="0" y="102.05" width="80" height="60" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 132px; margin-left: 1px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Map
+                                <br/>
+                                Component
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="40" y="136" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Map...
+                </text>
+            </switch>
+        </g>
+        <rect x="378" y="333.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 343px; margin-left: 379px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Lane Change
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="423" y="346" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Lane Change
+                </text>
+            </switch>
+        </g>
+        <rect x="493" y="333.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 343px; margin-left: 494px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Intersection
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="538" y="346" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Intersection
+                </text>
+            </switch>
+        </g>
+        <rect x="605" y="333.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 343px; margin-left: 606px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Crosswalk
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="650" y="346" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Crosswalk
+                </text>
+            </switch>
+        </g>
+        <rect x="605" y="363.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 373px; margin-left: 606px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="">
+                                    etc...
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="650" y="376" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    etc...
+                </text>
+            </switch>
+        </g>
+        <rect x="378" y="503.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 513px; margin-left: 379px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Path Smooth
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="423" y="516" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Path Smooth
+                </text>
+            </switch>
+        </g>
+        <rect x="493" y="503.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 513px; margin-left: 494px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Velocity Smooth
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="538" y="516" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Velocity Smooth
+                </text>
+            </switch>
+        </g>
+        <rect x="378" y="534.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 544px; margin-left: 379px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Collision Check
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="423" y="547" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Collision Check
+                </text>
+            </switch>
+        </g>
+        <rect x="605" y="534.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 544px; margin-left: 606px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="">
+                                    etc...
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="650" y="547" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    etc...
+                </text>
+            </switch>
+        </g>
+        <path d="M 80 266.76 L 145.76 266.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 157.76 266.78 L 145.76 272.77 L 145.77 260.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <path d="M 80 386.76 L 145.76 386.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 157.76 386.78 L 145.76 392.77 L 145.77 380.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <path d="M 80 531.76 L 145.76 531.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 157.76 531.78 L 145.76 537.77 L 145.77 525.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <path d="M 94.56 675.11 L 160 674.86" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 82.56 675.15 L 94.53 669.11 L 94.58 681.11 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="672" y="175" width="122" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 120px; height: 1px; padding-top: 184px; margin-left: 673px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Route Planning
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="733" y="188" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Route Planning
+                </text>
+            </switch>
+        </g>
+        <rect x="378" y="363.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 373px; margin-left: 379px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Avoidance
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="423" y="376" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Avoidance
+                </text>
+            </switch>
+        </g>
+        <rect x="493" y="363.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 373px; margin-left: 494px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Pull Over
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="538" y="376" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Pull Over
+                </text>
+            </switch>
+        </g>
+        <rect x="605" y="503.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 513px; margin-left: 606px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Drivable Area
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="650" y="516" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Drivable Area
+                </text>
+            </switch>
+        </g>
+        <rect x="493" y="534.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 544px; margin-left: 494px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Slow Down
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="538" y="547" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Slow Down
+                </text>
+            </switch>
+        </g>
+        <rect x="633" y="678.51" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 688px; margin-left: 634px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    TTC Check
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="678" y="691" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    TTC Check
+                </text>
+            </switch>
+        </g>
+        <rect x="743" y="678.51" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 688px; margin-left: 744px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    ACC Check
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="788" y="691" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    ACC Check
+                </text>
+            </switch>
+        </g>
+        <rect x="1030" y="153.1" width="180" height="27.95" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 178px; height: 1px; padding-top: 160px; margin-left: 1031px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Planning (Sub) Components
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1120" y="172" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Planning (Sub) Components
+                </text>
+            </switch>
+        </g>
+        <rect x="1030" y="197.1" width="180" height="27.95" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 178px; height: 1px; padding-top: 204px; margin-left: 1031px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Planning Modules
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1120" y="216" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Planning Modules
+                </text>
+            </switch>
+        </g>
+        <rect x="1030" y="243.05" width="180" height="27.95" fill="#f5f5f5" stroke="#000000" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 178px; height: 1px; padding-top: 250px; margin-left: 1031px;">
+                        <div data-drawio-colors="color: #000000; " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Other Components
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1120" y="262" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Other Components
+                </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%">
+                Text is not SVG - cannot display
+            </text>
+        </a>
+    </switch>
+</svg>
\ No newline at end of file
diff --git a/docs/design/autoware-architecture/planning/index.md b/docs/design/autoware-architecture/planning/index.md
index 638e22bc9ea..c9fd2fe00b1 100644
--- a/docs/design/autoware-architecture/planning/index.md
+++ b/docs/design/autoware-architecture/planning/index.md
@@ -1,5 +1,18 @@
 # Planning component design
 
+- discussionsはトレードオフ選定とかにしたい
+- サードパーティによって拡張というよりは、誰でも拡張できるって言い回しのほうが良いはず
+- mission plannerの使われ方を重点的に考えよう。FMSとして機能が外だしされることがあるから、これは別れてるのよ。
+- ハイレベルなデザインと詳細なデザインではなく、アーキテクチャのためのデザイン(要求ベース、これがやりたい)と、アーキテクチャ(詳細なフロー)ができるはず。
+- デザインの部分に、ポリシーによる変更がわかるような書き方があると良い。ポリシーA(右側走行)になったときに、いくつかのモジュールが特定の設定で起動する。どう図にするか。。。
+- このポリシーに対して、何がどうかわるかという例があるといい。自動運転レベルが変わったときに、HMIとの連携がこう変わって、軌道モジュールがこう変わる、とか。
+- ハイレベルに対するユースケースを上げる
+- 車両の振る舞いのユースケース
+  - 話ゴールやチェくポイント、NGポイントを与えてplanning内部でルートを計算して進む / 渋滞情報を加味したルートを外部から与えて走行する
+開発者のユースケース
+  - 中の作りの話(実装や設計レベル):機能の差し替えができていてほしいので(レーンチェンジAとレーンチェンジBとか)、柔軟に変更できる必要があり、各機能はモジュールとして実装される。
+
+
 ## Purpose of this document
 
 This document outlines the high-level design strategies, goals and related rationales in the development of the Planning Component. Through this document, it is expected that all OSS developers will comprehend the design philosophy, goals and constraints under which the Planning Component is designed, and participate seamlessly in the development.
@@ -69,6 +82,7 @@ WIP
 This diagram describes the high-level architecture of the Planning Component.
 
 ![overall-planning-architecture](image/high-level-planning-diagram.drawio.svg)
+![overall-planning-architecture](image/high-level-planning-diagram-miyake-reviewed.drawio.svg)
 
 The Planning component consists of the following sub-components:
 
@@ -94,7 +108,7 @@ Following the microautonomy architecture, we adopt a modular system framework wh
 
 ここでは microautonomy アーキテクチャに従い、モジュール型のシステムフレームワークを採用しています。planningの機能はモジュールとして実装され、これらのモジュールは与えられたユースケースに応じて動的にロードおよびアンロードされます。例えば、behavior planning のサブコンポーネントには、レーンチェンジ、交差点、横断歩道モジュールなどのモジュールが含まれています。
 
-### Discussions
+### Discussions -> わからん。trade-off選定とかにしよう。
 
 The following provides discussion points on trade-offs in the architecture. From this information, you can see the current design limitation, challenges, and potential improvement.
 

From 94ba23c84be392de6e4a0494cdfa735c755b1672 Mon Sep 17 00:00:00 2001
From: Takamasa Horibe <horibe.takamasa@gmail.com>
Date: Sun, 19 Nov 2023 16:11:56 +0900
Subject: [PATCH 13/19] Update

Signed-off-by: Takamasa Horibe <horibe.takamasa@gmail.com>
---
 ...lanning-diagram-miyake-reviewed.drawio.svg |  573 ++++---
 .../image/how-to-add-new-modules.drawio.svg   | 1370 +++++++++------
 .../image/planning-diagram.drawio-tmp.svg     | 1514 +++++++++++++++++
 .../planning/index-update.md                  |  330 ++++
 4 files changed, 3085 insertions(+), 702 deletions(-)
 create mode 100644 docs/design/autoware-architecture/planning/image/planning-diagram.drawio-tmp.svg
 create mode 100644 docs/design/autoware-architecture/planning/index-update.md

diff --git a/docs/design/autoware-architecture/planning/image/high-level-planning-diagram-miyake-reviewed.drawio.svg b/docs/design/autoware-architecture/planning/image/high-level-planning-diagram-miyake-reviewed.drawio.svg
index e8541faf07e..cbf19c12b49 100644
--- a/docs/design/autoware-architecture/planning/image/high-level-planning-diagram-miyake-reviewed.drawio.svg
+++ b/docs/design/autoware-architecture/planning/image/high-level-planning-diagram-miyake-reviewed.drawio.svg
@@ -1,4 +1,4 @@
-<svg host="65bd71144e" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="1251px" height="836px" viewBox="-0.5 -0.5 1251 836" content="&lt;mxfile&gt;&lt;diagram id=&quot;8qt1-HtFgWOiWtJ-FPd8&quot; name=&quot;planning (v0.13.0)&quot;&gt;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&lt;/diagram&gt;&lt;/mxfile&gt;">
+<svg host="65bd71144e" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="1251px" height="754px" viewBox="-0.5 -0.5 1251 754" content="&lt;mxfile&gt;&lt;diagram id=&quot;8qt1-HtFgWOiWtJ-FPd8&quot; name=&quot;planning (v0.13.0)&quot;&gt;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&lt;/diagram&gt;&lt;/mxfile&gt;">
     <defs/>
     <g>
         <rect x="990" y="102.05" width="260" height="190" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
@@ -19,15 +19,107 @@
                 </text>
             </switch>
         </g>
-        <path d="M 80 131.76 L 145.76 131.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 157.76 131.78 L 145.76 137.77 L 145.77 125.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="0" y="466" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <rect x="160" y="0" width="770" height="50" fill="#000000" stroke="#000000" pointer-events="all" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="160" y="0" width="770" height="50" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 768px; height: 1px; padding-top: 25px; margin-left: 161px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                API Layer
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="545" y="29" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    API Layer
+                </text>
+            </switch>
+        </g>
+        <path d="M 737.5 102.05 L 737.5 64.24" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 737.5 52.24 L 743.5 64.24 L 731.5 64.24 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="160" y="700" width="770" height="50" fill="#000000" stroke="#000000" pointer-events="all" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="160" y="700" width="770" height="50" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 768px; height: 1px; padding-top: 725px; margin-left: 161px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Control Component
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="545" y="729" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Control Component
+                </text>
+            </switch>
+        </g>
+        <path d="M 300 50 L 300 85.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 300 97.76 L 294 85.76 L 306 85.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="1030" y="153.1" width="180" height="27.95" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 178px; height: 1px; padding-top: 160px; margin-left: 1031px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Planning (Sub) Components
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1120" y="172" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Planning (Sub) Components
+                </text>
+            </switch>
+        </g>
+        <rect x="1030" y="197.1" width="180" height="27.95" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 531px; margin-left: 1px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 178px; height: 1px; padding-top: 204px; margin-left: 1031px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Planning Modules
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1120" y="216" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Planning Modules
+                </text>
+            </switch>
+        </g>
+        <rect x="1030" y="243.05" width="180" height="27.95" fill="#f5f5f5" stroke="#000000" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 178px; height: 1px; padding-top: 250px; margin-left: 1031px;">
+                        <div data-drawio-colors="color: #000000; " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Other Components
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1120" y="262" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Other Components
+                </text>
+            </switch>
+        </g>
+        <path d="M 80 128.5 L 145.76 128.51" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 157.76 128.51 L 145.76 134.51 L 145.77 122.51 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <rect x="0" y="426.07" width="80" height="115.74" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="0" y="426.07" width="80" height="115.74" fill="#eeeeee" stroke="#36393d" pointer-events="none"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 484px; margin-left: 1px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="text-align: left">
                                     Localization
                                 </div>
@@ -38,18 +130,19 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="40" y="535" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="40" y="488" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     Localization...
                 </text>
             </switch>
         </g>
-        <rect x="0" y="320" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <rect x="0" y="296.09" width="80" height="115.74" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="0" y="296.09" width="80" height="115.74" fill="#eeeeee" stroke="#36393d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 385px; margin-left: 1px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 354px; margin-left: 1px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 Perception
                                 <br/>
                                 Component
@@ -57,20 +150,21 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="40" y="389" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="40" y="358" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     Perception...
                 </text>
             </switch>
         </g>
-        <path d="M 94.56 215.11 L 160 214.86" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 82.56 215.15 L 94.53 209.11 L 94.58 221.11 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="0" y="175" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <path d="M 94.56 202.7 L 160 202.48" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 82.56 202.74 L 94.54 196.7 L 94.58 208.7 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <rect x="0" y="167" width="80" height="115.74" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="0" y="167" width="80" height="115.74" fill="#eeeeee" stroke="#36393d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 240px; margin-left: 1px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 225px; margin-left: 1px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 Human
                                 <br/>
                                 Machine
@@ -80,40 +174,21 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="40" y="244" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="40" y="228" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     Human...
                 </text>
             </switch>
         </g>
-        <rect x="160" y="0" width="770" height="50" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <rect x="160" y="102.05" width="770" height="567.95" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="160" y="102.05" width="770" height="567.95" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="none"/>
+        <rect x="220" y="148.3" width="650" height="63.75" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="220" y="148.3" width="650" height="63.75" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 768px; height: 1px; padding-top: 25px; margin-left: 161px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 648px; height: 1px; padding-top: 155px; margin-left: 221px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
-                                API Layer
-                            </div>
-                        </div>
-                    </div>
-                </foreignObject>
-                <text x="545" y="29" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    API Layer
-                </text>
-            </switch>
-        </g>
-        <path d="M 737.5 102.05 L 737.5 64.24" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 737.5 52.24 L 743.5 64.24 L 731.5 64.24 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="160" y="102.05" width="770" height="637.95" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
-        <path d="M 545 210 Q 545 210 545 225.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 545 237.76 L 539 225.76 L 551 225.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="220" y="154" width="650" height="56" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
-        <g transform="translate(-0.5 -0.5)">
-            <switch>
-                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 648px; height: 1px; padding-top: 182px; margin-left: 221px;">
-                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <b>
                                     Mission Planning
                                 </b>
@@ -121,18 +196,19 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="545" y="186" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="545" y="167" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     Mission Planning
                 </text>
             </switch>
         </g>
-        <rect x="220" y="240" width="650" height="390" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <rect x="220" y="250" width="650" height="275.98" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="220" y="250" width="650" height="275.98" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 648px; height: 1px; padding-top: 247px; margin-left: 221px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 648px; height: 1px; padding-top: 257px; margin-left: 221px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <b>
                                     <br/>
                                     <br/>
@@ -141,18 +217,20 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="545" y="259" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="545" y="269" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     ...
                 </text>
             </switch>
         </g>
-        <rect x="260" y="280" width="560" height="140" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <path d="M 545 212.05 Q 545 212.05 545 235.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 545 247.76 L 539 235.76 L 551 235.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <rect x="260" y="271.37" width="560" height="106.83" fill="rgb(255, 255, 255)" stroke="#999999" stroke-dasharray="3 3" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 558px; height: 1px; padding-top: 287px; margin-left: 261px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 558px; height: 1px; padding-top: 278px; margin-left: 261px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <b>
                                     Behavior
                                 </b>
@@ -160,18 +238,18 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="540" y="299" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="540" y="290" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     Behavior
                 </text>
             </switch>
         </g>
-        <rect x="260" y="466" width="560" height="112.97" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <rect x="260" y="401.35" width="560" height="100.57" fill="rgb(255, 255, 255)" stroke="#999999" stroke-dasharray="3 3" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 558px; height: 1px; padding-top: 473px; margin-left: 261px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 558px; height: 1px; padding-top: 408px; margin-left: 261px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <b>
                                     Motion
                                 </b>
@@ -179,20 +257,19 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="540" y="485" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="540" y="420" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     Motion
                 </text>
             </switch>
         </g>
-        <path d="M 545 716 L 545 769.81" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 545 781.81 L 539 769.81 L 551 769.81 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="220" y="660" width="650" height="56" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <rect x="220" y="570" width="650" height="67.66" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="220" y="570" width="650" height="67.66" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 648px; height: 1px; padding-top: 688px; margin-left: 221px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 648px; height: 1px; padding-top: 577px; margin-left: 221px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <b>
                                     Validation
                                 </b>
@@ -200,36 +277,18 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="545" y="692" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="545" y="589" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     Validation
                 </text>
             </switch>
         </g>
-        <rect x="160" y="784.05" width="770" height="50" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
-        <g transform="translate(-0.5 -0.5)">
-            <switch>
-                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 768px; height: 1px; padding-top: 809px; margin-left: 161px;">
-                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
-                                Control Component
-                            </div>
-                        </div>
-                    </div>
-                </foreignObject>
-                <text x="545" y="813" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    Control Component
-                </text>
-            </switch>
-        </g>
-        <rect x="180" y="115" width="140" height="30" fill="none" stroke="none" pointer-events="all" transform="translate(2,3)" opacity="0.25"/>
-        <rect x="180" y="115" width="140" height="30" fill="none" stroke="none" pointer-events="all"/>
+        <rect x="180" y="113.58" width="140" height="30" fill="none" stroke="none" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 130px; margin-left: 250px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 129px; margin-left: 250px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: nowrap;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: nowrap;">
                                 <b>
                                     Planning Component
                                 </b>
@@ -237,20 +296,19 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="250" y="134" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="250" y="132" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     Planning Component
                 </text>
             </switch>
         </g>
-        <path d="M 545 54 L 545 139.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 545 151.76 L 539 139.76 L 551 139.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="0" y="610" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <rect x="0" y="554.26" width="80" height="115.74" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="0" y="554.26" width="80" height="115.74" fill="#eeeeee" stroke="#36393d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 675px; margin-left: 1px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 612px; margin-left: 1px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="">
                                     System
                                 </div>
@@ -261,20 +319,19 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="40" y="679" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="40" y="616" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     System...
                 </text>
             </switch>
         </g>
-        <path d="M 300 50 L 300 85.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 300 97.76 L 294 85.76 L 306 85.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="0" y="102.05" width="80" height="60" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <rect x="0" y="102.05" width="80" height="53.42" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="0" y="102.05" width="80" height="53.42" fill="#eeeeee" stroke="#36393d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 132px; margin-left: 1px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 129px; margin-left: 1px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 Map
                                 <br/>
                                 Component
@@ -282,18 +339,19 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="40" y="136" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="40" y="132" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     Map...
                 </text>
             </switch>
         </g>
-        <rect x="378" y="333.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="300" y="310.56" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="300" y="310.56" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 343px; margin-left: 379px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 320px; margin-left: 301px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
                                     Lane Change
                                 </div>
@@ -301,18 +359,19 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="423" y="346" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="350" y="323" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     Lane Change
                 </text>
             </switch>
         </g>
-        <rect x="493" y="333.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="429" y="310.56" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="429" y="310.56" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 343px; margin-left: 494px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 320px; margin-left: 430px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
                                     Intersection
                                 </div>
@@ -320,18 +379,19 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="538" y="346" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="479" y="323" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     Intersection
                 </text>
             </switch>
         </g>
-        <rect x="605" y="333.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="558" y="310.56" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="558" y="310.56" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 343px; margin-left: 606px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 320px; margin-left: 559px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
                                     Crosswalk
                                 </div>
@@ -339,18 +399,19 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="650" y="346" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="608" y="323" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     Crosswalk
                 </text>
             </switch>
         </g>
-        <rect x="605" y="363.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="687" y="340.83" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="687" y="340.83" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 373px; margin-left: 606px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 350px; margin-left: 688px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="">
                                     etc...
                                 </div>
@@ -358,102 +419,107 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="650" y="376" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="737" y="354" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     etc...
                 </text>
             </switch>
         </g>
-        <rect x="378" y="503.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="300" y="434.31" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="300" y="434.31" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 513px; margin-left: 379px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 444px; margin-left: 301px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
-                                    Path Smooth
+                                    Path Planning
                                 </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="423" y="516" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
-                    Path Smooth
+                <text x="350" y="447" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Path Planning
                 </text>
             </switch>
         </g>
-        <rect x="493" y="503.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="429" y="434.31" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="429" y="434.31" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 513px; margin-left: 494px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 444px; margin-left: 430px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
-                                    Velocity Smooth
+                                    Velocity Planning
                                 </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="538" y="516" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
-                    Velocity Smooth
+                <text x="479" y="447" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Velocity Planning
                 </text>
             </switch>
         </g>
-        <rect x="378" y="534.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="300" y="465.47" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="300" y="465.47" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 544px; margin-left: 379px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 475px; margin-left: 301px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
-                                    Collision Check
+                                    Obstacle Stop
                                 </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="423" y="547" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
-                    Collision Check
+                <text x="350" y="478" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Obstacle Stop
                 </text>
             </switch>
         </g>
-        <rect x="605" y="534.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="558" y="465.47" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="558" y="465.47" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 544px; margin-left: 606px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 475px; margin-left: 559px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="">
-                                    etc...
+                                    ML Planner
                                 </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="650" y="547" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    etc...
+                <text x="608" y="479" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    ML Planner
                 </text>
             </switch>
         </g>
-        <path d="M 80 266.76 L 145.76 266.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 157.76 266.78 L 145.76 272.77 L 145.77 260.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <path d="M 80 386.76 L 145.76 386.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 157.76 386.78 L 145.76 392.77 L 145.77 380.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <path d="M 80 531.76 L 145.76 531.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 157.76 531.78 L 145.76 537.77 L 145.77 525.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <path d="M 94.56 675.11 L 160 674.86" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 82.56 675.15 L 94.53 669.11 L 94.58 681.11 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="672" y="175" width="122" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <path d="M 80 248.69 L 145.76 248.7" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 157.76 248.7 L 145.76 254.7 L 145.77 242.7 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 80 355.52 L 145.76 355.53" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 157.76 355.53 L 145.76 361.53 L 145.77 349.53 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 80 484.61 L 145.76 484.62" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 157.76 484.62 L 145.76 490.62 L 145.77 478.62 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 94.56 612.23 L 160 612.01" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 82.56 612.27 L 94.54 606.23 L 94.58 618.23 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <rect x="300" y="180.05" width="125" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="300" y="180.05" width="125" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 120px; height: 1px; padding-top: 184px; margin-left: 673px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 123px; height: 1px; padding-top: 190px; margin-left: 301px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
                                     Route Planning
                                 </div>
@@ -461,18 +527,19 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="733" y="188" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="363" y="193" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     Route Planning
                 </text>
             </switch>
         </g>
-        <rect x="378" y="363.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="300" y="340.83" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="300" y="340.83" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 373px; margin-left: 379px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 350px; margin-left: 301px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
                                     Avoidance
                                 </div>
@@ -480,18 +547,19 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="423" y="376" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="350" y="354" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     Avoidance
                 </text>
             </switch>
         </g>
-        <rect x="493" y="363.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="429" y="340.83" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="429" y="340.83" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 373px; margin-left: 494px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 350px; margin-left: 430px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
                                     Pull Over
                                 </div>
@@ -499,18 +567,19 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="538" y="376" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="479" y="354" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     Pull Over
                 </text>
             </switch>
         </g>
-        <rect x="605" y="503.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="558" y="434.31" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="558" y="434.31" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 513px; margin-left: 606px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 444px; margin-left: 559px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
                                     Drivable Area
                                 </div>
@@ -518,18 +587,19 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="650" y="516" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="608" y="447" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     Drivable Area
                 </text>
             </switch>
         </g>
-        <rect x="493" y="534.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="429" y="465.47" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="429" y="465.47" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 544px; margin-left: 494px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 475px; margin-left: 430px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
                                     Slow Down
                                 </div>
@@ -537,100 +607,217 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="538" y="547" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="479" y="478" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     Slow Down
                 </text>
             </switch>
         </g>
-        <rect x="633" y="678.51" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="687" y="310.56" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="687" y="310.56" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 688px; margin-left: 634px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 320px; margin-left: 688px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
-                                    TTC Check
+                                    Stop Line
                                 </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="678" y="691" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
-                    TTC Check
+                <text x="737" y="323" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Stop Line
                 </text>
             </switch>
         </g>
-        <rect x="743" y="678.51" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="558" y="340.83" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="558" y="340.83" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 688px; margin-left: 744px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 350px; margin-left: 559px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
-                                    ACC Check
+                                    Parking
                                 </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="788" y="691" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
-                    ACC Check
+                <text x="608" y="354" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Parking
                 </text>
             </switch>
         </g>
-        <rect x="1030" y="153.1" width="180" height="27.95" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <rect x="687" y="434.31" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="687" y="434.31" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 178px; height: 1px; padding-top: 160px; margin-left: 1031px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 444px; margin-left: 688px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
-                                Planning (Sub) Components
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Freespace
+                                </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="1120" y="172" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    Planning (Sub) Components
+                <text x="737" y="447" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Freespace
                 </text>
             </switch>
         </g>
-        <rect x="1030" y="197.1" width="180" height="27.95" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="687" y="465.47" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="687" y="465.47" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 178px; height: 1px; padding-top: 204px; margin-left: 1031px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 475px; margin-left: 688px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
-                                Planning Modules
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                <div style="">
+                                    etc...
+                                </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="1120" y="216" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    Planning Modules
+                <text x="737" y="479" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    etc...
                 </text>
             </switch>
         </g>
-        <rect x="1030" y="243.05" width="180" height="27.95" fill="#f5f5f5" stroke="#000000" pointer-events="all"/>
+        <path d="M 545 525.98 L 545 555.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 545 567.77 L 539 555.77 L 551 555.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <rect x="484" y="180.05" width="125" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="484" y="180.05" width="125" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 178px; height: 1px; padding-top: 250px; margin-left: 1031px;">
-                        <div data-drawio-colors="color: #000000; " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
-                                Other Components
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 123px; height: 1px; padding-top: 190px; margin-left: 485px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Goal Planning
+                                </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="1120" y="262" fill="#000000" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    Other Components
+                <text x="547" y="193" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Goal Planning
+                </text>
+            </switch>
+        </g>
+        <rect x="662" y="180.05" width="125" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="662" y="180.05" width="125" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 123px; height: 1px; padding-top: 190px; margin-left: 663px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    etc...
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="725" y="193" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    etc...
+                </text>
+            </switch>
+        </g>
+        <rect x="300" y="604.29" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="300" y="604.29" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 614px; margin-left: 301px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Collision Check
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="350" y="617" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Collision Check
+                </text>
+            </switch>
+        </g>
+        <rect x="429" y="604.29" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="429" y="604.29" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 614px; margin-left: 430px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    TTC Check
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="479" y="617" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    TTC Check
+                </text>
+            </switch>
+        </g>
+        <rect x="687" y="604.29" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="687" y="604.29" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 614px; margin-left: 688px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    etc...
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="737" y="617" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    etc...
+                </text>
+            </switch>
+        </g>
+        <rect x="558" y="604.29" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="558" y="604.29" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 614px; margin-left: 559px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Confortability
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="608" y="617" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Confortability
                 </text>
             </switch>
         </g>
+        <path d="M 545 637.67 L 545 685.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 545 697.76 L 539 685.76 L 551 685.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 545 54 L 545 134.06" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 545 146.06 L 539 134.06 L 551 134.06 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
     </g>
     <switch>
         <g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/>
diff --git a/docs/design/autoware-architecture/planning/image/how-to-add-new-modules.drawio.svg b/docs/design/autoware-architecture/planning/image/how-to-add-new-modules.drawio.svg
index ca3f9ab856c..255e7a3cef1 100644
--- a/docs/design/autoware-architecture/planning/image/how-to-add-new-modules.drawio.svg
+++ b/docs/design/autoware-architecture/planning/image/how-to-add-new-modules.drawio.svg
@@ -1,15 +1,110 @@
-<svg host="65bd71144e" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="3362px" height="950px" viewBox="-0.5 -0.5 3362 950" content="&lt;mxfile&gt;&lt;diagram id=&quot;8qt1-HtFgWOiWtJ-FPd8&quot; name=&quot;planning (v0.13.0)&quot;&gt;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&lt;/diagram&gt;&lt;/mxfile&gt;">
+<svg host="65bd71144e" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="3304px" height="871px" viewBox="-0.5 -0.5 3304 871" content="&lt;mxfile&gt;&lt;diagram id=&quot;8qt1-HtFgWOiWtJ-FPd8&quot; name=&quot;planning (v0.13.0)&quot;&gt;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&lt;/diagram&gt;&lt;/mxfile&gt;">
     <defs/>
     <g>
-        <path d="M 80 246.76 L 145.76 246.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 157.76 246.78 L 145.76 252.77 L 145.77 240.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="0" y="581" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <rect x="2550" y="13" width="700" height="30" fill="none" stroke="none" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 646px; margin-left: 1px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 698px; height: 1px; padding-top: 28px; margin-left: 2551px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 25px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Replace the entier planning component
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="2900" y="36" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="25px" text-anchor="middle">
+                    Replace the entier planning component
+                </text>
+            </switch>
+        </g>
+        <rect x="1430" y="15" width="700" height="30" fill="none" stroke="none" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 698px; height: 1px; padding-top: 30px; margin-left: 1431px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 25px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Replace the planning sub-component,
+                                <br/>
+                                or add a new scenario component
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1780" y="38" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="25px" text-anchor="middle">
+                    Replace the planning sub-component,...
+                </text>
+            </switch>
+        </g>
+        <rect x="170" y="15" width="700" height="30" fill="none" stroke="none" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 698px; height: 1px; padding-top: 30px; margin-left: 171px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 25px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Add or replace with new planning modules
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="520" y="38" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="25px" text-anchor="middle">
+                    Add or replace with new planning modules
+                </text>
+            </switch>
+        </g>
+        <rect x="2530" y="113" width="770" height="50" fill="#000000" stroke="#000000" pointer-events="all" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="2530" y="113" width="770" height="50" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 768px; height: 1px; padding-top: 138px; margin-left: 2531px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                API Layer
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="2915" y="142" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    API Layer
+                </text>
+            </switch>
+        </g>
+        <path d="M 3107.5 215.05 L 3107.5 177.24" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 3107.5 165.24 L 3113.5 177.24 L 3101.5 177.24 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="2530" y="813" width="770" height="50" fill="#000000" stroke="#000000" pointer-events="all" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="2530" y="813" width="770" height="50" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 768px; height: 1px; padding-top: 838px; margin-left: 2531px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Control Component
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="2915" y="842" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Control Component
+                </text>
+            </switch>
+        </g>
+        <path d="M 2670 163 L 2670 198.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 2670 210.76 L 2664 198.76 L 2676 198.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="2370" y="215.05" width="930" height="637.95" fill="none" stroke="none" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <path d="M 2450 241.5 L 2515.76 241.51" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 2527.76 241.51 L 2515.76 247.51 L 2515.77 235.51 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <rect x="2370" y="539.07" width="80" height="115.74" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="2370" y="539.07" width="80" height="115.74" fill="#eeeeee" stroke="#36393d" pointer-events="none"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 597px; margin-left: 2371px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="text-align: left">
                                     Localization
                                 </div>
@@ -20,18 +115,19 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="40" y="650" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="2410" y="601" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     Localization...
                 </text>
             </switch>
         </g>
-        <rect x="0" y="435" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <rect x="2370" y="409.09" width="80" height="115.74" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="2370" y="409.09" width="80" height="115.74" fill="#eeeeee" stroke="#36393d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 500px; margin-left: 1px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 467px; margin-left: 2371px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 Perception
                                 <br/>
                                 Component
@@ -39,20 +135,21 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="40" y="504" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="2410" y="471" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     Perception...
                 </text>
             </switch>
         </g>
-        <path d="M 94.56 330.11 L 160 329.86" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 82.56 330.15 L 94.53 324.11 L 94.58 336.11 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="0" y="290" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <path d="M 2464.56 315.7 L 2530 315.48" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 2452.56 315.74 L 2464.54 309.7 L 2464.58 321.7 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <rect x="2370" y="280" width="80" height="115.74" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="2370" y="280" width="80" height="115.74" fill="#eeeeee" stroke="#36393d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 355px; margin-left: 1px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 338px; margin-left: 2371px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 Human
                                 <br/>
                                 Machine
@@ -62,130 +159,158 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="40" y="359" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="2410" y="341" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     Human...
                 </text>
             </switch>
         </g>
-        <rect x="160" y="115" width="770" height="50" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <rect x="2530" y="215.05" width="770" height="567.95" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="2530" y="215.05" width="770" height="567.95" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="none"/>
+        <rect x="2550" y="226.58" width="140" height="30" fill="none" stroke="none" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 768px; height: 1px; padding-top: 140px; margin-left: 161px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 242px; margin-left: 2620px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
-                                API Layer
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: nowrap;">
+                                <b>
+                                    Planning Component
+                                </b>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="545" y="144" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    API Layer
+                <text x="2620" y="245" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Planning Component
                 </text>
             </switch>
         </g>
-        <path d="M 737.5 217.05 L 737.5 179.24" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 737.5 167.24 L 743.5 179.24 L 731.5 179.24 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="160" y="217.05" width="770" height="637.95" fill="#ffe6cc" stroke="#d79b00" pointer-events="all"/>
+        <rect x="2370" y="667.26" width="80" height="115.74" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="2370" y="667.26" width="80" height="115.74" fill="#eeeeee" stroke="#36393d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 768px; height: 1px; padding-top: 536px; margin-left: 161px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 725px; margin-left: 2371px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 15px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
-                                <b style="font-size: 15px;">
-                                    Third-party Planning Component
-                                </b>
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                <div style="">
+                                    System
+                                </div>
+                                <div style="">
+                                    Component
+                                </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="545" y="541" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="15px" text-anchor="middle">
-                    Third-party Planning Component
+                <text x="2410" y="729" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    System...
                 </text>
             </switch>
         </g>
-        <path d="M 545 855 L 545 884.81" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 545 896.81 L 539 884.81 L 551 884.81 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="160" y="899.05" width="770" height="50" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <rect x="2370" y="215.05" width="80" height="53.42" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="2370" y="215.05" width="80" height="53.42" fill="#eeeeee" stroke="#36393d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 768px; height: 1px; padding-top: 924px; margin-left: 161px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 242px; margin-left: 2371px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
-                                Control Component
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                Map
+                                <br/>
+                                Component
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="545" y="928" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    Control Component
+                <text x="2410" y="245" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Map...
                 </text>
             </switch>
         </g>
-        <path d="M 545 169 L 545 200.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 545 212.76 L 539 200.76 L 551 200.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="0" y="725" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <path d="M 2450 361.69 L 2515.76 361.7" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 2527.76 361.7 L 2515.76 367.7 L 2515.77 355.7 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 2450 468.52 L 2515.76 468.53" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 2527.76 468.53 L 2515.76 474.53 L 2515.77 462.53 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 2450 597.61 L 2515.76 597.62" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 2527.76 597.62 L 2515.76 603.62 L 2515.77 591.62 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 2464.56 725.23 L 2530 725.01" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 2452.56 725.27 L 2464.54 719.23 L 2464.58 731.23 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <rect x="2530" y="215.05" width="770" height="570" fill="#ffe6cc" stroke="#d79b00" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 790px; margin-left: 1px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 768px; height: 1px; padding-top: 500px; margin-left: 2531px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
-                                <div style="">
-                                    System
-                                </div>
-                                <div style="">
-                                    Component
-                                </div>
+                            <div style="display: inline-block; font-size: 15px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                <b style="">
+                                    <font style="font-size: 20px;">
+                                        Third-party Planning Component
+                                    </font>
+                                </b>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="40" y="794" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    System...
+                <text x="2915" y="505" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="15px" text-anchor="middle">
+                    Third-party Planning Component
                 </text>
             </switch>
         </g>
-        <path d="M 300 165 L 300 200.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 300 212.76 L 294 200.76 L 306 200.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="0" y="217.05" width="80" height="60" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <path d="M 2915 750.67 L 2915 798.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 2915 810.76 L 2909 798.76 L 2921 798.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 2915 167 L 2915 247.06" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 2915 259.06 L 2909 247.06 L 2921 247.06 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <rect x="1410" y="115" width="770" height="50" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="1410" y="115" width="770" height="50" fill="#eeeeee" stroke="#36393d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 247px; margin-left: 1px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 768px; height: 1px; padding-top: 140px; margin-left: 1411px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
-                                Map
-                                <br/>
-                                Component
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                API Layer
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="40" y="251" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    Map...
+                <text x="1795" y="144" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    API Layer
                 </text>
             </switch>
         </g>
-        <path d="M 80 381.76 L 145.76 381.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 157.76 381.78 L 145.76 387.77 L 145.77 375.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <path d="M 80 501.76 L 145.76 501.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 157.76 501.78 L 145.76 507.77 L 145.77 495.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <path d="M 80 646.76 L 145.76 646.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 157.76 646.78 L 145.76 652.77 L 145.77 640.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <path d="M 94.56 790.11 L 160 789.86" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 82.56 790.15 L 94.53 784.11 L 94.58 796.11 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <path d="M 1290 246.76 L 1355.76 246.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 1367.76 246.78 L 1355.76 252.77 L 1355.77 240.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="1210" y="581" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <path d="M 1987.5 217.05 L 1987.5 179.24" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 1987.5 167.24 L 1993.5 179.24 L 1981.5 179.24 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <rect x="1410" y="815" width="770" height="50" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="1410" y="815" width="770" height="50" fill="#eeeeee" stroke="#36393d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 646px; margin-left: 1211px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 768px; height: 1px; padding-top: 840px; margin-left: 1411px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                Control Component
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1795" y="844" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Control Component
+                </text>
+            </switch>
+        </g>
+        <path d="M 1550 165 L 1550 200.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 1550 212.76 L 1544 200.76 L 1556 200.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 1330 243.5 L 1395.76 243.51" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 1407.76 243.51 L 1395.76 249.51 L 1395.77 237.51 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <rect x="1250" y="541.07" width="80" height="115.74" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="1250" y="541.07" width="80" height="115.74" fill="#eeeeee" stroke="#36393d" pointer-events="none"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 599px; margin-left: 1251px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="text-align: left">
                                     Localization
                                 </div>
@@ -196,18 +321,19 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="1250" y="650" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="1290" y="603" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     Localization...
                 </text>
             </switch>
         </g>
-        <rect x="1210" y="435" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <rect x="1250" y="411.09" width="80" height="115.74" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="1250" y="411.09" width="80" height="115.74" fill="#eeeeee" stroke="#36393d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 500px; margin-left: 1211px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 469px; margin-left: 1251px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 Perception
                                 <br/>
                                 Component
@@ -215,20 +341,21 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="1250" y="504" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="1290" y="473" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     Perception...
                 </text>
             </switch>
         </g>
-        <path d="M 1304.56 330.11 L 1370 329.86" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 1292.56 330.15 L 1304.53 324.11 L 1304.58 336.11 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="1210" y="290" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <path d="M 1344.56 317.7 L 1410 317.48" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 1332.56 317.74 L 1344.54 311.7 L 1344.58 323.7 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <rect x="1250" y="282" width="80" height="115.74" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="1250" y="282" width="80" height="115.74" fill="#eeeeee" stroke="#36393d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 355px; margin-left: 1211px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 340px; margin-left: 1251px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 Human
                                 <br/>
                                 Machine
@@ -238,368 +365,372 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="1250" y="359" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="1290" y="343" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     Human...
                 </text>
             </switch>
         </g>
-        <rect x="1370" y="115" width="770" height="50" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <rect x="1410" y="217.05" width="770" height="567.95" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="1410" y="217.05" width="770" height="567.95" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="none"/>
+        <rect x="1470" y="365" width="650" height="275.98" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="1470" y="365" width="650" height="275.98" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 768px; height: 1px; padding-top: 140px; margin-left: 1371px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 648px; height: 1px; padding-top: 372px; margin-left: 1471px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
-                                API Layer
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                <b>
+                                    <br/>
+                                    <br/>
+                                </b>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="1755" y="144" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    API Layer
+                <text x="1795" y="384" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    ...
                 </text>
             </switch>
         </g>
-        <path d="M 1947.5 217.05 L 1947.5 179.24" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 1947.5 167.24 L 1953.5 179.24 L 1941.5 179.24 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="1370" y="217.05" width="770" height="637.95" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
-        <path d="M 1755 325 Q 1755 325 1755 340.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 1755 352.76 L 1749 340.76 L 1761 340.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="1430" y="269" width="650" height="56" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <path d="M 1795 327.05 Q 1795 327.05 1795 350.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 1795 362.76 L 1789 350.76 L 1801 350.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <rect x="1510" y="386.37" width="560" height="106.83" fill="rgb(255, 255, 255)" stroke="#999999" stroke-dasharray="3 3" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 648px; height: 1px; padding-top: 297px; margin-left: 1431px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 558px; height: 1px; padding-top: 393px; margin-left: 1511px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <b>
-                                    Mission Planning
+                                    Behavior
                                 </b>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="1755" y="301" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    Mission Planning
+                <text x="1790" y="405" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Behavior
                 </text>
             </switch>
         </g>
-        <rect x="1430" y="355" width="650" height="390" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <rect x="1510" y="516.35" width="560" height="100.57" fill="rgb(255, 255, 255)" stroke="#999999" stroke-dasharray="3 3" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 648px; height: 1px; padding-top: 362px; margin-left: 1431px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 558px; height: 1px; padding-top: 523px; margin-left: 1511px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <b>
-                                    <br/>
-                                    Scenario Planning
+                                    Motion
                                 </b>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="1755" y="374" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    Scenario Planning
+                <text x="1790" y="535" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Motion
                 </text>
             </switch>
         </g>
-        <rect x="1465" y="415" width="395" height="290" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <rect x="1470" y="685" width="650" height="67.66" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="1470" y="685" width="650" height="67.66" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 393px; height: 1px; padding-top: 422px; margin-left: 1466px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 648px; height: 1px; padding-top: 692px; margin-left: 1471px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <b>
-                                    <br/>
-                                    Lane Driving Scenario
+                                    Validation
                                 </b>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="1663" y="434" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    Lane Driving Scenario
+                <text x="1795" y="704" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Validation
                 </text>
             </switch>
         </g>
-        <path d="M 1977.5 705 L 1977.5 725 L 1818 725 L 1755 725 L 1755 760.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 1755 772.76 L 1749 760.76 L 1761 760.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="1910" y="415" width="135" height="290" fill="#ffe6cc" stroke="#d79b00" pointer-events="all"/>
+        <rect x="1430" y="228.58" width="140" height="30" fill="none" stroke="none" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 133px; height: 1px; padding-top: 560px; margin-left: 1911px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 244px; margin-left: 1500px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
-                                <b style="border-color: var(--border-color);">
-                                    Third-party Planning Component
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: nowrap;">
+                                <b>
+                                    Planning Component
                                 </b>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="1978" y="564" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    Third-party Planning C...
+                <text x="1500" y="247" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Planning Component
                 </text>
             </switch>
         </g>
-        <path d="M 1662.5 560 Q 1662.5 560 1662.5 576.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 1662.5 588.76 L 1656.5 576.76 L 1668.5 576.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="1485" y="465" width="355" height="95" fill="#ffe6cc" stroke="#d79b00" pointer-events="all"/>
+        <rect x="1250" y="669.26" width="80" height="115.74" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="1250" y="669.26" width="80" height="115.74" fill="#eeeeee" stroke="#36393d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 353px; height: 1px; padding-top: 513px; margin-left: 1486px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 727px; margin-left: 1251px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
-                                <b style="border-color: var(--border-color);">
-                                    Third-party Planning Component
-                                </b>
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                <div style="">
+                                    System
+                                </div>
+                                <div style="">
+                                    Component
+                                </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="1663" y="516" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    Third-party Planning Component
+                <text x="1290" y="731" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    System...
                 </text>
             </switch>
         </g>
-        <path d="M 1662.5 686 L 1662.5 725 L 1755 725 L 1755 760.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 1755 772.76 L 1749 760.76 L 1761 760.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="1485" y="591" width="355" height="95" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <rect x="1250" y="217.05" width="80" height="53.42" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="1250" y="217.05" width="80" height="53.42" fill="#eeeeee" stroke="#36393d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 353px; height: 1px; padding-top: 598px; margin-left: 1486px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 244px; margin-left: 1251px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
-                                <b>
-                                    Motion Planning
-                                </b>
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                Map
+                                <br/>
+                                Component
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="1663" y="610" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    Motion Planning
+                <text x="1290" y="247" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Map...
                 </text>
             </switch>
         </g>
-        <path d="M 1755 831 L 1755 884.81" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 1755 896.81 L 1749 884.81 L 1761 884.81 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="1430" y="775" width="650" height="56" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <rect x="1550" y="425.56" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="1550" y="425.56" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 648px; height: 1px; padding-top: 803px; margin-left: 1431px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 435px; margin-left: 1551px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
-                                <b>
-                                    Validation
-                                </b>
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Lane Change
+                                </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="1755" y="807" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    Validation
+                <text x="1600" y="438" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Lane Change
                 </text>
             </switch>
         </g>
-        <rect x="1370" y="899.05" width="770" height="50" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <rect x="1679" y="425.56" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="1679" y="425.56" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 768px; height: 1px; padding-top: 924px; margin-left: 1371px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 435px; margin-left: 1680px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
-                                Control Component
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Intersection
+                                </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="1755" y="928" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    Control Component
+                <text x="1729" y="438" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Intersection
                 </text>
             </switch>
         </g>
-        <rect x="1390" y="230" width="140" height="30" fill="none" stroke="none" pointer-events="all" transform="translate(2,3)" opacity="0.25"/>
-        <rect x="1390" y="230" width="140" height="30" fill="none" stroke="none" pointer-events="all"/>
+        <rect x="1808" y="425.56" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="1808" y="425.56" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 245px; margin-left: 1460px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 435px; margin-left: 1809px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: nowrap;">
-                                <b>
-                                    Planning Component
-                                </b>
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Crosswalk
+                                </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="1460" y="249" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    Planning Component
+                <text x="1858" y="438" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Crosswalk
                 </text>
             </switch>
         </g>
-        <path d="M 1755 169 L 1755 254.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 1755 266.76 L 1749 254.76 L 1761 254.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="1210" y="725" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <rect x="1937" y="455.83" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="1937" y="455.83" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 790px; margin-left: 1211px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 465px; margin-left: 1938px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="">
-                                    System
-                                </div>
-                                <div style="">
-                                    Component
+                                    etc...
                                 </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="1250" y="794" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    System...
+                <text x="1987" y="469" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    etc...
                 </text>
             </switch>
         </g>
-        <path d="M 1510 165 L 1510 200.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 1510 212.76 L 1504 200.76 L 1516 200.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="1210" y="217.05" width="80" height="60" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <rect x="1550" y="549.31" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="1550" y="549.31" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 247px; margin-left: 1211px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 559px; margin-left: 1551px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
-                                Map
-                                <br/>
-                                Component
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Path Planning
+                                </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="1250" y="251" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    Map...
+                <text x="1600" y="562" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Path Planning
                 </text>
             </switch>
         </g>
-        <rect x="1503" y="628.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="1679" y="549.31" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="1679" y="549.31" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 638px; margin-left: 1504px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 559px; margin-left: 1680px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
-                                    Path Smooth
+                                    Velocity Planning
                                 </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="1547" y="641" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
-                    Path Smooth
+                <text x="1729" y="562" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Velocity Planning
                 </text>
             </switch>
         </g>
-        <rect x="1618" y="628.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="1550" y="580.47" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="1550" y="580.47" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 638px; margin-left: 1619px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 590px; margin-left: 1551px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
-                                    Velocity Smooth
+                                    Obstacle Stop
                                 </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="1662" y="641" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
-                    Velocity Smooth
+                <text x="1600" y="593" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Obstacle Stop
                 </text>
             </switch>
         </g>
-        <rect x="1503" y="659.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="1808" y="580.47" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="1808" y="580.47" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 669px; margin-left: 1504px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 590px; margin-left: 1809px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
-                                <div style="font-size: 11px;">
-                                    Collision Check
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                <div style="">
+                                    ML Planner
                                 </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="1547" y="672" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
-                    Collision Check
+                <text x="1858" y="594" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    ML Planner
                 </text>
             </switch>
         </g>
-        <rect x="1730" y="659.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <path d="M 1330 363.69 L 1395.76 363.7" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 1407.76 363.7 L 1395.76 369.7 L 1395.77 357.7 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 1330 470.52 L 1395.76 470.53" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 1407.76 470.53 L 1395.76 476.53 L 1395.77 464.53 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 1330 599.61 L 1395.76 599.62" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 1407.76 599.62 L 1395.76 605.62 L 1395.77 593.62 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 1344.56 727.23 L 1410 727.01" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 1332.56 727.27 L 1344.54 721.23 L 1344.58 733.23 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <rect x="1550" y="455.83" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="1550" y="455.83" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 669px; margin-left: 1731px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 465px; margin-left: 1551px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
-                                <div style="">
-                                    etc...
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Avoidance
                                 </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="1775" y="672" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    etc...
+                <text x="1600" y="469" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Avoidance
                 </text>
             </switch>
         </g>
-        <path d="M 1290 381.76 L 1355.76 381.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 1367.76 381.78 L 1355.76 387.77 L 1355.77 375.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <path d="M 1290 501.76 L 1355.76 501.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 1367.76 501.78 L 1355.76 507.77 L 1355.77 495.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <path d="M 1290 646.76 L 1355.76 646.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 1367.76 646.78 L 1355.76 652.77 L 1355.77 640.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <path d="M 1304.56 790.11 L 1370 789.86" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 1292.56 790.15 L 1304.53 784.11 L 1304.58 796.11 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="1882" y="290" width="122" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="1679" y="455.83" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="1679" y="455.83" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 120px; height: 1px; padding-top: 299px; margin-left: 1883px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 465px; margin-left: 1680px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
-                                    Route Planning
+                                    Pull Over
                                 </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="1943" y="303" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
-                    Route Planning
+                <text x="1729" y="469" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Pull Over
                 </text>
             </switch>
         </g>
-        <rect x="1730" y="628.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="1808" y="549.31" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="1808" y="549.31" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 638px; margin-left: 1731px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 559px; margin-left: 1809px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
                                     Drivable Area
                                 </div>
@@ -607,18 +738,19 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="1775" y="641" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="1858" y="562" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     Drivable Area
                 </text>
             </switch>
         </g>
-        <rect x="1618" y="659.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="1679" y="580.47" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="1679" y="580.47" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 669px; margin-left: 1619px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 590px; margin-left: 1680px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
                                     Slow Down
                                 </div>
@@ -626,306 +758,419 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="1662" y="672" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="1729" y="593" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     Slow Down
                 </text>
             </switch>
         </g>
-        <rect x="1843" y="793.51" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="1937" y="425.56" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="1937" y="425.56" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 803px; margin-left: 1844px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 435px; margin-left: 1938px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
-                                    TTC Check
+                                    Stop Line
                                 </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="1887" y="806" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
-                    TTC Check
+                <text x="1987" y="438" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Stop Line
                 </text>
             </switch>
         </g>
-        <rect x="1953" y="793.51" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="1808" y="455.83" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="1808" y="455.83" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 803px; margin-left: 1954px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 465px; margin-left: 1809px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
-                                    ACC Check
+                                    Parking
                                 </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="1997" y="806" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
-                    ACC Check
+                <text x="1858" y="469" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Parking
                 </text>
             </switch>
         </g>
-        <path d="M 2510 246.76 L 2575.76 246.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 2587.76 246.78 L 2575.76 252.77 L 2575.77 240.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="2430" y="581" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <rect x="1937" y="549.31" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="1937" y="549.31" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 646px; margin-left: 2431px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 559px; margin-left: 1938px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
-                                <div style="text-align: left">
-                                    Localization
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Freespace
                                 </div>
-                                <div style="text-align: left">
-                                    Component
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1987" y="562" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Freespace
+                </text>
+            </switch>
+        </g>
+        <rect x="1937" y="580.47" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="1937" y="580.47" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 590px; margin-left: 1938px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                <div style="">
+                                    etc...
                                 </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="2470" y="650" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    Localization...
+                <text x="1987" y="594" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    etc...
                 </text>
             </switch>
         </g>
-        <rect x="2430" y="435" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <path d="M 1795 640.98 L 1795 670.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 1795 682.77 L 1789 670.77 L 1801 670.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <rect x="1550" y="719.29" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="1550" y="719.29" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 500px; margin-left: 2431px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 729px; margin-left: 1551px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
-                                Perception
-                                <br/>
-                                Component
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Collision Check
+                                </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="2470" y="504" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    Perception...
+                <text x="1600" y="732" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Collision Check
                 </text>
             </switch>
         </g>
-        <path d="M 2524.56 330.11 L 2590 329.86" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 2512.56 330.15 L 2524.53 324.11 L 2524.58 336.11 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="2430" y="290" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <rect x="1679" y="719.29" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="1679" y="719.29" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 355px; margin-left: 2431px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 729px; margin-left: 1680px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
-                                Human
-                                <br/>
-                                Machine
-                                <br/>
-                                Interface
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    TTC Check
+                                </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="2470" y="359" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    Human...
+                <text x="1729" y="732" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    TTC Check
                 </text>
             </switch>
         </g>
-        <rect x="2590" y="115" width="770" height="50" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <rect x="1937" y="719.29" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="1937" y="719.29" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 768px; height: 1px; padding-top: 140px; margin-left: 2591px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 729px; margin-left: 1938px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    etc...
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1987" y="732" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    etc...
+                </text>
+            </switch>
+        </g>
+        <rect x="1808" y="719.29" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="1808" y="719.29" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 729px; margin-left: 1809px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Confortability
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1858" y="732" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Confortability
+                </text>
+            </switch>
+        </g>
+        <rect x="1470" y="258.58" width="650" height="68.47" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="1470" y="258.58" width="650" height="68.47" fill="#ffe6cc" stroke="#d79b00" pointer-events="none"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 648px; height: 1px; padding-top: 293px; margin-left: 1471px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 15px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                <b style="">
+                                    <font style="font-size: 20px;">
+                                        Third-party Planning Component
+                                    </font>
+                                </b>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1795" y="297" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="15px" text-anchor="middle">
+                    Third-party Planning Component
+                </text>
+            </switch>
+        </g>
+        <path d="M 1795 752.67 L 1795 800.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 1795 812.76 L 1789 800.76 L 1801 800.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 1795 169 L 1795 249.06" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 1795 261.06 L 1789 249.06 L 1801 249.06 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <rect x="960" y="475" width="160" height="129" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="none"/>
+        <rect x="160" y="115" width="770" height="50" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="160" y="115" width="770" height="50" fill="#eeeeee" stroke="#36393d" pointer-events="none"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 768px; height: 1px; padding-top: 140px; margin-left: 161px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 API Layer
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="2975" y="144" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="545" y="144" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     API Layer
                 </text>
             </switch>
         </g>
-        <path d="M 3167.5 217.05 L 3167.5 179.24" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 3167.5 167.24 L 3173.5 179.24 L 3161.5 179.24 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="2590" y="217.05" width="770" height="637.95" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
-        <path d="M 2975 325 Q 2975 325 2975 340.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 2975 352.76 L 2969 340.76 L 2981 340.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="2650" y="269" width="650" height="56" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <path d="M 737.5 217.05 L 737.5 179.24" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 737.5 167.24 L 743.5 179.24 L 731.5 179.24 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <rect x="160" y="815" width="770" height="50" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="160" y="815" width="770" height="50" fill="#eeeeee" stroke="#36393d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 648px; height: 1px; padding-top: 297px; margin-left: 2651px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 768px; height: 1px; padding-top: 840px; margin-left: 161px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
-                                <b>
-                                    Mission Planning
-                                </b>
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                Control Component
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="2975" y="301" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    Mission Planning
+                <text x="545" y="844" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Control Component
                 </text>
             </switch>
         </g>
-        <rect x="2650" y="355" width="650" height="390" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <path d="M 300 165 L 300 200.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 300 212.76 L 294 200.76 L 306 200.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 80 243.5 L 145.76 243.51" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 157.76 243.51 L 145.76 249.51 L 145.77 237.51 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <rect x="0" y="541.07" width="80" height="115.74" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="0" y="541.07" width="80" height="115.74" fill="#eeeeee" stroke="#36393d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 648px; height: 1px; padding-top: 362px; margin-left: 2651px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 599px; margin-left: 1px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
-                                <b>
-                                    <br/>
-                                    Scenario Planning
-                                </b>
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                <div style="text-align: left">
+                                    Localization
+                                </div>
+                                <div style="text-align: left">
+                                    Component
+                                </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="2975" y="374" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    Scenario Planning
+                <text x="40" y="603" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Localization...
                 </text>
             </switch>
         </g>
-        <rect x="2685" y="415" width="395" height="290" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <rect x="0" y="411.09" width="80" height="115.74" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="0" y="411.09" width="80" height="115.74" fill="#eeeeee" stroke="#36393d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 393px; height: 1px; padding-top: 422px; margin-left: 2686px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 469px; margin-left: 1px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
-                                <b>
-                                    <br/>
-                                    Lane Driving Scenario
-                                </b>
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                Perception
+                                <br/>
+                                Component
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="2883" y="434" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    Lane Driving Scenario
+                <text x="40" y="473" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Perception...
                 </text>
             </switch>
         </g>
-        <path d="M 3197.5 705 L 3197.5 725 L 3038 725 L 2975 725 L 2975 760.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 2975 772.76 L 2969 760.76 L 2981 760.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="3130" y="415" width="135" height="290" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <path d="M 94.56 317.7 L 160 317.48" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 82.56 317.74 L 94.54 311.7 L 94.58 323.7 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <rect x="0" y="282" width="80" height="115.74" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="0" y="282" width="80" height="115.74" fill="#eeeeee" stroke="#36393d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 133px; height: 1px; padding-top: 422px; margin-left: 3131px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 340px; margin-left: 1px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                Human
+                                <br/>
+                                Machine
+                                <br/>
+                                Interface
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="40" y="343" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Human...
+                </text>
+            </switch>
+        </g>
+        <rect x="160" y="217.05" width="770" height="567.95" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="160" y="217.05" width="770" height="567.95" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="none"/>
+        <rect x="220" y="263.3" width="650" height="63.75" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="220" y="263.3" width="650" height="63.75" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="none"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 648px; height: 1px; padding-top: 270px; margin-left: 221px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <b>
-                                    <br/>
-                                    Parking Scenario
+                                    Mission Planning
                                 </b>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="3198" y="434" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    Parking Scenario
+                <text x="545" y="282" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Mission Planning
                 </text>
             </switch>
         </g>
-        <path d="M 2882.5 560 Q 2882.5 560 2882.5 576.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 2882.5 588.76 L 2876.5 576.76 L 2888.5 576.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="2705" y="465" width="355" height="95" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <rect x="220" y="365" width="650" height="275.98" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="220" y="365" width="650" height="275.98" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 353px; height: 1px; padding-top: 472px; margin-left: 2706px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 648px; height: 1px; padding-top: 372px; margin-left: 221px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <b>
-                                    Behavior Planning
+                                    <br/>
+                                    <br/>
                                 </b>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="2883" y="484" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    Behavior Planning
+                <text x="545" y="384" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    ...
                 </text>
             </switch>
         </g>
-        <path d="M 2882.5 686 L 2882.5 725 L 2975 725 L 2975 760.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 2975 772.76 L 2969 760.76 L 2981 760.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="2705" y="591" width="355" height="95" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <path d="M 545 327.05 Q 545 327.05 545 350.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 545 362.76 L 539 350.76 L 551 350.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <rect x="260" y="386.37" width="560" height="106.83" fill="rgb(255, 255, 255)" stroke="#999999" stroke-dasharray="3 3" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 353px; height: 1px; padding-top: 598px; margin-left: 2706px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 558px; height: 1px; padding-top: 393px; margin-left: 261px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <b>
-                                    Motion Planning
+                                    Behavior
                                 </b>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="2883" y="610" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    Motion Planning
+                <text x="540" y="405" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Behavior
                 </text>
             </switch>
         </g>
-        <path d="M 2975 831 L 2975 884.81" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 2975 896.81 L 2969 884.81 L 2981 884.81 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="2650" y="775" width="650" height="56" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <rect x="260" y="516.35" width="560" height="100.57" fill="rgb(255, 255, 255)" stroke="#999999" stroke-dasharray="3 3" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 648px; height: 1px; padding-top: 803px; margin-left: 2651px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 558px; height: 1px; padding-top: 523px; margin-left: 261px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <b>
-                                    Validation
+                                    Motion
                                 </b>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="2975" y="807" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    Validation
+                <text x="540" y="535" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Motion
                 </text>
             </switch>
         </g>
-        <rect x="2590" y="899.05" width="770" height="50" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <rect x="220" y="685" width="650" height="67.66" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="220" y="685" width="650" height="67.66" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 768px; height: 1px; padding-top: 924px; margin-left: 2591px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe flex-start; justify-content: unsafe center; width: 648px; height: 1px; padding-top: 692px; margin-left: 221px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
-                                Control Component
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                <b>
+                                    Validation
+                                </b>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="2975" y="928" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    Control Component
+                <text x="545" y="704" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Validation
                 </text>
             </switch>
         </g>
-        <rect x="2610" y="230" width="140" height="30" fill="none" stroke="none" pointer-events="all" transform="translate(2,3)" opacity="0.25"/>
-        <rect x="2610" y="230" width="140" height="30" fill="none" stroke="none" pointer-events="all"/>
+        <rect x="180" y="228.58" width="140" height="30" fill="none" stroke="none" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 245px; margin-left: 2680px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 244px; margin-left: 250px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: nowrap;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: nowrap;">
                                 <b>
                                     Planning Component
                                 </b>
@@ -933,20 +1178,19 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="2680" y="249" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="250" y="247" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     Planning Component
                 </text>
             </switch>
         </g>
-        <path d="M 2975 169 L 2975 254.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 2975 266.76 L 2969 254.76 L 2981 254.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="2430" y="725" width="80" height="130" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <rect x="0" y="669.26" width="80" height="115.74" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="0" y="669.26" width="80" height="115.74" fill="#eeeeee" stroke="#36393d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 790px; margin-left: 2431px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 727px; margin-left: 1px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="">
                                     System
                                 </div>
@@ -957,20 +1201,19 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="2470" y="794" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="40" y="731" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     System...
                 </text>
             </switch>
         </g>
-        <path d="M 2730 165 L 2730 200.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 2730 212.76 L 2724 200.76 L 2736 200.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="2430" y="217.05" width="80" height="60" fill="#eeeeee" stroke="#36393d" pointer-events="all"/>
+        <rect x="0" y="217.05" width="80" height="53.42" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="0" y="217.05" width="80" height="53.42" fill="#eeeeee" stroke="#36393d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 247px; margin-left: 2431px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 244px; margin-left: 1px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 Map
                                 <br/>
                                 Component
@@ -978,18 +1221,19 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="2470" y="251" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="40" y="247" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     Map...
                 </text>
             </switch>
         </g>
-        <rect x="2723" y="498.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="300" y="425.56" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="300" y="425.56" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 508px; margin-left: 2724px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 435px; margin-left: 301px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
                                     Lane Change
                                 </div>
@@ -997,18 +1241,19 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="2768" y="511" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="350" y="438" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     Lane Change
                 </text>
             </switch>
         </g>
-        <rect x="2838" y="498.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="429" y="425.56" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="429" y="425.56" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 508px; margin-left: 2839px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 435px; margin-left: 430px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
                                     Intersection
                                 </div>
@@ -1016,18 +1261,19 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="2883" y="511" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="479" y="438" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     Intersection
                 </text>
             </switch>
         </g>
-        <rect x="2950" y="498.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="558" y="425.56" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="558" y="425.56" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 508px; margin-left: 2951px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 435px; margin-left: 559px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
                                     Crosswalk
                                 </div>
@@ -1035,20 +1281,81 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="2995" y="511" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="608" y="438" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     Crosswalk
                 </text>
             </switch>
         </g>
-        <rect x="2950" y="528.03" width="89" height="18.97" fill="#ffe6cc" stroke="#d79b00" pointer-events="all"/>
+        <rect x="300" y="549.31" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="300" y="549.31" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 538px; margin-left: 2951px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 559px; margin-left: 301px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Path Planning
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="350" y="562" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Path Planning
+                </text>
+            </switch>
+        </g>
+        <rect x="429" y="549.31" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="429" y="549.31" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 559px; margin-left: 430px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Velocity Planning
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="479" y="562" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Velocity Planning
+                </text>
+            </switch>
+        </g>
+        <rect x="300" y="580.47" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="300" y="580.47" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 590px; margin-left: 301px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Obstacle Stop
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="350" y="593" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Obstacle Stop
+                </text>
+            </switch>
+        </g>
+        <rect x="558" y="580.47" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="558" y="580.47" width="100" height="19" fill="#ffe6cc" stroke="#d79b00" pointer-events="none"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 590px; margin-left: 559px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; font-weight: bold; white-space: normal; overflow-wrap: normal;">
                                 <div style="">
-                                    <span style="border-color: var(--border-color);">
+                                    <span style="font-size: 11px;">
                                         Third-party Module
                                     </span>
                                     <br/>
@@ -1057,256 +1364,267 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="2995" y="541" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    Third-party Mod...
+                <text x="608" y="594" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle" font-weight="bold">
+                    Third-party Modu...
                 </text>
             </switch>
         </g>
-        <rect x="2723" y="628.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <path d="M 80 363.69 L 145.76 363.7" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 157.76 363.7 L 145.76 369.7 L 145.77 357.7 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 80 470.52 L 145.76 470.53" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 157.76 470.53 L 145.76 476.53 L 145.77 464.53 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 80 599.61 L 145.76 599.62" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 157.76 599.62 L 145.76 605.62 L 145.77 593.62 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 94.56 727.23 L 160 727.01" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 82.56 727.27 L 94.54 721.23 L 94.58 733.23 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <rect x="300" y="295.05" width="125" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="300" y="295.05" width="125" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 638px; margin-left: 2724px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 123px; height: 1px; padding-top: 305px; margin-left: 301px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
-                                    Path Smooth
+                                    Route Planning
                                 </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="2768" y="641" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
-                    Path Smooth
+                <text x="363" y="308" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Route Planning
                 </text>
             </switch>
         </g>
-        <rect x="2838" y="628.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="300" y="455.83" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="300" y="455.83" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 638px; margin-left: 2839px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 465px; margin-left: 301px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
-                                    Velocity Smooth
+                                    Avoidance
                                 </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="2883" y="641" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
-                    Velocity Smooth
+                <text x="350" y="469" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Avoidance
                 </text>
             </switch>
         </g>
-        <rect x="2723" y="659.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="429" y="455.83" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="429" y="455.83" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 669px; margin-left: 2724px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 465px; margin-left: 430px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
-                                    Collision Check
+                                    Pull Over
                                 </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="2768" y="672" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
-                    Collision Check
+                <text x="479" y="469" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Pull Over
                 </text>
             </switch>
         </g>
-        <rect x="2950" y="659.03" width="89" height="18.97" fill="#ffe6cc" stroke="#d79b00" pointer-events="all"/>
+        <rect x="558" y="549.31" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="558" y="549.31" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 669px; margin-left: 2951px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 559px; margin-left: 559px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
-                                <div style="">
-                                    Third-party Module
-                                    <br/>
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    Drivable Area
                                 </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="2995" y="672" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    Third-party Mod...
+                <text x="608" y="562" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Drivable Area
                 </text>
             </switch>
         </g>
-        <rect x="3152" y="508.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="429" y="580.47" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="429" y="580.47" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 518px; margin-left: 3153px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 590px; margin-left: 430px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
-                                    Free Space
+                                    Slow Down
                                 </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="3197" y="521" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
-                    Free Space
+                <text x="479" y="593" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Slow Down
                 </text>
             </switch>
         </g>
-        <rect x="3152" y="539.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="687" y="425.56" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="687" y="425.56" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 549px; margin-left: 3153px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 435px; margin-left: 688px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
-                                    Cost map
+                                    Stop Line
                                 </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="3197" y="552" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
-                    Cost map
+                <text x="737" y="438" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Stop Line
                 </text>
             </switch>
         </g>
-        <rect x="3152" y="572.03" width="89" height="18.97" fill="#ffe6cc" stroke="#d79b00" pointer-events="all"/>
+        <rect x="558" y="455.83" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="558" y="455.83" width="100" height="19" fill="#ffe6cc" stroke="#d79b00" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 582px; margin-left: 3153px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 465px; margin-left: 559px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
-                                <div style="">
-                                    Third-party Module
-                                    <br/>
-                                </div>
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; font-weight: bold; white-space: normal; overflow-wrap: normal;">
+                                Third-party Module
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="3197" y="585" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
-                    Third-party Mod...
+                <text x="608" y="469" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle" font-weight="bold">
+                    Third-party Module
                 </text>
             </switch>
         </g>
-        <path d="M 2510 381.76 L 2575.76 381.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 2587.76 381.78 L 2575.76 387.77 L 2575.77 375.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <path d="M 2510 501.76 L 2575.76 501.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 2587.76 501.78 L 2575.76 507.77 L 2575.77 495.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <path d="M 2510 646.76 L 2575.76 646.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 2587.76 646.78 L 2575.76 652.77 L 2575.77 640.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <path d="M 2524.56 790.11 L 2590 789.86" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 2512.56 790.15 L 2524.53 784.11 L 2524.58 796.11 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <rect x="3102" y="290" width="122" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="687" y="549.31" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="687" y="549.31" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 120px; height: 1px; padding-top: 299px; margin-left: 3103px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 559px; margin-left: 688px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
-                                    Route Planning
+                                    Freespace
                                 </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="3163" y="303" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
-                    Route Planning
+                <text x="737" y="562" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Freespace
                 </text>
             </switch>
         </g>
-        <rect x="2723" y="528.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="687" y="580.47" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="687" y="580.47" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 538px; margin-left: 2724px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 590px; margin-left: 688px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
-                                <div style="font-size: 11px;">
-                                    Avoidance
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                <div style="">
+                                    etc...
                                 </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="2768" y="541" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
-                    Avoidance
+                <text x="737" y="594" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    etc...
                 </text>
             </switch>
         </g>
-        <rect x="2838" y="528.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <path d="M 545 640.98 L 545 670.77" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 545 682.77 L 539 670.77 L 551 670.77 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <rect x="484" y="295.05" width="125" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="484" y="295.05" width="125" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 538px; margin-left: 2839px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 123px; height: 1px; padding-top: 305px; margin-left: 485px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
-                                    Pull Over
+                                    Goal Planning
                                 </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="2883" y="541" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
-                    Pull Over
+                <text x="547" y="308" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Goal Planning
                 </text>
             </switch>
         </g>
-        <rect x="2950" y="628.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="662" y="295.05" width="125" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="662" y="295.05" width="125" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 638px; margin-left: 2951px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 123px; height: 1px; padding-top: 305px; margin-left: 663px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
-                                    Drivable Area
+                                    etc...
                                 </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="2995" y="641" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
-                    Drivable Area
+                <text x="725" y="308" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    etc...
                 </text>
             </switch>
         </g>
-        <rect x="2838" y="659.03" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="300" y="719.29" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="300" y="719.29" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 669px; margin-left: 2839px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 729px; margin-left: 301px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
-                                    Slow Down
+                                    Collision Check
                                 </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="2883" y="672" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
-                    Slow Down
+                <text x="350" y="732" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Collision Check
                 </text>
             </switch>
         </g>
-        <rect x="3063" y="793.51" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="429" y="719.29" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="429" y="719.29" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 803px; margin-left: 3064px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 729px; margin-left: 430px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
                                     TTC Check
                                 </div>
@@ -1314,80 +1632,114 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="3108" y="806" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="479" y="732" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     TTC Check
                 </text>
             </switch>
         </g>
-        <rect x="3173" y="793.51" width="89" height="18.97" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <rect x="687" y="719.29" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="687" y="719.29" width="100" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 729px; margin-left: 688px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    etc...
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="737" y="732" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    etc...
+                </text>
+            </switch>
+        </g>
+        <rect x="558" y="719.29" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="558" y="719.29" width="100" height="19" fill="#ffe6cc" stroke="#d79b00" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 87px; height: 1px; padding-top: 803px; margin-left: 3174px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 729px; margin-left: 559px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; font-weight: bold; white-space: normal; overflow-wrap: normal;">
                                 <div style="font-size: 11px;">
-                                    ACC Check
+                                    Third-party Module
+                                    <br/>
                                 </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="3218" y="806" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
-                    ACC Check
+                <text x="608" y="732" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle" font-weight="bold">
+                    Third-party Module
                 </text>
             </switch>
         </g>
-        <rect x="210" y="15" width="700" height="30" fill="none" stroke="none" pointer-events="all"/>
+        <path d="M 932 441.07 L 970 468.57 L 932 496.07 L 932 483.57 C 851.92 483.57 787 509.31 787 541.07 C 787 492.75 851.92 453.57 932 453.57 Z" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" stroke-miterlimit="10" transform="translate(878.5,0)scale(-1,1)translate(-878.5,0)" pointer-events="none"/>
+        <path d="M 545 752.67 L 545 800.76" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 545 812.76 L 539 800.76 L 551 800.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 545 169 L 545 249.06" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 545 261.06 L 539 249.06 L 551 249.06 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <rect x="990" y="500.78" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="990" y="500.78" width="100" height="19" fill="#ffe6cc" stroke="#d79b00" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 698px; height: 1px; padding-top: 30px; margin-left: 211px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 510px; margin-left: 991px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 25px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
-                                Replace the entier planning component
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; font-weight: bold; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    My Module 1
+                                </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="560" y="38" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="25px" text-anchor="middle">
-                    Replace the entier planning component
+                <text x="1040" y="514" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle" font-weight="bold">
+                    My Module 1
                 </text>
             </switch>
         </g>
-        <rect x="1410" y="15" width="700" height="30" fill="none" stroke="none" pointer-events="all"/>
+        <rect x="990" y="529.22" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="990" y="529.22" width="100" height="19" fill="#ffe6cc" stroke="#d79b00" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 698px; height: 1px; padding-top: 30px; margin-left: 1411px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 539px; margin-left: 991px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 25px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
-                                Replace the planning sub-component,
-                                <br/>
-                                or add a new scenario component
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; font-weight: bold; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    My Module 2
+                                </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="1760" y="38" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="25px" text-anchor="middle">
-                    Replace the planning sub-component,...
+                <text x="1040" y="542" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle" font-weight="bold">
+                    My Module 2
                 </text>
             </switch>
         </g>
-        <rect x="2630" y="15" width="700" height="30" fill="none" stroke="none" pointer-events="all"/>
+        <rect x="990" y="559.22" width="100" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
+        <rect x="990" y="559.22" width="100" height="19" fill="#ffe6cc" stroke="#d79b00" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 698px; height: 1px; padding-top: 30px; margin-left: 2631px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 98px; height: 1px; padding-top: 569px; margin-left: 991px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
-                            <div style="display: inline-block; font-size: 25px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
-                                Add a new planning module
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: none; font-weight: bold; white-space: normal; overflow-wrap: normal;">
+                                <div style="font-size: 11px;">
+                                    My Module 3
+                                </div>
                             </div>
                         </div>
                     </div>
                 </foreignObject>
-                <text x="2980" y="38" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="25px" text-anchor="middle">
-                    Add a new planning module
+                <text x="1040" y="572" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle" font-weight="bold">
+                    My Module 3
                 </text>
             </switch>
         </g>
diff --git a/docs/design/autoware-architecture/planning/image/planning-diagram.drawio-tmp.svg b/docs/design/autoware-architecture/planning/image/planning-diagram.drawio-tmp.svg
new file mode 100644
index 00000000000..8ffebd0ffb6
--- /dev/null
+++ b/docs/design/autoware-architecture/planning/image/planning-diagram.drawio-tmp.svg
@@ -0,0 +1,1514 @@
+<svg host="65bd71144e" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="1521px" height="2091px" viewBox="-0.5 -0.5 1521 2091" content="&lt;mxfile&gt;&lt;diagram id=&quot;8qt1-HtFgWOiWtJ-FPd8&quot; name=&quot;planning (v0.13.0)&quot;&gt;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&lt;/diagram&gt;&lt;/mxfile&gt;">
+    <defs/>
+    <g>
+        <rect x="470" y="140" width="850" height="1880" fill="#fffdf5" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <rect x="510" y="190" width="760" height="90" fill="#fffceb" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <rect x="510" y="1920" width="760" height="80" fill="#fffceb" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <rect x="510" y="330" width="390" height="1270" fill="#fffceb" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <rect x="550" y="400" width="300" height="710" fill="none" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <rect x="552.5" y="1170" width="297.5" height="400" fill="none" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <rect x="950" y="330" width="320" height="1270" fill="#fffceb" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <rect x="970.75" y="346" width="90" height="30" fill="none" stroke="none" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 88px; height: 1px; padding-top: 361px; margin-left: 972px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; overflow-wrap: normal;">
+                                Parking Scenario
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1016" y="365" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle" font-weight="bold">
+                    Parking Scenario
+                </text>
+            </switch>
+        </g>
+        <path d="M 895 260 L 895 310 L 700 310 L 700 438.03" fill="none" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 700 445.53 L 695 435.53 L 700 438.03 L 705 435.53 Z" fill="#d4b455" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
+        <path d="M 895 260 L 895 310 L 980 310 L 980 593.57 L 1028.03 593.51" fill="none" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 1035.53 593.51 L 1025.53 598.52 L 1028.03 593.51 L 1025.52 588.52 Z" fill="#d4b455" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 280px; margin-left: 895px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                route
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="895" y="283" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    route
+                </text>
+            </switch>
+        </g>
+        <a xlink:href="https://github.com/autowarefoundation/autoware.universe/tree/main/planning/mission_planner">
+            <rect x="615" y="210" width="560" height="50" rx="7.5" ry="7.5" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+            <g transform="translate(-0.5 -0.5)">
+                <switch>
+                    <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                        <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 558px; height: 1px; padding-top: 235px; margin-left: 616px;">
+                            <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                                <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                    mission_planner
+                                </div>
+                            </div>
+                        </div>
+                    </foreignObject>
+                    <text x="895" y="239" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                        mission_planner
+                    </text>
+                </switch>
+            </g>
+        </a>
+        <path d="M 700 660 L 700 708.03" fill="none" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 700 715.53 L 695 705.53 L 700 708.03 L 705 705.53 Z" fill="#d4b455" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 690px; margin-left: 700px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                path_with_lane_id
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="700" y="693" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    path_with_lane_id
+                </text>
+            </switch>
+        </g>
+        <a xlink:href="https://github.com/autowarefoundation/autoware.universe/tree/main/planning/behavior_path_planner">
+            <rect x="590" y="450" width="220" height="210" rx="10.5" ry="10.5" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        </a>
+        <path d="M 700 1090 L 700 1208.03" fill="none" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 700 1215.53 L 695 1205.53 L 700 1208.03 L 705 1205.53 Z" fill="#d4b455" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1150px; margin-left: 700px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                path
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="700" y="1153" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    path
+                </text>
+            </switch>
+        </g>
+        <a xlink:href="https://github.com/autowarefoundation/autoware.universe/tree/main/planning/behavior_velocity_planner">
+            <rect x="590" y="720" width="220" height="370" rx="8.8" ry="8.8" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        </a>
+        <path d="M 700 1270 L 700 1298.03" fill="none" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 700 1305.53 L 695 1295.53 L 700 1298.03 L 705 1295.53 Z" fill="#d4b455" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1281px; margin-left: 701px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                Trajectory
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="701" y="1285" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Trajectory
+                </text>
+            </switch>
+        </g>
+        <a xlink:href="https://github.com/autowarefoundation/autoware.universe/tree/main/planning/obstacle_avoidance_planner">
+            <rect x="590" y="1220" width="220" height="50" rx="7.5" ry="7.5" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+            <g transform="translate(-0.5 -0.5)">
+                <switch>
+                    <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                        <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 218px; height: 1px; padding-top: 1245px; margin-left: 591px;">
+                            <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                                <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                    obstacle_
+                                    <br/>
+                                    avoidance_planner
+                                </div>
+                            </div>
+                        </div>
+                    </foreignObject>
+                    <text x="700" y="1249" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                        obstacle_...
+                    </text>
+                </switch>
+            </g>
+        </a>
+        <path d="M 700 1360 L 700 1388.03" fill="none" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 700 1395.53 L 695 1385.53 L 700 1388.03 L 705 1385.53 Z" fill="#d4b455" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1380px; margin-left: 700px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                Trajectory
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="700" y="1383" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Trajectory
+                </text>
+            </switch>
+        </g>
+        <a xlink:href="https://github.com/autowarefoundation/autoware.universe/tree/main/planning/obstacle_velocity_limiter">
+            <rect x="590" y="1310" width="220" height="50" rx="7.5" ry="7.5" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+            <g transform="translate(-0.5 -0.5)">
+                <switch>
+                    <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                        <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 218px; height: 1px; padding-top: 1335px; margin-left: 591px;">
+                            <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                                <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                    obstacle_velocity_limiter
+                                </div>
+                            </div>
+                        </div>
+                    </foreignObject>
+                    <text x="700" y="1339" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                        obstacle_velocity_limiter
+                    </text>
+                </switch>
+            </g>
+        </a>
+        <path d="M 700 1540 L 700 1630 L 810 1630 L 810 1668.03" fill="none" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 810 1675.53 L 805 1665.53 L 810 1668.03 L 815 1665.53 Z" fill="#d4b455" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1631px; margin-left: 763px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                Trajectory
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="763" y="1634" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Trajectory
+                </text>
+            </switch>
+        </g>
+        <a xlink:href="https://github.com/autowarefoundation/autoware.universe/tree/main/planning/obstacle_stop_planner">
+            <rect x="590" y="1400" width="220" height="140" rx="9.8" ry="9.8" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        </a>
+        <path d="M 895 1740 L 895 1808.03" fill="none" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 895 1815.53 L 890 1805.53 L 895 1808.03 L 900 1805.53 Z" fill="#d4b455" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1780px; margin-left: 895px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                Trajectory
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="895" y="1783" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Trajectory
+                </text>
+            </switch>
+        </g>
+        <a xlink:href="https://github.com/autowarefoundation/autoware.universe/tree/main/planning/scenario_selector">
+            <rect x="725" y="1680" width="340" height="60" rx="9" ry="9" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+            <g transform="translate(-0.5 -0.5)">
+                <switch>
+                    <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                        <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 338px; height: 1px; padding-top: 1710px; margin-left: 726px;">
+                            <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                                <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                    scenario_selector
+                                </div>
+                            </div>
+                        </div>
+                    </foreignObject>
+                    <text x="895" y="1714" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                        scenario_selector
+                    </text>
+                </switch>
+            </g>
+        </a>
+        <path d="M 895 1880 L 895 1928.03" fill="none" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 895 1935.53 L 890 1925.53 L 895 1928.03 L 900 1925.53 Z" fill="#d4b455" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1900px; margin-left: 896px;">
+                        <div data-drawio-colors="color: #666666; background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(102, 102, 102); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                <font color="#000000">
+                                    Trajectory
+                                </font>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="896" y="1903" fill="#666666" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Trajectory
+                </text>
+            </switch>
+        </g>
+        <a xlink:href="https://github.com/autowarefoundation/autoware.universe/tree/main/planning/motion_velocity_smoother">
+            <rect x="815" y="1820" width="160" height="60" rx="9" ry="9" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+            <g transform="translate(-0.5 -0.5)">
+                <switch>
+                    <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                        <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 158px; height: 1px; padding-top: 1850px; margin-left: 816px;">
+                            <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                                <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                    motion_velocity_
+                                    <br/>
+                                    smoother
+                                </div>
+                            </div>
+                        </div>
+                    </foreignObject>
+                    <text x="895" y="1854" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                        motion_velocity_...
+                    </text>
+                </switch>
+            </g>
+        </a>
+        <path d="M 1110 617 L 1110 1630 L 980 1630 L 980 1668.03" fill="none" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 980 1675.53 L 975 1665.53 L 980 1668.03 L 985 1665.53 Z" fill="#d4b455" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1630px; margin-left: 1058px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                Trajectory
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1058" y="1633" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Trajectory
+                </text>
+            </switch>
+        </g>
+        <a xlink:href="https://github.com/autowarefoundation/autoware.universe/tree/main/planning/freespace_planner">
+            <rect x="1040" y="570" width="140" height="47" rx="7.05" ry="7.05" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+            <g transform="translate(-0.5 -0.5)">
+                <switch>
+                    <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                        <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 138px; height: 1px; padding-top: 594px; margin-left: 1041px;">
+                            <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                                <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                    freespace_planner
+                                </div>
+                            </div>
+                        </div>
+                    </foreignObject>
+                    <text x="1110" y="597" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                        freespace_planner
+                    </text>
+                </switch>
+            </g>
+        </a>
+        <path d="M 1110 480 L 1110 561.76" fill="none" stroke="#d4b455" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 1110 567.76 L 1106 559.76 L 1110 561.76 L 1114 559.76 Z" fill="#d4b455" stroke="#d4b455" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 521px; margin-left: 1110px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                occupancy_grid
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1110" y="525" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    occupancy_grid
+                </text>
+            </switch>
+        </g>
+        <a xlink:href="https://github.com/autowarefoundation/autoware.universe/tree/main/planning/costmap_generator">
+            <rect x="1040" y="390" width="140" height="90" rx="13.5" ry="13.5" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+            <g transform="translate(-0.5 -0.5)">
+                <switch>
+                    <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                        <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 138px; height: 1px; padding-top: 435px; margin-left: 1041px;">
+                            <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                                <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                    costmap_generator
+                                </div>
+                            </div>
+                        </div>
+                    </foreignObject>
+                    <text x="1110" y="439" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                        costmap_generator
+                    </text>
+                </switch>
+            </g>
+        </a>
+        <rect x="600" y="750" width="60" height="50" fill="none" stroke="none" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 775px; margin-left: 601px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                behavior
+                                <br/>
+                                velocity
+                                <br/>
+                                planner
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="630" y="779" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    behavior...
+                </text>
+            </switch>
+        </g>
+        <rect x="600" y="530" width="60" height="50" fill="none" stroke="none" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 555px; margin-left: 601px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                behavior
+                                <br/>
+                                path
+                                <br/>
+                                planner
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="630" y="559" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    behavior...
+                </text>
+            </switch>
+        </g>
+        <path d="M 839 50 L 840.83 178.03" fill="none" stroke="rgb(0, 0, 0)" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 840.94 185.53 L 835.79 175.6 L 840.83 178.03 L 845.79 175.46 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 86px; margin-left: 840px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                goal
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="840" y="89" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    goal
+                </text>
+            </switch>
+        </g>
+        <path d="M 440 240 L 440 235 L 606.76 235" fill="none" stroke="#b83232" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 612.76 235 L 604.76 239 L 606.76 235 L 604.76 231 Z" fill="#b83232" stroke="#b83232" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="600" y="1425" width="60" height="50" fill="none" stroke="none" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 1450px; margin-left: 601px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                obstacle
+                                <br/>
+                                stop
+                                <br/>
+                                planner
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="630" y="1454" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    obstacle...
+                </text>
+            </switch>
+        </g>
+        <rect x="672.5" y="1458" width="120" height="30" rx="4.5" ry="4.5" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 1473px; margin-left: 674px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                slow_down
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="733" y="1477" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    slow_down
+                </text>
+            </switch>
+        </g>
+        <rect x="672.5" y="1496" width="120" height="30" rx="4.5" ry="4.5" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 1511px; margin-left: 674px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                adaptive_cruise
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="733" y="1515" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    adaptive_cruise
+                </text>
+            </switch>
+        </g>
+        <rect x="672.5" y="1420" width="120" height="30" rx="4.5" ry="4.5" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 1435px; margin-left: 674px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                stop
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="733" y="1439" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    stop
+                </text>
+            </switch>
+        </g>
+        <rect x="520" y="350" width="90" height="30" fill="none" stroke="none" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 88px; height: 1px; padding-top: 365px; margin-left: 521px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; overflow-wrap: normal;">
+                                LaneDriving Scenario
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="565" y="369" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle" font-weight="bold">
+                    LaneDriving Sce...
+                </text>
+            </switch>
+        </g>
+        <rect x="552" y="410" width="120" height="30" fill="none" stroke="none" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 425px; margin-left: 553px;">
+                        <div data-drawio-colors="color: #666666; " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(102, 102, 102); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; overflow-wrap: normal;">
+                                <span style="font-weight: normal">
+                                    <font color="#000000">
+                                        Behavior Planning
+                                    </font>
+                                </span>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="612" y="429" fill="#666666" font-family="Helvetica" font-size="12px" text-anchor="middle" font-weight="bold">
+                    Behavior Planning
+                </text>
+            </switch>
+        </g>
+        <rect x="552" y="1180" width="120" height="30" fill="none" stroke="none" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 1195px; margin-left: 553px;">
+                        <div data-drawio-colors="color: #666666; " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(102, 102, 102); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; overflow-wrap: normal;">
+                                <span style="font-weight: normal">
+                                    <font color="#000000">
+                                        Motion Planning
+                                    </font>
+                                </span>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="612" y="1199" fill="#666666" font-family="Helvetica" font-size="12px" text-anchor="middle" font-weight="bold">
+                    Motion Planning
+                </text>
+            </switch>
+        </g>
+        <path d="M 440 240 L 440 905 L 581.76 905" fill="none" stroke="#b83232" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 587.76 905 L 579.76 909 L 581.76 905 L 579.76 901 Z" fill="#b83232" stroke="#b83232" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <path d="M 440 240 L 440 559.57 L 581.1 559.62" fill="none" stroke="#b83232" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 587.1 559.62 L 579.1 563.62 L 581.1 559.62 L 579.11 555.62 Z" fill="#b83232" stroke="#b83232" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="470" y="2050" width="850" height="40" fill="#fad7ac" stroke="#b46504" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 848px; height: 1px; padding-top: 2070px; margin-left: 471px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                To Control
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="895" y="2074" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    To Control
+                </text>
+            </switch>
+        </g>
+        <path d="M 1410 311 L 1360 311 L 1360 412.57 L 1188.24 412.5" fill="none" stroke="#b83232" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 1182.24 412.5 L 1190.24 408.5 L 1188.24 412.5 L 1190.23 416.5 Z" fill="#b83232" stroke="#b83232" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 388px; margin-left: 1358px;">
+                        <div data-drawio-colors="color: #000000; background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                vector_map
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1358" y="391" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    vector_map
+                </text>
+            </switch>
+        </g>
+        <path d="M 249 501 L 436 501.82 C 436.02 496.62 444.02 496.66 444 501.86 L 444 501.86 L 581.76 502.46" fill="none" stroke="#7cab62" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 587.76 502.49 L 579.75 506.45 L 581.76 502.46 L 579.78 498.46 Z" fill="#7cab62" stroke="#7cab62" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 502px; margin-left: 345px;">
+                        <div data-drawio-colors="color: #000000; background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                Dynamic Objects
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="345" y="505" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Dynamic Objects
+                </text>
+            </switch>
+        </g>
+        <path d="M 160 785 L 436 785.64 C 436.01 780.44 444.01 780.46 444 785.66 L 444 785.66 L 581.76 785.98" fill="none" stroke="#7cab62" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 587.76 785.99 L 579.75 789.98 L 581.76 785.98 L 579.77 781.98 Z" fill="#7cab62" stroke="#7cab62" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 785px; margin-left: 329px;">
+                        <div data-drawio-colors="color: #000000; background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                Dynamic Objects
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="329" y="788" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Dynamic Objects
+                </text>
+            </switch>
+        </g>
+        <path d="M 251 1321 L 581.76 1322.46" fill="none" stroke="#7cab62" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 587.76 1322.49 L 579.75 1326.45 L 581.76 1322.46 L 579.78 1318.45 Z" fill="#7cab62" stroke="#7cab62" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1321px; margin-left: 342px;">
+                        <div data-drawio-colors="color: #000000; background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                Dynamic Objects
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="342" y="1324" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Dynamic Objects
+                </text>
+            </switch>
+        </g>
+        <path d="M 210 1435 L 581.76 1435" fill="none" stroke="#7cab62" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 587.76 1435 L 579.76 1439 L 581.76 1435 L 579.76 1431 Z" fill="#7cab62" stroke="#7cab62" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1436px; margin-left: 347px;">
+                        <div data-drawio-colors="color: #000000; background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                Dynamic Objects
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="347" y="1439" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Dynamic Objects
+                </text>
+            </switch>
+        </g>
+        <path d="M 248 830 L 436 829.94 C 436 824.74 444 824.74 444 829.94 L 444 829.94 L 579.78 829.89" fill="none" stroke="#82b366" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 585.78 829.89 L 577.79 833.89 L 579.78 829.89 L 577.78 825.89 Z" fill="#82b366" stroke="#82b366" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 830px; margin-left: 326px;">
+                        <div data-drawio-colors="color: #000000; background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                Obstacle Points
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="326" y="833" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Obstacle Points
+                </text>
+            </switch>
+        </g>
+        <path d="M 248 1347 L 581.76 1347.49" fill="none" stroke="#82b366" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 587.76 1347.5 L 579.76 1351.49 L 581.76 1347.49 L 579.77 1343.49 Z" fill="#82b366" stroke="#82b366" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1346px; margin-left: 328px;">
+                        <div data-drawio-colors="color: #000000; background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                Obstacle Points
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="328" y="1349" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Obstacle Points
+                </text>
+            </switch>
+        </g>
+        <path d="M 248 1245 L 581.76 1245" fill="none" stroke="#7cab62" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 587.76 1245 L 579.76 1249 L 581.76 1245 L 579.76 1241 Z" fill="#7cab62" stroke="#7cab62" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1246px; margin-left: 345px;">
+                        <div data-drawio-colors="color: #000000; background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                Dynamic Objects
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="345" y="1249" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Dynamic Objects
+                </text>
+            </switch>
+        </g>
+        <path d="M 251 1475.24 L 581.76 1475.01" fill="none" stroke="#82b366" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 587.76 1475 L 579.77 1479.01 L 581.76 1475.01 L 579.76 1471.01 Z" fill="#82b366" stroke="#82b366" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1476px; margin-left: 329px;">
+                        <div data-drawio-colors="color: #000000; background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                Obstacle Points
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="329" y="1479" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Obstacle Points
+                </text>
+            </switch>
+        </g>
+        <path d="M 1150 1695 L 1073.24 1695" fill="none" stroke="#d4b455" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 1067.24 1695 L 1075.24 1691 L 1073.24 1695 L 1075.24 1699 Z" fill="#d4b455" stroke="#d4b455" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1680px; margin-left: 1150px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                route (from mission_planner)
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1150" y="1683" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    route (from mission_planner)
+                </text>
+            </switch>
+        </g>
+        <path d="M 440 240 L 440 1710 L 716.76 1710" fill="none" stroke="#b83232" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 722.76 1710 L 714.76 1714 L 716.76 1710 L 714.76 1706 Z" fill="#b83232" stroke="#b83232" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <path d="M 250 1765.24 L 459.21 1766.16" fill="none" stroke="#5899db" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 465.21 1766.19 L 457.2 1770.15 L 459.21 1766.16 L 457.23 1762.15 Z" fill="#5899db" stroke="#5899db" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1764px; margin-left: 332px;">
+                        <div data-drawio-colors="color: #000000; background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                vehicle_state
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="332" y="1768" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    vehicle_state
+                </text>
+            </switch>
+        </g>
+        <rect x="140" y="1690" width="110" height="150" fill="#dae8fc" stroke="#6c8ebf" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 108px; height: 1px; padding-top: 1765px; margin-left: 141px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                <div style="text-align: left">
+                                    Localization
+                                </div>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="195" y="1769" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Localization
+                </text>
+            </switch>
+        </g>
+        <path d="M 41 608 L 436 607.64 C 436 602.44 444 602.43 444 607.63 L 444 607.63 L 581.76 607.51" fill="none" stroke="#808080" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 587.76 607.5 L 579.77 611.51 L 581.76 607.51 L 579.76 603.51 Z" fill="#808080" stroke="#808080" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 609px; margin-left: 307px;">
+                        <div data-drawio-colors="color: #000000; background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                approval,
+                                <br/>
+                                force_approval
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="307" y="613" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    approval,...
+                </text>
+            </switch>
+        </g>
+        <path d="M 35 970 L 436 970.72 C 436.01 965.52 444.01 965.54 444 970.74 L 444 970.74 L 581.76 970.99" fill="none" stroke="#808080" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 587.76 971 L 579.76 974.98 L 581.76 970.99 L 579.77 966.98 Z" fill="#808080" stroke="#808080" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 965px; margin-left: 341px;">
+                        <div data-drawio-colors="color: #000000; background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                external_crosswalk_states,
+                                <br/>
+                                external_intersection_states,
+                                <br/>
+                                external_traffic_light_states
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="341" y="969" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    external_crosswalk_states,...
+                </text>
+            </switch>
+        </g>
+        <rect x="480" y="150" width="90" height="30" fill="none" stroke="none" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 88px; height: 1px; padding-top: 165px; margin-left: 481px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; overflow-wrap: normal;">
+                                Planning
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="525" y="169" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle" font-weight="bold">
+                    Planning
+                </text>
+            </switch>
+        </g>
+        <path d="M 250 750 L 436 750 C 436 744.8 444 744.8 444 750 L 444 750 L 581.76 750" fill="none" stroke="#7cab62" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 587.76 750 L 579.76 754 L 581.76 750 L 579.76 746 Z" fill="#7cab62" stroke="#7cab62" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 751px; margin-left: 330px;">
+                        <div data-drawio-colors="color: #000000; background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                Traffic Light States
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="330" y="754" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Traffic Light States
+                </text>
+            </switch>
+        </g>
+        <path d="M 41 1510.5 L 436 1510.14 C 436 1504.94 444 1504.93 444 1510.13 L 444 1510.13 L 581.76 1510.01" fill="none" stroke="#808080" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 587.76 1510 L 579.77 1514.01 L 581.76 1510.01 L 579.76 1506.01 Z" fill="#808080" stroke="#808080" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1512px; margin-left: 302px;">
+                        <div data-drawio-colors="color: #000000; background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                expand_stop_range
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="302" y="1515" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    expand_stop_range
+                </text>
+            </switch>
+        </g>
+        <rect x="140" y="400" width="110" height="1270" fill="#d5e8d4" stroke="#82b366" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 108px; height: 1px; padding-top: 1035px; margin-left: 141px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Perception
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="195" y="1039" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Perception
+                </text>
+            </switch>
+        </g>
+        <path d="M 36 1849.5 L 521.76 1849.99" fill="none" stroke="#808080" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 527.76 1850 L 519.76 1853.99 L 521.76 1849.99 L 519.77 1845.99 Z" fill="#808080" stroke="#808080" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1851px; margin-left: 302px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                velocity_limit
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="302" y="1854" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    velocity_limit
+                </text>
+            </switch>
+        </g>
+        <rect x="0" y="230" width="80" height="1640" fill="#bac8d3" stroke="#23445d" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 1050px; margin-left: 1px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Human
+                                <br/>
+                                Machine
+                                <br/>
+                                Interface
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="40" y="1054" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Human...
+                </text>
+            </switch>
+        </g>
+        <path d="M 1410 545 L 1360 545 L 1360 457.57 L 1188.24 457.5" fill="none" stroke="#97d077" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 1182.24 457.5 L 1190.24 453.5 L 1188.24 457.5 L 1190.23 461.5 Z" fill="#97d077" stroke="#97d077" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <path d="M 650 1850 L 806.76 1850" fill="none" stroke="#d6b656" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 812.76 1850 L 804.76 1854 L 806.76 1850 L 804.76 1846 Z" fill="#d6b656" stroke="#d6b656" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="530" y="1820" width="120" height="60" rx="9" ry="9" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 1850px; margin-left: 531px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                external_velocity
+                                <br/>
+                                _limit_selector
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="590" y="1854" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    external_velocity...
+                </text>
+            </switch>
+        </g>
+        <path d="M 590 1670 L 590 1811.76" fill="none" stroke="#d6b656" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 590 1817.76 L 586 1809.76 L 590 1811.76 L 594 1809.76 Z" fill="#d6b656" stroke="#d6b656" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1796px; margin-left: 590px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                velocity_limit
+                                <br/>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="590" y="1799" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    velocity_l...
+                </text>
+            </switch>
+        </g>
+        <rect x="672.5" y="525" width="120" height="27.54" rx="4.13" ry="4.13" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 539px; margin-left: 674px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                avoidance
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="733" y="542" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    avoidance
+                </text>
+            </switch>
+        </g>
+        <rect x="672.5" y="557" width="120" height="27.54" rx="4.13" ry="4.13" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 571px; margin-left: 674px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                side_shift
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="733" y="574" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    side_shift
+                </text>
+            </switch>
+        </g>
+        <rect x="672.5" y="492" width="120" height="27.54" rx="4.13" ry="4.13" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 506px; margin-left: 674px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                lane_change
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="733" y="509" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    lane_change
+                </text>
+            </switch>
+        </g>
+        <rect x="672.5" y="460" width="120" height="27.54" rx="4.13" ry="4.13" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 474px; margin-left: 674px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                lane_following
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="733" y="477" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    lane_following
+                </text>
+            </switch>
+        </g>
+        <rect x="672.5" y="590" width="120" height="27.54" rx="4.13" ry="4.13" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 604px; margin-left: 674px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                pull_over
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="733" y="607" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    pull_over
+                </text>
+            </switch>
+        </g>
+        <rect x="672.5" y="622.46" width="120" height="27.54" rx="4.13" ry="4.13" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 636px; margin-left: 674px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                pull_out
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="733" y="640" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    pull_out
+                </text>
+            </switch>
+        </g>
+        <rect x="672.5" y="774" width="120" height="26.05" rx="3.91" ry="3.91" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 787px; margin-left: 674px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                blind_spot
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="733" y="791" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    blind_spot
+                </text>
+            </switch>
+        </g>
+        <rect x="672.5" y="808" width="120" height="26.05" rx="3.91" ry="3.91" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 821px; margin-left: 674px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                cross_walk
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="733" y="825" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    cross_walk
+                </text>
+            </switch>
+        </g>
+        <rect x="672.5" y="841" width="120" height="26.05" rx="3.91" ry="3.91" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 854px; margin-left: 674px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                stop_line
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="733" y="858" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    stop_line
+                </text>
+            </switch>
+        </g>
+        <rect x="672.5" y="876" width="120" height="24.32" rx="3.65" ry="3.65" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 888px; margin-left: 674px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                traffic_light
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="733" y="892" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    traffic_light
+                </text>
+            </switch>
+        </g>
+        <rect x="672.5" y="909" width="120" height="26.05" rx="3.91" ry="3.91" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 922px; margin-left: 674px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                intersection
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="733" y="926" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    intersection
+                </text>
+            </switch>
+        </g>
+        <rect x="672.5" y="740" width="120" height="26.05" rx="3.91" ry="3.91" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 753px; margin-left: 674px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                detection_area
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="733" y="757" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    detection_area
+                </text>
+            </switch>
+        </g>
+        <rect x="672.5" y="943" width="120" height="26.05" rx="3.91" ry="3.91" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 956px; margin-left: 674px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                no_stopping_area
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="733" y="960" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    no_stopping_area
+                </text>
+            </switch>
+        </g>
+        <rect x="672.5" y="976" width="120" height="26.05" rx="3.91" ry="3.91" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 989px; margin-left: 674px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                virtual_traffic_light
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="733" y="993" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    virtual_traffic_light
+                </text>
+            </switch>
+        </g>
+        <rect x="672.5" y="1010" width="120" height="26.05" rx="3.91" ry="3.91" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 1023px; margin-left: 674px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                occlusion_spot
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="733" y="1027" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    occlusion_spot
+                </text>
+            </switch>
+        </g>
+        <rect x="672.5" y="1043.95" width="120" height="26.05" rx="3.91" ry="3.91" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 1057px; margin-left: 674px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                run_out
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="733" y="1061" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    run_out
+                </text>
+            </switch>
+        </g>
+        <path d="M 920 50 L 920 178.03" fill="none" stroke="rgb(0, 0, 0)" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 920 185.53 L 915 175.53 L 920 178.03 L 925 175.53 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 86px; margin-left: 920px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                check_point
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="920" y="89" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    check_point
+                </text>
+            </switch>
+        </g>
+        <path d="M 250 295 L 440 295 L 440 1335 L 581.76 1335" fill="none" stroke="#b83232" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 587.76 1335 L 579.76 1339 L 581.76 1335 L 579.76 1331 Z" fill="#b83232" stroke="#b83232" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 270px; margin-left: 331px;">
+                        <div data-drawio-colors="color: #000000; background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                vector_map
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="331" y="273" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    vector_map
+                </text>
+            </switch>
+        </g>
+        <a xlink:href="https://github.com/autowarefoundation/autoware.universe/tree/main/planning/surround_obstacle_checker">
+            <rect x="500" y="1620" width="180" height="50" rx="7.5" ry="7.5" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+            <g transform="translate(-0.5 -0.5)">
+                <switch>
+                    <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                        <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 178px; height: 1px; padding-top: 1645px; margin-left: 501px;">
+                            <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                                <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                    surround_obstacle_checker
+                                </div>
+                            </div>
+                        </div>
+                    </foreignObject>
+                    <text x="590" y="1649" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                        surround_obstacle_checker
+                    </text>
+                </switch>
+            </g>
+        </a>
+        <path d="M 670 1750 L 670 1780 L 590 1780" fill="none" stroke="#d6b656" stroke-width="2" stroke-miterlimit="10" stroke-dasharray="6 6" pointer-events="stroke"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1750px; margin-left: 670px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                (from other planning modules)
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="670" y="1753" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    (from othe...
+                </text>
+            </switch>
+        </g>
+        <path d="M 250 1650.24 L 436 1650.06 C 436 1644.86 444 1644.85 444 1650.05 L 444 1650.05 L 491.76 1650.01" fill="none" stroke="#82b366" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 497.76 1650 L 489.77 1654.01 L 491.76 1650.01 L 489.76 1646.01 Z" fill="#82b366" stroke="#82b366" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1651px; margin-left: 338px;">
+                        <div data-drawio-colors="color: #000000; background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                Obstacle Points
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="338" y="1654" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Obstacle Points
+                </text>
+            </switch>
+        </g>
+        <path d="M 250 1630 L 436 1630 C 436 1624.8 444 1624.8 444 1630 L 444 1630 L 491.76 1630" fill="none" stroke="#7cab62" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 497.76 1630 L 489.76 1634 L 491.76 1630 L 489.76 1626 Z" fill="#7cab62" stroke="#7cab62" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1631px; margin-left: 351px;">
+                        <div data-drawio-colors="color: #000000; background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                Dynamic Objects
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="351" y="1634" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Dynamic Objects
+                </text>
+            </switch>
+        </g>
+        <path d="M 895 1990 L 895 2038.03" fill="none" stroke="#d6b656" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 895 2045.53 L 890 2035.53 L 895 2038.03 L 900 2035.53 Z" fill="#d6b656" stroke="#d6b656" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 2010px; margin-left: 895px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                <span style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 11px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: center; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 255, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;">
+                                    Trajectory
+                                </span>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="895" y="2013" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Trajectory
+                </text>
+            </switch>
+        </g>
+        <a xlink:href="https://github.com/autowarefoundation/autoware.universe/tree/main/planning/planning_validator">
+            <rect x="815" y="1940" width="160" height="50" rx="7.5" ry="7.5" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+            <g transform="translate(-0.5 -0.5)">
+                <switch>
+                    <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                        <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 158px; height: 1px; padding-top: 1965px; margin-left: 816px;">
+                            <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                                <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                    planning_validator
+                                </div>
+                            </div>
+                        </div>
+                    </foreignObject>
+                    <text x="895" y="1969" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                        planning_validator
+                    </text>
+                </switch>
+            </g>
+        </a>
+        <rect x="470" y="0" width="850" height="50" fill="#f5f5f5" stroke="#666666" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 848px; height: 1px; padding-top: 25px; margin-left: 471px;">
+                        <div data-drawio-colors="color: #333333; " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(51, 51, 51); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                API Layer
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="895" y="29" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    API Layer
+                </text>
+            </switch>
+        </g>
+        <rect x="140" y="230" width="110" height="130" fill="#f8cecc" stroke="#b85450" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 108px; height: 1px; padding-top: 295px; margin-left: 141px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Map
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="195" y="299" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Map
+                </text>
+            </switch>
+        </g>
+        <rect x="1410" y="246" width="110" height="130" fill="#f8cecc" stroke="#b85450" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 108px; height: 1px; padding-top: 311px; margin-left: 1411px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Map
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1465" y="315" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Map
+                </text>
+            </switch>
+        </g>
+        <rect x="1410" y="450" width="110" height="190" fill="#d5e8d4" stroke="#82b366" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 108px; height: 1px; padding-top: 545px; margin-left: 1411px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Perception
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1465" y="549" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Perception
+                </text>
+            </switch>
+        </g>
+        <rect x="515" y="200" width="90" height="30" fill="none" stroke="none" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 88px; height: 1px; padding-top: 215px; margin-left: 516px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; overflow-wrap: normal;">
+                                Mission Planning
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="560" y="219" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle" font-weight="bold">
+                    Mission Planning
+                </text>
+            </switch>
+        </g>
+        <rect x="510" y="1930" width="90" height="30" fill="none" stroke="none" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 88px; height: 1px; padding-top: 1945px; margin-left: 511px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; overflow-wrap: normal;">
+                                Validation
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="555" y="1949" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle" font-weight="bold">
+                    Validation
+                </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%">
+                Text is not SVG - cannot display
+            </text>
+        </a>
+    </switch>
+</svg>
\ No newline at end of file
diff --git a/docs/design/autoware-architecture/planning/index-update.md b/docs/design/autoware-architecture/planning/index-update.md
new file mode 100644
index 00000000000..04760531a59
--- /dev/null
+++ b/docs/design/autoware-architecture/planning/index-update.md
@@ -0,0 +1,330 @@
+# Planning component design
+<!-- 
+- discussionsはトレードオフ選定とかにしたい
+- サードパーティによって拡張というよりは、誰でも拡張できるって言い回しのほうが良いはず
+- mission plannerの使われ方を重点的に考えよう。FMSとして機能が外だしされることがあるから、これは別れてるのよ。
+- ハイレベルなデザインと詳細なデザインではなく、アーキテクチャのためのデザイン(要求ベース、これがやりたい)と、アーキテクチャ(詳細なフロー)ができるはず。
+- デザインの部分に、ポリシーによる変更がわかるような書き方があると良い。ポリシーA(右側走行)になったときに、いくつかのモジュールが特定の設定で起動する。どう図にするか。。。
+- このポリシーに対して、何がどうかわるかという例があるといい。自動運転レベルが変わったときに、HMIとの連携がこう変わって、軌道モジュールがこう変わる、とか。
+- ハイレベルに対するユースケースを上げる
+- 車両の振る舞いのユースケース
+  - 話ゴールやチェくポイント、NGポイントを与えてplanning内部でルートを計算して進む / 渋滞情報を加味したルートを外部から与えて走行する
+開発者のユースケース
+  - 中の作りの話(実装や設計レベル):機能の差し替えができていてほしいので(レーンチェンジAとレーンチェンジBとか)、柔軟に変更できる必要があり、各機能はモジュールとして実装される。
+ -->
+
+## Context and scope
+
+自動運転システムにおける Planning コンポーネントの役割は、与えられたミッションを満たすために、安全で交通ルールに基づいた自動運転車両の目標軌道(経路と速度)を生成することである。
+
+このドキュメントではAutowareにおけるplanningの要求やデザインをまとめる。これによって、開発者はplanning Componentがどのような考えで設計されているのか、およびそれらをどう拡張させていくのかを理解することができます。
+
+ドキュメントの前半ではハイレベルな要求やデザインを、後半は実際の実装や提供機能について述べる。
+
+## Goals and non-goals
+
+我々の目標は、純粋な自動運転システムの開発ではなく、自動運転"プラットフォーム"の開発である。このプラットフォームでは、誰もが自動運転の機能を自由に拡張できる。
+
+
+Autowareではこのプラットフォーム観点から [microautonomy architecture](https://autowarefoundation.github.io/autoware-documentation/main/design/autoware-concepts) の概念を提唱しています。Microautonomyとは、適切な機能のモジュール化やインターフェースの明確な定義に基づき、高い拡張性を焦点を当てた自動運転システムの設計コンセプトです。
+
+これを踏まえ、Planning component の設計方針は、世の中のすべての複雑な自動運転のユースケースを解決することではなく(なぜならそれは非常に難しい問題なので)、**ユーザーのニーズに合わせてカスタマイズでき、誰でも容易に機能拡張が可能なPlanning開発プラットフォームを提供すること** に設定されています。我々が提供するプラットフォームが様々なニーズに対する拡張性を獲得した結果、最終的に多くの複雑なユースケースが解決できるようになると信じています。
+
+この方針を明確にするため、以下に Goal と Non-Goal をリスト化します。
+
+**Goals:**
+
+- **自動運転の走行に必要な最低限の基本機能を持つこと**
+  - Planning Componentは機能拡張以前に、自動運転のために必須な機能を提供する必要があります。これは走る、止まる、曲がるといった基本計画に加え、比較的安全な状況での車線変更や信号停止などの機能が含まれます。
+- **提供機能はモジュール化されており、誰でも機能の再利用や拡張が可能であること** 
+  - これはユーザーが期待するODDに対し、拡張機能によって対応できることを意味します。プラグインのような形で誰でも機能拡張ができれば、それぞれのニーズ(Lv4/Lv2自動運転、公道/私道走行、大型車両、小型ロボットなど)にあったシステムが提供できます。
+  - ユーザーのニーズには、純粋な自動運転としての性能ではなく、限定されたODD(例えば障害物のない管理された私道)において可能な限り消費電力を下げることなども含まれます。この場合はモジュールをdisableさせることによって、この場合はODDを限定させる代わりに、処理負荷を下げられるようにする必要があります。
+- **人間のオペレータによって能力が拡張できること** 
+  - オペレータによる補助も機能拡張の一つです。これにより、非常に複雑で困難なユースケースにおいても、人間の補助という機能拡張で対応できることを意味します。ここで具体的なオペレータの種類は定義しません。研究フェーズにおいては車に同乗している人かもしれませんし、自動運転サービス提供者にとっては非常時にのみ繋がる遠隔オペレータかもしれません。
+
+
+**Non-goals:**
+
+Planning Componentは third-partyのモジュールによって機能拡張されることを想定しています。したがって、以下はAutowareのPlanning Component単体の目標から除外されます。
+
+- ユーザーが必要とする機能の全てをAutoware単独で提供すること 
+- 自動運転としての完全な機能と性能
+- 人間の性能を常に上回る性能
+- 「絶対に衝突しない」という機能
+
+なお、「絶対に衝突しない」といった性能は現在の目標ではありませんが、外部モジュールとの連携や将来の強化によってそのような状態を達成できるようなアーキテクチャを作成することは我々の目標です。そしてこれらの要求は自動運転プラットフォームの視点から来ているものであり、一般的な自動運転システムにおけるPlanning Componentへの要求としては一般的では無いかもしれません。
+
+<!-- ## Requirements
+
+WIP
+
+## Assumptions
+
+WIP -->
+
+## High level design
+
+このダイアグラムはPlanning Componentのハイレベルなアーキテクチャを示している。なお、これは理想的なハイレベルデザインであり、現時点での実装がこれに従っていないこともあることに注意する。実際の詳細な実装は後半を参照のこと。
+
+<!-- ![overall-planning-architecture](image/high-level-planning-diagram.drawio.svg) -->
+![overall-planning-architecture](image/high-level-planning-diagram-miyake-reviewed.drawio.svg)
+
+Planning コンポーネントはいくつかのサブコンポーネントからなります。
+
+- **Mission Planning**: 地図情報をもとに、自動運転ミッションの設定や現在位置からゴールまでのルートを計算を行います。
+- **Planning Modules**: 定められたミッションに対し、目標軌道やウインカーなどの自車の振る舞いの計画を行います。このサブコンポーネントは機能を担当するいくつかのモジュールから成ります。これらのモジュールは便宜上、BehaviorとMotionの2つに分けられています。
+  - **Behavior Planner**: 交通ルールや安全を考慮して適切な経路を計算します。
+  - **Motion Planner**: Behavior Plannerと連携し、車両運動や乗り心地を考慮した目標軌道を計算します。
+- **Validation**: 計算された目標軌道を検証し、安全性の担保や緊急時の振る舞いを担います。
+
+
+ここでは microautonomy アーキテクチャに従い、モジュール型のシステムフレームワークを採用しています。planningの機能はモジュールとして実装され、これらのモジュールは与えられたユースケースに応じて動的/静的にload/unloadされます。これらには例えば、レーンチェンジ、交差点、横断歩道モジュールなどのモジュールが含まれています。
+
+### Remarkable points
+
+このハイレベルデザインにおいて、Goalsに対する重要な設計として、以下を挙げます。
+
+#### Modulation of each function
+
+ルート生成や車線変更や交差点、横断歩道などPlanningに必要な機能はモジュールとして管理されます。これらのモジュールに対してはある程度共通化されたインターフェースが提供され、それに従うことによって誰でもモジュールの追加や拡張を行うことができます。詳細なインターフェースは後述。
+
+
+#### Separation of Mission Planning sub-component
+
+Mission Planningの役割は、FMS(Fleet Management System)などの既存サービスの代替になるものです。ハイレベルで定義されたMission Planningのインターフェースに従うことにより、これらthird-party機能との連携を容易に行うことができます。
+
+#### Separation of Validation sub-component
+
+誰でも容易に拡張できるというPlanning Componentの性質の背反として、全ての機能それぞれにおいて期待されるレベルの安全性を担保することは困難です。PlanningのValidation機能は実際に経路計画などを行うモジュールからは分離して管理され、モジュールに任意の変更があった場合にも一定のレベルの安全を担保できるように設計されています。
+
+#### Interface for HMI (Human Machine Interface)
+
+
+Human Machine Interfaceとの連携は、人間オペレータとの連携を円滑に行うために必要不可欠なものです。このComponent間のインターフェースを介して、同乗オペレータや遠隔監視システムとの連携を可能にします。
+
+
+
+#### Trade-offs for the separation of planning and other components
+
+Autowareの全体設計の話ではあるが、Planningを孤立したComponentとして設計することにおいても注意するべきトレードオフが存在します。planning、perception、localization、controlなどのコンポーネントを分離して開発することで、サードパーティ製のコンポーネントとの連携が容易になります。しかし、ここではパフォーマンスと拡張性の間にトレードオフがあります。例えば、perception コンポーネントは理想的には planning コンポーネントが必要とするオブジェクトだけを認識すれば十分ですが、コンポーネントを分離することでそのような密接なコミュニケーションが難しくなり、不要なオブジェクトに対しても処理を実行する必要があります。また、計画と制御を分離すると、計画時に車両の運動性能を考慮することが難しくなるという性能面の欠点があります。これを補うためには、インターフェースの情報量を増やすか、計算負荷を増やすなど対応が必要になります。
+
+
+## How to extend/corporate with new features (WIP)
+
+Planning Componentのデザインの最も重要な機能の一つが、外部モジュールとの連携です。以下の図に示すように外部の機能を組み込む際にはいくつかの方法があります。
+
+
+![how-to-add-new-modules](image/how-to-add-new-modules.drawio.svg)
+
+
+
+### Planning Componentに新たなモジュールを追加する
+
+ユーザーはモジュールとして作成されたPlanningの機能を置き換えたり、機能追加をすることができます。これは最も一般的な機能の拡張方法です。これによって、求めるODDにおいて不足している機能を追加したり、逆に既存の機能をよりシンプルなものに変更したりすることができます。
+
+ただし、この機能追加を行うためには、各モジュールのインターフェースが適切に整理されている必要があります。2023.11現在ではこのような理想的なモジュールの仕組みは提供されておらず、いくつかの制限を含んでいます。詳細は Reference Implementationの [How to add new modules in the current implementation](#how-to-add-new-modules-in-the-current-implementation) を確認してください。
+
+
+### Planningのサブコンポーネントを置き換える
+
+いくつかのユーザーは、サブコンポーネントレベルでの連携・拡張を行うことに興味があるでしょう。これは例えば、Mission Planningを既存のFMSサービスと置き換えたり、既存のValidation機能は使いつつ経路生成の機能を third-party製のもの置き換えるといった要求に該当します。
+
+後に説明される [Internal interface in the planning component](#internal-interface-in-the-planning-component) に従えば、サブコンポーネントレベルでの連携・拡張を行うことが可能です。既存のplanningの機能との複雑な連携はできませんが、一部のplanning componentの機能と外部モジュールとの連携が可能に成ります。
+
+
+### Planning Component全体を置き換える
+
+自動運転のPlanningシステムを開発している企業や研究室などは、自社のPlanning製品をAutowareのPerceptionやControlモジュールと連携させ、自動運転システム全体の評価を行うことに関心があるでしょう。これはPlanning全体を置き換えることによって可能となります。Component間で定義される、おそらく最も堅牢で安定したインターフェースに従えば簡単に置き換えが可能です。ただし、既存のplanningモジュールとの連携はできません。
+
+
+## Component interface
+
+This section describes the inputs and outputs of the Planning Component and of its internal modules. See the [Planning Component Interface](../../autoware-interfaces/components/planning.md) page for the current implementation.
+
+### Input to the planning component
+
+- **From Map**
+  - Vector map: Contains all static information about the environment, including lane connection information for route planning, lane geometry for generating a reference path, and traffic rule-related information.
+- **From Perception**
+  - Detected object information: Provides real-time information about objects that cannot be known in advance, such as pedestrians and other vehicles. The Planning Component plans maneuvers to avoid collisions with these objects.
+  - Detected obstacle information: Supplies real-time information about the location of obstacles, which is more primitive than Detected Object and used for emergency stops and other safety measures.
+  - Occupancy map information: Offers real-time information about the presence of pedestrians and other vehicles and occluded area information.
+  - Traffic light recognition result: Provides the current state of each traffic light in real time. The Planning Component extracts relevant information for the planned path and determines whether to stop at intersections.
+- **From Localization**
+  - Vehicle motion information: Includes the ego vehicle's position, velocity, acceleration, and other motion-related data.
+- **From System**
+  - Operation mode: Indicates whether the vehicle is operating in Autonomous mode.
+- **From Human Machine Interface (HMI)**
+  - Feature execution: Allows for executing/authorizing autonomous driving operations, such as lane changes or entering intersections, by human operators.
+- **From API Layer**
+  - Goal: Represents the final position that the Planning Component aims to reach.
+  - Checkpoint: Represents a midpoint along the route to the destination. This is used during route calculation.
+  - Velocity limit: Sets the maximum speed limit for the vehicle.
+
+### Output from the planning component
+
+- **To Control**
+  - Trajectory: Provides a smooth sequence of pose, twist, and acceleration that the Control Component must follow. The trajectory is typically 10 seconds long with a 0.1-second resolution.
+  - Turn Signals: Controls the vehicle's turn indicators, such as right, left, hazard, etc. based on the planned maneuvers.
+- **To System**
+  - Diagnostics: Reports the state of the Planning Component, indicating whether the processing is running correctly and whether a safe plan is being generated.
+- **To Human Machine Interface (HMI)**
+  - Feature execution availability: Indicates the status of operations that can be executed or are required, such as lane changes or entering intersections.
+  - Trajectory candidate: Shows the potential trajectory that will be executed after the user's execution.
+- **To API Layer**
+  - Planning factors: Provides information about the reasoning behind the current planning behavior. This may include the position of target objects to avoid, obstacles that led to the decision to stop, and other relevant information.
+
+### Internal interface in the planning component
+
+- **Mission Planning to Scenario Planning**
+  - Route: Offers guidance for the path that needs to be followed from the starting point to the destination. This path is determined based on information such as lane IDs defined on the map. At the route level, it doesn't explicitly indicate which specific lanes to take, and the route can contain multiple lanes.
+- **Behavior Planning to Motion Planning**
+  - Path: Provides a rough position and velocity to be followed by the vehicle. These path points are usually defined with an interval of about 1 meter. Although other interval distances are possible, it may impact the precision or performance of the planning component.
+  - Drivable area: Defines regions where the vehicle can drive, such as within lanes or physically drivable areas. It assumes that the motion planner will calculate the final trajectory within this defined area.
+- **Scenario Planning to Validation**
+  - Trajectory: Defines the desired positions, velocities, and accelerations which the Control Component will try to follow. Trajectory points are defined at intervals of approximately 0.1 seconds based on the trajectory velocities.
+- **Validation to Control Component**
+  - Trajectory: Same as above but with some additional safety considerations.
+
+
+
+## Detailed design
+
+### Supported features
+
+| Feature                                      | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | Requirements                                                                | Figure                                                                          |
+| -------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------- | ------------------------------------------------------------------------------- |
+| Route Planning                               | Plan route from the ego vehicle position to the destination.<br> <br> Reference implementation is in [Mission Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/mission_planner/), enabled by launching the `mission_planner` node.                                                                                                                                                                                                                                                                        | - Lanelet map (driving lanelets)                                            | ![route-planning](image/features-route-planning.drawio.svg)                     |
+| Path Planning from Route                     | Plan path to be followed from the given route. <br> <br> Reference implementation is in [Behavior Path Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_path_planner/).                                                                                                                                                                                                                                                                                                                          | - Lanelet map (driving lanelets)                                            | ![lane-follow](image/features-lane-follow.drawio.svg)                           |
+| Obstacle Avoidance                           | Plan path to avoid obstacles by steering operation. <br> <br> Reference implementation is in [Avoidance](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_path_planner/docs/behavior_path_planner_avoidance_design/), [Obstacle Avoidance Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_avoidance_planner/). Enable flag in parameter: `launch obstacle_avoidance_planner true`                                                                                  | - objects information                                                       | ![obstacle-avoidance](image/features-avoidance.drawio.svg)                      |
+| Path Smoothing                               | Plan path to achieve smooth steering. <br> <br> Reference implementation is in [Obstacle Avoidance Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_avoidance_planner/).                                                                                                                                                                                                                                                                                                                         | - Lanelet map (driving lanelet)                                             | ![path-smoothing](image/features-path-smoothing.drawio.svg)                     |
+| Narrow Space Driving                         | Plan path to drive within the drivable area. Furthermore, when it is not possible to drive within the drivable area, stop the vehicle to avoid exiting the drivable area. <br> <br> Reference implementation is in [Obstacle Avoidance Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_avoidance_planner/).                                                                                                                                                                                     | - Lanelet map (high-precision lane boundaries)                              | ![narrow-space-driving](image/features-narrow-space-driving.drawio.svg)         |
+| Lane Change                                  | Plan path for lane change to reach the destination. <br> <br> Reference implementation is in [Lane Change](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_path_planner/docs/behavior_path_planner_lane_change_design/).. Enable flag in both parameters:                                                                                                                                                                                                                                                | - Lanelet map (driving lanelets)                                            | ![lane-change](image/features-lane-change.drawio.svg)                           |
+| Pull Over                                    | Plan path for pull over to park at the road shoulder. <br> <br> Reference implementation is in [Goal Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_path_planner/docs/behavior_path_planner_goal_planner_design/).                                                                                                                                                                                                                                                                             | - Lanelet map (shoulder lane)                                               | ![pull-over](image/features-pull-over.drawio.svg)                               |
+| Pull Out                                     | Plan path for pull over to start from the road shoulder. <br> <br> Reference implementation is in [Pull Out Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_path_planner/docs/behavior_path_planner_pull_out_design/).                                                                                                                                                                                                                                                                           | - Lanelet map (shoulder lane)                                               | ![pull-out](image/features-pull-out.drawio.svg)                                 |
+| Path Shift                                   | Plan path in lateral direction in response to external instructions. <br> <br> Reference implementation is in [Side Shift Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_path_planner/docs/behavior_path_planner_side_shift_design/).                                                                                                                                                                                                                                                           | - None                                                                      | ![side-shift](image/features-side-shift.drawio.svg)                             |
+| Obstacle Stop                                | Plan velocity to stop for an obstacle on the path. <br> <br> Reference implementation is in [Obstacle Stop Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_stop_planner/), [Obstacle Cruise Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_cruise_planner/). `launch obstacle_stop_planner` and enable flag: `TODO`, `launch obstacle_cruise_planner` and enable flag: `TODO`                                                                           | - objects information                                                       | ![obstacle-stop](image/features-obstacle-stop.drawio.svg)                       |
+| Obstacle Deceleration                        | Plan velocity to decelerate for an obstacle located around the path. <br> <br> Reference implementation is in [Obstacle Stop Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_stop_planner/), [Obstacle Cruise Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_cruise_planner/).                                                                                                                                                                          | - objects information                                                       | ![obstacle-decel](image/features-obstacle-decel.drawio.svg)                     |
+| Adaptive Cruise Control                      | Plan velocity to follow the vehicle driving in front of the ego vehicle. <br> <br> Reference implementation is in [Obstacle Stop Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_stop_planner/), [Obstacle Cruise Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_cruise_planner/).                                                                                                                                                                      | - objects information                                                       | ![adaptive-cruise](image/features-adaptive-cruise.drawio.svg)                   |
+| Decelerate for cut-in vehicles               | Plan velocity to avoid a risk for cutting-in vehicle to ego lane. <br> <br> Reference implementation is in [Obstacle Cruise Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_cruise_planner/).                                                                                                                                                                                                                                                                                                   | - objects information                                                       | ![cut-in](image/features-cut-in.drawio.svg)                                     |
+| Surround Check at starting                   | Plan velocity to prevent moving when an obstacle exists around the vehicle. <br> <br> Reference implementation is in [Surround Obstacle Checker](https://autowarefoundation.github.io/autoware.universe/main/planning/surround_obstacle_checker/). Enable flag in parameter: `use_surround_obstacle_check true` in [tier4_planning_component.launch.xml](https://github.com/autowarefoundation/autoware_launch/blob/2850d7f4e20b173fde2183d5323debbe0067a990/autoware_launch/launch/components/tier4_planning_component.launch.xml#L8) | - objects information                                                       | ![surround-check](image/features-surround-check.drawio.svg)                     |
+| Curve Deceleration                           | Plan velocity to decelerate the speed on a curve. <br> <br> Reference implementation is in [Motion Velocity Smoother](https://autowarefoundation.github.io/autoware.universe/main/planning/motion_velocity_smoother/).                                                                                                                                                                                                                                                                                                                 | - None                                                                      | ![decel-on-curve](image/features-decel-on-curve.drawio.svg)                     |
+| Curve Deceleration for Obstacle              | Plan velocity to decelerate the speed on a curve for a risk of obstacle collision around the path. <br> <br> Reference implementation is in [Obstacle Velocity Limiter](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_velocity_limiter/).                                                                                                                                                                                                                                                              | - objects information <br> - Lanelet map (static obstacle)                  | ![decel-on-curve-obstacles](image/features-decel-on-curve-obstacles.drawio.svg) |
+| Crosswalk                                    | Plan velocity to stop or decelerate for pedestrians approaching or walking on a crosswalk. <br> <br> Reference implementation is in [Crosswalk Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_crosswalk_module/docs/crosswalk-design/).                                                                                                                                                                                                                                                | - objects information <br> - Lanelet map (pedestrian crossing)              | ![crosswalk](image/features-crosswalk.drawio.svg)                               |
+| Intersection Oncoming Vehicle Check          | Plan velocity for turning right/left at intersection to avoid a risk with oncoming other vehicles. <br> <br> Reference implementation is in [Intersection Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_intersection_module/docs/intersection-design/).                                                                                                                                                                                                                               | - objects information <br> - Lanelet map (intersection lane and yield lane) | ![intersection](image/features-intersection.drawio.svg)                         |
+| Intersection Blind Spot Check                | Plan velocity for turning right/left at intersection to avoid a risk with other vehicles or motorcycles coming from behind blind spot. <br> <br> Reference implementation is in [Intersection Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_intersection_module/docs/intersection-design/).                                                                                                                                                                                           | - objects information <br> - Lanelet map (intersection lane)                | ![blind-spot](image/features-blind-spot.drawio.svg)                             |
+| Intersection Occlusion Check                 | Plan velocity for turning right/left at intersection to avoid a risk with the possibility of coming vehicles from occlusion area. <br> <br> Reference implementation is in [Intersection Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_intersection_module/docs/intersection-design/).                                                                                                                                                                                                | - objects information <br> - Lanelet map (intersection lane)                | ![intersection-occlusion](image/features-intersection-occlusion.drawio.svg)     |
+| Intersection Traffic Jam Detection           | Plan velocity for intersection not to enter the intersection when a vehicle is stopped ahead for a traffic jam. <br> <br> Reference implementation is in [Intersection Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_intersection_module/docs/intersection-design/).                                                                                                                                                                                                                  | - objects information <br> - Lanelet map (intersection lane)                | ![intersection-traffic-jam](image/features-intersection-traffic-jam.drawio.svg) |
+| Traffic Light                                | Plan velocity for intersection according to a traffic light signal. <br> <br> Reference implementation is in [Traffic Light Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_traffic_light_module/docs/traffic-light-design/).                                                                                                                                                                                                                                                           | - Traffic light color information                                           | ![traffic-light](image/features-traffic-light.drawio.svg)                       |
+| Run-out Check                                | Plan velocity to decelerate for the possibility of nearby objects running out into the path. <br> <br> Reference implementation is in [Run Out Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_run_out_module/docs/run-out-design/).                                                                                                                                                                                                                                                    | - objects information                                                       | ![run-out](image/features-run-out.drawio.svg)                                   |
+| Stop Line                                    | Plan velocity to stop at a stop line. <br> <br> Reference implementation is in [Stop Line Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_stop_line_module/docs/stop-line-design/).                                                                                                                                                                                                                                                                                                     | - Lanelet map (stop line)                                                   | ![stop-line](image/features-stop-line.drawio.svg)                               |
+| Occlusion Spot Check                         | Plan velocity to decelerate for objects running out from occlusion area, for example, from behind a large vehicle. <br> <br> Reference implementation is in [Occlusion Spot Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_occlusion_spot_module/docs/occlusion-spot-design/).                                                                                                                                                                                                         | - objects information <br> - Lanelet map (private/public lane)              | ![occlusion-spot](image/features-occlusion-spot.drawio.svg)                     |
+| No Stop Area                                 | Plan velocity not to stop in areas where stopping is prohibited, such as in front of the fire station entrance. <br> <br> Reference implementation is in [No Stopping Area Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_no_stopping_area_module/docs/no-stopping-area-design/).                                                                                                                                                                                                      | - Lanelet map (no stopping area)                                            | ![no-stopping-area](image/features-no-stopping-area.drawio.svg)                 |
+| Merge from Private Area to Public Road       | Plan velocity for entering the public road from a private driveway to avoid a risk of collision with pedestrians or other vehicles. <br> <br> Reference implementation is in [Merge from Private Area Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_intersection_module/docs/merge-from-private-design/).                                                                                                                                                                             | - objects information <br> - Lanelet map (private/public lane)              | WIP                                                                             |
+| Speed Bump                                   | Plan velocity to decelerate for speed bumps. <br> <br> Reference implementation is in [Speed Bump Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_speed_bump_module/docs/speed-bump-design/).                                                                                                                                                                                                                                                                                           | - Lanelet map (speed bump)                                                  | ![speed-bump](image/features-speed-bump.drawio.svg)                             |
+| Detection Area                               | Plan velocity to stop at the corresponding stop when an object exist in the designated detection area. <br> <br> Reference implementation is in [Detection Area Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_detection_area_module/docs/detection-area-design/).                                                                                                                                                                                                                     | - Lanelet map (detection area)                                              | ![detection-area](image/features-detection-area.drawio.svg)                     |
+| Out of ODD area                              | Plan velocity to stop before exiting the area designated by ODD (Operational Design Domain). <br> <br> Reference implementation is in (WIP).                                                                                                                                                                                                                                                                                                                                                                                           | - Lanelet map (invalid lanelet)                                             | WIP                                                                             |
+| Collision Detection when deviating from lane | Plan velocity to avoid conflict with other vehicles driving in the another lane when the ego vehicle is deviating from own lane. <br> <br> Reference implementation is in [Out of Lane Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_out_of_lane_module/docs/out-of-lane-design/).                                                                                                                                                                                                    | - objects information <br> - Lanelet map (driving lane)                     | WIP                                                                             |
+| Parking                                      | Plan path and velocity for given goal in parking area. <br> <br> Reference implementation is in [Free Space Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/freespace_planner/).                                                                                                                                                                                                                                                                                                                         | - objects information <br> - Lanelet map (parking area)                     | ![parking](image/features-parking.drawio.svg)                                   |
+| Autonomous Emergency Braking (AEB)           | Perform an emergency stop if a collision with an object ahead is anticipated. It is noted that this function is expected as a final safety layer, and this should work even in the event of failures in the Localization or Perception system. <br> <br> Reference implementation is in [Out of Lane Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_out_of_lane_module/docs/out-of-lane-design/).                                                                                      | - Primitive objects                                                         | ![aeb](image/features-aeb.drawio.svg)                                           |
+| Minimum Risk Maneuver (MRM)                  | Provide appropriate MRM (Minimum Risk Maneuver) instructions when a hazardous event occurs. For example, when a sensor trouble found, send an instruction for emergency braking, moderate stop, or pulling over to the shoulder, depending on the severity of the situation. <br> <br> Reference implementation is in TODO                                                                                                                                                                                                             | - TODO                                                                      | WIP                                                                             |
+| Trajectory Validation                        | Check the planned trajectory is safe. If it is unsafe, take appropriate action, such as modify the trajectory, stop sending the trajectory or report to the autonomous driving system. <br> <br> Reference implementation is in [Planning Validator](https://autowarefoundation.github.io/autoware.universe/main/planning/planning_validator/).                                                                                                                                                                                        | - None                                                                      | ![trajectory-validation](image/features-trajectory-validation.drawio.svg)       |
+| Running Lane Map Generation                  | Generate lane map from localization data recorded in manual driving. <br> <br> Reference implementation is in WIP                                                                                                                                                                                                                                                                                                                                                                                                                      | - None                                                                      | WIP                                                                             |
+| Running Lane Optimization                    | Optimize the centerline (reference path) of the map to make it smooth considering the vehicle kinematics. <br> <br> Reference implementation is in [Static Centerline Optimizer](https://autowarefoundation.github.io/autoware.universe/main/planning/static_centerline_optimizer/).                                                                                                                                                                                                                                                   | - Lanelet map (driving lanes)                                               | WIP                                                                             |
+
+<!-- ![supported-functions](image/planning-functions.drawio.svg) -->
+
+### Reference Implementation
+
+The following diagram describes the reference implementation of the Planning component. By adding new modules or extending the functionalities, various ODDs can be supported.
+
+_Note that some implementation does not adhere to the high-level architecture design due to the difficulties of the implementation and require updating._
+
+ハイレベルなデザインと比較したときの重要な違いは、「シナリオレイヤーの導入」と「behavior/motionの明確な分離」です。これらは現時点での性能や実装的な課題から導入されています。これらをハイレベルなデザインとして定義するか、それとも実装の一部として改良していくかは議論の必要があります。
+
+
+
+![reference-implementation](image/planning-diagram.drawio.svg)
+
+For more details, please refer to the design documents in each package.
+
+- [_mission_planner_](https://autowarefoundation.github.io/autoware.universe/main/planning/mission_planner/): calculate route from start to goal based on the map information.
+- [_behavior_path_planner_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_path_planner/): calculates path and drivable area based on the traffic rules.
+  - [_lane_following_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_path_planner/#lane-following)
+  - [_lane_change_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_path_planner/#lane-change)
+  - [_avoidance_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_path_planner/#avoidance)
+  - [_pull_over_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_path_planner/#pull-over)
+  - [_pull_out_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_path_planner/#pull-out)
+  - _side_shift_
+- [_behavior_velocity_planner_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_planner/): calculates max speed based on the traffic rules.
+  - [_detection_area_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_detection_area_module/docs/detection-area-design/)
+  - [_blind_spot_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_blind_spot_module/docs/blind-spot-design/)
+  - [_cross_walk_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_crosswalk_module/docs/crosswalk-design/)
+  - [_stop_line_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_stop_line_module/docs/stop-line-design/)
+  - [_traffic_light_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_traffic_light_module/docs/traffic-light-design/)
+  - [_intersection_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_intersection_module/docs/intersection-design/)
+  - [_no_stopping_area_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_no_stopping_area_module/docs/no-stopping-area-design/)
+  - [_virtual_traffic_light_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_virtual_traffic_light_module/docs/virtual-traffic-light-design/)
+  - [_occlusion_spot_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_occlusion_spot_module/docs/occlusion-spot-design/)
+  - [_run_out_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_run_out_module/docs/run-out-design/)
+- [_obstacle_avoidance_planner_](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_avoidance_planner/): calculate path shape under obstacle and drivable area constraints
+- [_surround_obstacle_checker_](https://autowarefoundation.github.io/autoware.universe/main/planning/surround_obstacle_checker/): keeps the vehicle being stopped when there are obstacles around the ego-vehicle. It works only when the vehicle is stopped.
+- [_obstacle_stop_planner_](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_stop_planner/): When there are obstacles on or near the trajectory, it calculates the maximum velocity of the trajectory points depending on the situation: stopping, slowing down, or adaptive cruise (following the car).
+  - [_stop_](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_stop_planner/#obstacle-stop-planner_1)
+  - [_slow_down_](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_stop_planner/#slow-down-planner)
+  - [_adaptive_cruise_](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_stop_planner/#adaptive-cruise-controller)
+- [_costmap_generator_](https://autowarefoundation.github.io/autoware.universe/main/planning/costmap_generator/): generates a costmap for path generation from dynamic objects and lane information.
+- [_freespace_planner_](https://autowarefoundation.github.io/autoware.universe/main/planning/freespace_planner/): calculates trajectory considering the feasibility (e.g. curvature) for the freespace scene. Algorithms are described [here](https://autowarefoundation.github.io/autoware.universe/main/planning/freespace_planning_algorithms/).
+- _scenario_selector_ : chooses a trajectory according to the current scenario.
+- [_external_velocity_limit_selector_](https://autowarefoundation.github.io/autoware.universe/main/planning/external_velocity_limit_selector/): takes an appropriate velocity limit from multiple candidates.
+- [_motion_velocity_smoother_](https://autowarefoundation.github.io/autoware.universe/main/planning/motion_velocity_smoother/): calculates final velocity considering velocity, acceleration, and jerk constraints.
+
+
+### Important information in the current implementation
+
+#### Introducing the Scenario Planning layer
+There are different requirements for interfaces between driving in well-structured lanes and driving in a free-space area like a parking lot. For example, while Lane Driving can handle routes with map IDs, this is not appropriate for planning in free space. The mechanism that switches planning sub-components at the scenario level (Lane Driving, Parking, etc) enables a flexible design of the interface, however, it has a drawbacks of the reuse of modules across different scenarios.
+
+#### Separation of Behavior and Motion
+One of the classic approach to Planning involves dividing it into "Behavior", which decides the action, and "Motion", which determines the final movement. However, this separation implies a trade-off with performance, as performance tends to degrade with increasing separation of functions. For example, Behavior needs to make decisions without prior knowledge of the computations that Motion will eventually perform, which generally results in conservative decision-making. On the other hand, if behavior and motion are integrated, motion performance and decision-making become interdependent, creating challenges in terms of expandability, such as when you wish to extend only the decision-making function to follow a regional traffic rules.
+
+To understand this background, this [previously discussed document](https://github.com/tier4/AutowareArchitectureProposal.proj/blob/main/docs/design/software_architecture/Planning/DesignRationale.md) may be useful.
+
+### How to add new modules in the current implementation
+
+現時点の実装でもモジュールレベルの機能の追加は可能ですが、全ての機能に対して統一的なインターフェースは提供されていません。
+
+
+- Replace with scenario layer.
+- Add new modules in behavior_velocity_planner or behavior_path_palnner
+- Add a new ros node in the motion planning
+
+### Important Parameters
+
+| Package                      | Parameter                                                     | Type   | Description                                                                                                        |
+| ---------------------------- | ------------------------------------------------------------- | ------ | ------------------------------------------------------------------------------------------------------------------ |
+| `obstacle_stop_planner`      | `stop_planner.stop_position.max_longitudinal_margin`          | double | distance between the ego and the front vehicle when stopping (when `cruise_planner_type:=obstacle_stop_planner`)   |
+| `obstacle_cruise_planner`    | `common.safe_distance_margin`                                 | double | distance between the ego and the front vehicle when stopping (when `cruise_planner_type:=obstacle_cruise_planner`) |
+| `behavior_path_planner`      | `avoidance.avoidance.lateral.lateral_collision_margin`        | double | minimum lateral margin to obstacle on avoidance                                                                    |
+| `behavior_path_planner`      | `avoidance.avoidance.lateral.lateral_collision_safety_buffer` | double | additional lateral margin to obstacle if possible on avoidance                                                     |
+| `obstacle_avoidance_planner` | `option.enable_outside_drivable_area_stop`                    | bool   | If set true, a stop point will be inserted before the path footprint is outside the drivable area.                 |
+
+### Notation
+
+#### [1] self-crossing road and overlapped
+
+To support the self-crossing road and overlapped road in the opposite direction, each planning module has to meet the [specifications](https://autowarefoundation.github.io/autoware.universe/main/common/motion_utils/)
+
+Currently, the supported modules are as follows.
+
+- lane_following (in behavior_path_planner)
+- detection_area (in behavior_velocity_planner)
+- stop_line (in behavior_velocity_planner)
+- virtual_traffic_light (in behavior_velocity_planner)
+- obstacle_avoidance_planner
+- obstacle_stop_planner
+- motion_velocity_smoother
+
+#### [2] Size of Path Points
+
+Some functions do not support paths with only one point. Therefore, each modules should generate the path with more than two path points.

From 62a5370e7fe070ffa2e3e348038ea00482849e52 Mon Sep 17 00:00:00 2001
From: Takamasa Horibe <horibe.takamasa@gmail.com>
Date: Sun, 19 Nov 2023 16:53:16 +0900
Subject: [PATCH 14/19] update

Signed-off-by: Takamasa Horibe <horibe.takamasa@gmail.com>
---
 ...mp.svg => planning-diagram-tmp.drawio.svg} |  294 +++--
 ...-implementation-add-new-modules.drawio.svg | 1116 +++++++++++++++++
 .../planning/index-update.md                  |  110 +-
 3 files changed, 1369 insertions(+), 151 deletions(-)
 rename docs/design/autoware-architecture/planning/image/{planning-diagram.drawio-tmp.svg => planning-diagram-tmp.drawio.svg} (81%)
 create mode 100644 docs/design/autoware-architecture/planning/image/reference-implementation-add-new-modules.drawio.svg

diff --git a/docs/design/autoware-architecture/planning/image/planning-diagram.drawio-tmp.svg b/docs/design/autoware-architecture/planning/image/planning-diagram-tmp.drawio.svg
similarity index 81%
rename from docs/design/autoware-architecture/planning/image/planning-diagram.drawio-tmp.svg
rename to docs/design/autoware-architecture/planning/image/planning-diagram-tmp.drawio.svg
index 8ffebd0ffb6..a0bf68c99c2 100644
--- a/docs/design/autoware-architecture/planning/image/planning-diagram.drawio-tmp.svg
+++ b/docs/design/autoware-architecture/planning/image/planning-diagram-tmp.drawio.svg
@@ -1,4 +1,4 @@
-<svg host="65bd71144e" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="1521px" height="2091px" viewBox="-0.5 -0.5 1521 2091" content="&lt;mxfile&gt;&lt;diagram id=&quot;8qt1-HtFgWOiWtJ-FPd8&quot; name=&quot;planning (v0.13.0)&quot;&gt;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&lt;/diagram&gt;&lt;/mxfile&gt;">
+<svg host="65bd71144e" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="1682px" height="2091px" viewBox="-0.5 -0.5 1682 2091" content="&lt;mxfile&gt;&lt;diagram id=&quot;8qt1-HtFgWOiWtJ-FPd8&quot; name=&quot;planning (v0.13.0)&quot;&gt;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&lt;/diagram&gt;&lt;/mxfile&gt;">
     <defs/>
     <g>
         <rect x="470" y="140" width="850" height="1880" fill="#fffdf5" stroke="rgb(0, 0, 0)" pointer-events="all"/>
@@ -25,10 +25,10 @@
                 </text>
             </switch>
         </g>
-        <path d="M 895 260 L 895 310 L 700 310 L 700 438.03" fill="none" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 895 260 L 895 310 L 699.96 310 L 700 438.03" fill="none" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
         <path d="M 700 445.53 L 695 435.53 L 700 438.03 L 705 435.53 Z" fill="#d4b455" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
-        <path d="M 895 260 L 895 310 L 980 310 L 980 593.57 L 1028.03 593.51" fill="none" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 1035.53 593.51 L 1025.53 598.52 L 1028.03 593.51 L 1025.52 588.52 Z" fill="#d4b455" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
+        <path d="M 895 260 L 895 310 L 979.96 310 L 979.96 593.48 L 1028.03 593.5" fill="none" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 1035.53 593.5 L 1025.53 598.49 L 1028.03 593.5 L 1025.53 588.49 Z" fill="#d4b455" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
@@ -64,12 +64,12 @@
                 </switch>
             </g>
         </a>
-        <path d="M 700 660 L 700 708.03" fill="none" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 700 715.53 L 695 705.53 L 700 708.03 L 705 705.53 Z" fill="#d4b455" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
+        <path d="M 700 660 L 700 695.03" fill="none" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 700 702.53 L 695 692.53 L 700 695.03 L 705 692.53 Z" fill="#d4b455" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 690px; margin-left: 700px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 683px; margin-left: 700px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
                                 path_with_lane_id
@@ -77,7 +77,7 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="700" y="693" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="700" y="687" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     path_with_lane_id
                 </text>
             </switch>
@@ -85,12 +85,12 @@
         <a xlink:href="https://github.com/autowarefoundation/autoware.universe/tree/main/planning/behavior_path_planner">
             <rect x="590" y="450" width="220" height="210" rx="10.5" ry="10.5" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
         </a>
-        <path d="M 700 1090 L 700 1208.03" fill="none" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 700 1097 L 700 1208.03" fill="none" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
         <path d="M 700 1215.53 L 695 1205.53 L 700 1208.03 L 705 1205.53 Z" fill="#d4b455" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1150px; margin-left: 700px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1154px; margin-left: 700px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
                                 path
@@ -98,20 +98,20 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="700" y="1153" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="700" y="1157" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     path
                 </text>
             </switch>
         </g>
         <a xlink:href="https://github.com/autowarefoundation/autoware.universe/tree/main/planning/behavior_velocity_planner">
-            <rect x="590" y="720" width="220" height="370" rx="8.8" ry="8.8" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+            <rect x="590" y="707" width="220" height="390" rx="8.8" ry="8.8" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
         </a>
         <path d="M 700 1270 L 700 1298.03" fill="none" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
         <path d="M 700 1305.53 L 695 1295.53 L 700 1298.03 L 705 1295.53 Z" fill="#d4b455" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1281px; margin-left: 701px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1282px; margin-left: 701px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
                                 Trajectory
@@ -182,12 +182,12 @@
                 </switch>
             </g>
         </a>
-        <path d="M 700 1540 L 700 1630 L 810 1630 L 810 1668.03" fill="none" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 810 1675.53 L 805 1665.53 L 810 1668.03 L 815 1665.53 Z" fill="#d4b455" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
+        <path d="M 700 1540 L 699.96 1630 L 809.96 1630 L 809.99 1668.03" fill="none" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 810 1675.53 L 804.99 1665.53 L 809.99 1668.03 L 814.99 1665.52 Z" fill="#d4b455" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1631px; margin-left: 763px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1630px; margin-left: 763px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
                                 Trajectory
@@ -245,7 +245,7 @@
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1900px; margin-left: 896px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1900px; margin-left: 895px;">
                         <div data-drawio-colors="color: #666666; background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(102, 102, 102); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
                                 <font color="#000000">
@@ -255,7 +255,7 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="896" y="1903" fill="#666666" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="895" y="1904" fill="#666666" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     Trajectory
                 </text>
             </switch>
@@ -281,12 +281,12 @@
                 </switch>
             </g>
         </a>
-        <path d="M 1110 617 L 1110 1630 L 980 1630 L 980 1668.03" fill="none" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 980 1675.53 L 975 1665.53 L 980 1668.03 L 985 1665.53 Z" fill="#d4b455" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
+        <path d="M 1109.96 617 L 1109.96 1630 L 979.96 1630 L 979.99 1668.03" fill="none" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 980 1675.53 L 974.99 1665.53 L 979.99 1668.03 L 984.99 1665.52 Z" fill="#d4b455" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1630px; margin-left: 1058px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1629px; margin-left: 1057px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
                                 Trajectory
@@ -294,7 +294,7 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="1058" y="1633" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="1057" y="1633" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     Trajectory
                 </text>
             </switch>
@@ -323,7 +323,7 @@
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 521px; margin-left: 1110px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 522px; margin-left: 1110px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
                                 occupancy_grid
@@ -402,7 +402,7 @@
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 86px; margin-left: 840px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 85px; margin-left: 839px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
                                 goal
@@ -410,12 +410,12 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="840" y="89" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="839" y="88" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     goal
                 </text>
             </switch>
         </g>
-        <path d="M 440 240 L 440 235 L 606.76 235" fill="none" stroke="#b83232" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 440 240 L 439.96 234.96 L 606.76 235" fill="none" stroke="#b83232" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
         <path d="M 612.76 235 L 604.76 239 L 606.76 235 L 604.76 231 Z" fill="#b83232" stroke="#b83232" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
         <rect x="600" y="1425" width="60" height="50" fill="none" stroke="none" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
@@ -548,9 +548,9 @@
                 </text>
             </switch>
         </g>
-        <path d="M 440 240 L 440 905 L 581.76 905" fill="none" stroke="#b83232" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 587.76 905 L 579.76 909 L 581.76 905 L 579.76 901 Z" fill="#b83232" stroke="#b83232" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
-        <path d="M 440 240 L 440 559.57 L 581.1 559.62" fill="none" stroke="#b83232" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 440 240 L 439.96 902 L 581.76 902" fill="none" stroke="#b83232" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 587.76 902 L 579.76 906 L 581.76 902 L 579.76 898 Z" fill="#b83232" stroke="#b83232" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <path d="M 440 240 L 439.96 559.57 L 581.1 559.62" fill="none" stroke="#b83232" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
         <path d="M 587.1 559.62 L 579.1 563.62 L 581.1 559.62 L 579.11 555.62 Z" fill="#b83232" stroke="#b83232" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
         <rect x="470" y="2050" width="850" height="40" fill="#fad7ac" stroke="#b46504" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
@@ -569,8 +569,8 @@
                 </text>
             </switch>
         </g>
-        <path d="M 1410 311 L 1360 311 L 1360 412.57 L 1188.24 412.5" fill="none" stroke="#b83232" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 1182.24 412.5 L 1190.24 408.5 L 1188.24 412.5 L 1190.23 416.5 Z" fill="#b83232" stroke="#b83232" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <path d="M 1410 311 L 1360.04 311.04 L 1360.04 412.52 L 1188.24 412.5" fill="none" stroke="#b83232" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 1182.24 412.5 L 1190.24 408.5 L 1188.24 412.5 L 1190.24 416.5 Z" fill="#b83232" stroke="#b83232" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
@@ -587,12 +587,12 @@
                 </text>
             </switch>
         </g>
-        <path d="M 249 501 L 436 501.82 C 436.02 496.62 444.02 496.66 444 501.86 L 444 501.86 L 581.76 502.46" fill="none" stroke="#7cab62" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 249 501 L 439.96 501.84 L 439.98 501.84 L 581.76 502.46" fill="none" stroke="#7cab62" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
         <path d="M 587.76 502.49 L 579.75 506.45 L 581.76 502.46 L 579.78 498.46 Z" fill="#7cab62" stroke="#7cab62" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 502px; margin-left: 345px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 502px; margin-left: 344px;">
                         <div data-drawio-colors="color: #000000; background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
                                 Dynamic Objects
@@ -600,12 +600,12 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="345" y="505" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="344" y="505" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     Dynamic Objects
                 </text>
             </switch>
         </g>
-        <path d="M 160 785 L 436 785.64 C 436.01 780.44 444.01 780.46 444 785.66 L 444 785.66 L 581.76 785.98" fill="none" stroke="#7cab62" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 160 785 L 435.96 785.64 C 435.98 780.44 443.98 780.46 443.96 785.66 L 443.96 785.66 L 581.76 785.98" fill="none" stroke="#7cab62" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
         <path d="M 587.76 785.99 L 579.75 789.98 L 581.76 785.98 L 579.77 781.98 Z" fill="#7cab62" stroke="#7cab62" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
@@ -646,7 +646,7 @@
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1436px; margin-left: 347px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1435px; margin-left: 347px;">
                         <div data-drawio-colors="color: #000000; background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
                                 Dynamic Objects
@@ -659,12 +659,12 @@
                 </text>
             </switch>
         </g>
-        <path d="M 248 830 L 436 829.94 C 436 824.74 444 824.74 444 829.94 L 444 829.94 L 579.78 829.89" fill="none" stroke="#82b366" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 585.78 829.89 L 577.79 833.89 L 579.78 829.89 L 577.78 825.89 Z" fill="#82b366" stroke="#82b366" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <path d="M 248 830 L 435.96 830 C 435.96 824.8 443.96 824.8 443.96 830 L 443.96 830 L 581.76 830" fill="none" stroke="#82b366" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 587.76 830 L 579.76 834 L 581.76 830 L 579.76 826 Z" fill="#82b366" stroke="#82b366" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 830px; margin-left: 326px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 829px; margin-left: 326px;">
                         <div data-drawio-colors="color: #000000; background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
                                 Obstacle Points
@@ -682,7 +682,7 @@
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1346px; margin-left: 328px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1346px; margin-left: 327px;">
                         <div data-drawio-colors="color: #000000; background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
                                 Obstacle Points
@@ -690,7 +690,7 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="328" y="1349" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="327" y="1349" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     Obstacle Points
                 </text>
             </switch>
@@ -700,7 +700,7 @@
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1246px; margin-left: 345px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1245px; margin-left: 345px;">
                         <div data-drawio-colors="color: #000000; background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
                                 Dynamic Objects
@@ -749,7 +749,7 @@
                 </text>
             </switch>
         </g>
-        <path d="M 440 240 L 440 1710 L 716.76 1710" fill="none" stroke="#b83232" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 440 240 L 439.96 1710 L 716.76 1710" fill="none" stroke="#b83232" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
         <path d="M 722.76 1710 L 714.76 1714 L 716.76 1710 L 714.76 1706 Z" fill="#b83232" stroke="#b83232" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
         <path d="M 250 1765.24 L 459.21 1766.16" fill="none" stroke="#5899db" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
         <path d="M 465.21 1766.19 L 457.2 1770.15 L 459.21 1766.16 L 457.23 1762.15 Z" fill="#5899db" stroke="#5899db" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
@@ -764,7 +764,7 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="332" y="1768" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="332" y="1767" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     vehicle_state
                 </text>
             </switch>
@@ -788,12 +788,12 @@
                 </text>
             </switch>
         </g>
-        <path d="M 41 608 L 436 607.64 C 436 602.44 444 602.43 444 607.63 L 444 607.63 L 581.76 607.51" fill="none" stroke="#808080" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 41 608 L 439.98 607.64 L 439.99 607.64 L 581.76 607.51" fill="none" stroke="#808080" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
         <path d="M 587.76 607.5 L 579.77 611.51 L 581.76 607.51 L 579.76 603.51 Z" fill="#808080" stroke="#808080" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 609px; margin-left: 307px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 609px; margin-left: 308px;">
                         <div data-drawio-colors="color: #000000; background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
                                 approval,
@@ -803,12 +803,12 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="307" y="613" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="308" y="612" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     approval,...
                 </text>
             </switch>
         </g>
-        <path d="M 35 970 L 436 970.72 C 436.01 965.52 444.01 965.54 444 970.74 L 444 970.74 L 581.76 970.99" fill="none" stroke="#808080" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 35 970 L 435.98 970.72 C 435.99 965.52 443.99 965.54 443.98 970.74 L 443.98 970.74 L 581.76 970.99" fill="none" stroke="#808080" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
         <path d="M 587.76 971 L 579.76 974.98 L 581.76 970.99 L 579.77 966.98 Z" fill="#808080" stroke="#808080" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
@@ -825,7 +825,7 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="341" y="969" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="341" y="968" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     external_crosswalk_states,...
                 </text>
             </switch>
@@ -847,12 +847,12 @@
                 </text>
             </switch>
         </g>
-        <path d="M 250 750 L 436 750 C 436 744.8 444 744.8 444 750 L 444 750 L 581.76 750" fill="none" stroke="#7cab62" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 250 750 L 439.97 750 L 439.98 750 L 581.76 750" fill="none" stroke="#7cab62" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
         <path d="M 587.76 750 L 579.76 754 L 581.76 750 L 579.76 746 Z" fill="#7cab62" stroke="#7cab62" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 751px; margin-left: 330px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 750px; margin-left: 329px;">
                         <div data-drawio-colors="color: #000000; background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
                                 Traffic Light States
@@ -860,12 +860,12 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="330" y="754" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="329" y="754" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     Traffic Light States
                 </text>
             </switch>
         </g>
-        <path d="M 41 1510.5 L 436 1510.14 C 436 1504.94 444 1504.93 444 1510.13 L 444 1510.13 L 581.76 1510.01" fill="none" stroke="#808080" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 41 1510.5 L 435.96 1510.14 C 435.96 1504.94 443.96 1504.93 443.96 1510.13 L 443.96 1510.13 L 581.76 1510.01" fill="none" stroke="#808080" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
         <path d="M 587.76 1510 L 579.77 1514.01 L 581.76 1510.01 L 579.76 1506.01 Z" fill="#808080" stroke="#808080" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
@@ -905,7 +905,7 @@
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1851px; margin-left: 302px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1850px; margin-left: 302px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
                                 velocity_limit
@@ -939,8 +939,8 @@
                 </text>
             </switch>
         </g>
-        <path d="M 1410 545 L 1360 545 L 1360 457.57 L 1188.24 457.5" fill="none" stroke="#97d077" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 1182.24 457.5 L 1190.24 453.5 L 1188.24 457.5 L 1190.23 461.5 Z" fill="#97d077" stroke="#97d077" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <path d="M 1410 545 L 1360.04 544.96 L 1360.04 457.48 L 1188.24 457.5" fill="none" stroke="#97d077" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 1182.24 457.5 L 1190.24 453.5 L 1188.24 457.5 L 1190.24 461.5 Z" fill="#97d077" stroke="#97d077" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
         <path d="M 650 1850 L 806.76 1850" fill="none" stroke="#d6b656" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
         <path d="M 812.76 1850 L 804.76 1854 L 806.76 1850 L 804.76 1846 Z" fill="#d6b656" stroke="#d6b656" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
         <rect x="530" y="1820" width="120" height="60" rx="9" ry="9" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
@@ -967,7 +967,7 @@
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1796px; margin-left: 590px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1795px; margin-left: 590px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
                                 velocity_limit
@@ -981,7 +981,7 @@
                 </text>
             </switch>
         </g>
-        <rect x="672.5" y="525" width="120" height="27.54" rx="4.13" ry="4.13" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <rect x="672.5" y="525" width="120" height="27.54" rx="4.13" ry="4.13" fill="#fad7ac" stroke="#b46504" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
@@ -998,7 +998,7 @@
                 </text>
             </switch>
         </g>
-        <rect x="672.5" y="557" width="120" height="27.54" rx="4.13" ry="4.13" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <rect x="672.5" y="557" width="120" height="27.54" rx="4.13" ry="4.13" fill="#fad7ac" stroke="#b46504" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
@@ -1015,7 +1015,7 @@
                 </text>
             </switch>
         </g>
-        <rect x="672.5" y="492" width="120" height="27.54" rx="4.13" ry="4.13" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <rect x="672.5" y="492" width="120" height="27.54" rx="4.13" ry="4.13" fill="#fad7ac" stroke="#b46504" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
@@ -1032,7 +1032,7 @@
                 </text>
             </switch>
         </g>
-        <rect x="672.5" y="460" width="120" height="27.54" rx="4.13" ry="4.13" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <rect x="672.5" y="460" width="120" height="27.54" rx="4.13" ry="4.13" fill="#fad7ac" stroke="#b46504" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
@@ -1049,7 +1049,7 @@
                 </text>
             </switch>
         </g>
-        <rect x="672.5" y="590" width="120" height="27.54" rx="4.13" ry="4.13" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <rect x="672.5" y="590" width="120" height="27.54" rx="4.13" ry="4.13" fill="#fad7ac" stroke="#b46504" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
@@ -1066,7 +1066,7 @@
                 </text>
             </switch>
         </g>
-        <rect x="672.5" y="622.46" width="120" height="27.54" rx="4.13" ry="4.13" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <rect x="672.5" y="622.46" width="120" height="27.54" rx="4.13" ry="4.13" fill="#fad7ac" stroke="#b46504" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
@@ -1083,11 +1083,11 @@
                 </text>
             </switch>
         </g>
-        <rect x="672.5" y="774" width="120" height="26.05" rx="3.91" ry="3.91" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <rect x="672.5" y="755" width="120" height="26.05" rx="3.91" ry="3.91" fill="#fad7ac" stroke="#b46504" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 787px; margin-left: 674px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 768px; margin-left: 674px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
                                 blind_spot
@@ -1095,16 +1095,16 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="733" y="791" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="733" y="772" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     blind_spot
                 </text>
             </switch>
         </g>
-        <rect x="672.5" y="808" width="120" height="26.05" rx="3.91" ry="3.91" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <rect x="672.5" y="789" width="120" height="26.05" rx="3.91" ry="3.91" fill="#fad7ac" stroke="#b46504" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 821px; margin-left: 674px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 802px; margin-left: 674px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
                                 cross_walk
@@ -1112,16 +1112,16 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="733" y="825" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="733" y="806" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     cross_walk
                 </text>
             </switch>
         </g>
-        <rect x="672.5" y="841" width="120" height="26.05" rx="3.91" ry="3.91" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <rect x="672.5" y="822" width="120" height="26.05" rx="3.91" ry="3.91" fill="#fad7ac" stroke="#b46504" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 854px; margin-left: 674px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 835px; margin-left: 674px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
                                 stop_line
@@ -1129,16 +1129,16 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="733" y="858" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="733" y="839" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     stop_line
                 </text>
             </switch>
         </g>
-        <rect x="672.5" y="876" width="120" height="24.32" rx="3.65" ry="3.65" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <rect x="672.5" y="857" width="120" height="24.32" rx="3.65" ry="3.65" fill="#fad7ac" stroke="#b46504" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 888px; margin-left: 674px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 869px; margin-left: 674px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
                                 traffic_light
@@ -1146,16 +1146,16 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="733" y="892" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="733" y="873" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     traffic_light
                 </text>
             </switch>
         </g>
-        <rect x="672.5" y="909" width="120" height="26.05" rx="3.91" ry="3.91" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <rect x="672.5" y="890" width="120" height="26.05" rx="3.91" ry="3.91" fill="#fad7ac" stroke="#b46504" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 922px; margin-left: 674px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 903px; margin-left: 674px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
                                 intersection
@@ -1163,16 +1163,16 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="733" y="926" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="733" y="907" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     intersection
                 </text>
             </switch>
         </g>
-        <rect x="672.5" y="740" width="120" height="26.05" rx="3.91" ry="3.91" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <rect x="672.5" y="721" width="120" height="26.05" rx="3.91" ry="3.91" fill="#fad7ac" stroke="#b46504" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 753px; margin-left: 674px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 734px; margin-left: 674px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
                                 detection_area
@@ -1180,16 +1180,16 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="733" y="757" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="733" y="738" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     detection_area
                 </text>
             </switch>
         </g>
-        <rect x="672.5" y="943" width="120" height="26.05" rx="3.91" ry="3.91" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <rect x="672.5" y="924" width="120" height="26.05" rx="3.91" ry="3.91" fill="#fad7ac" stroke="#b46504" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 956px; margin-left: 674px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 937px; margin-left: 674px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
                                 no_stopping_area
@@ -1197,16 +1197,16 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="733" y="960" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="733" y="941" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     no_stopping_area
                 </text>
             </switch>
         </g>
-        <rect x="672.5" y="976" width="120" height="26.05" rx="3.91" ry="3.91" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <rect x="672.5" y="957" width="120" height="26.05" rx="3.91" ry="3.91" fill="#fad7ac" stroke="#b46504" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 989px; margin-left: 674px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 970px; margin-left: 674px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
                                 virtual_traffic_light
@@ -1214,16 +1214,16 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="733" y="993" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="733" y="974" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     virtual_traffic_light
                 </text>
             </switch>
         </g>
-        <rect x="672.5" y="1010" width="120" height="26.05" rx="3.91" ry="3.91" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <rect x="672.5" y="991" width="120" height="26.05" rx="3.91" ry="3.91" fill="#fad7ac" stroke="#b46504" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 1023px; margin-left: 674px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 1004px; margin-left: 674px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
                                 occlusion_spot
@@ -1231,16 +1231,16 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="733" y="1027" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="733" y="1008" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     occlusion_spot
                 </text>
             </switch>
         </g>
-        <rect x="672.5" y="1043.95" width="120" height="26.05" rx="3.91" ry="3.91" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <rect x="672.5" y="1024.95" width="120" height="26.05" rx="3.91" ry="3.91" fill="#fad7ac" stroke="#b46504" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 1057px; margin-left: 674px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 1038px; margin-left: 674px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
                                 run_out
@@ -1248,7 +1248,7 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="733" y="1061" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                <text x="733" y="1042" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
                     run_out
                 </text>
             </switch>
@@ -1258,7 +1258,7 @@
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 86px; margin-left: 920px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 85px; margin-left: 920px;">
                         <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
                                 check_point
@@ -1266,17 +1266,17 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="920" y="89" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="920" y="88" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     check_point
                 </text>
             </switch>
         </g>
-        <path d="M 250 295 L 440 295 L 440 1335 L 581.76 1335" fill="none" stroke="#b83232" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
-        <path d="M 587.76 1335 L 579.76 1339 L 581.76 1335 L 579.76 1331 Z" fill="#b83232" stroke="#b83232" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <path d="M 250 295 L 439.96 294.96 L 439.96 1335.04 L 581.76 1335" fill="none" stroke="#b83232" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 587.76 1335 L 579.77 1339 L 581.76 1335 L 579.76 1331 Z" fill="#b83232" stroke="#b83232" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 270px; margin-left: 331px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 270px; margin-left: 330px;">
                         <div data-drawio-colors="color: #000000; background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
                                 vector_map
@@ -1284,7 +1284,7 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="331" y="273" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="330" y="273" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     vector_map
                 </text>
             </switch>
@@ -1325,12 +1325,12 @@
                 </text>
             </switch>
         </g>
-        <path d="M 250 1650.24 L 436 1650.06 C 436 1644.86 444 1644.85 444 1650.05 L 444 1650.05 L 491.76 1650.01" fill="none" stroke="#82b366" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 250 1650.24 L 435.96 1650.06 C 435.95 1644.86 443.95 1644.85 443.96 1650.05 L 443.96 1650.05 L 491.76 1650.01" fill="none" stroke="#82b366" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
         <path d="M 497.76 1650 L 489.77 1654.01 L 491.76 1650.01 L 489.76 1646.01 Z" fill="#82b366" stroke="#82b366" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1651px; margin-left: 338px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1651px; margin-left: 337px;">
                         <div data-drawio-colors="color: #000000; background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
                                 Obstacle Points
@@ -1338,17 +1338,17 @@
                         </div>
                     </div>
                 </foreignObject>
-                <text x="338" y="1654" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                <text x="337" y="1654" fill="#000000" font-family="Helvetica" font-size="11px" text-anchor="middle">
                     Obstacle Points
                 </text>
             </switch>
         </g>
-        <path d="M 250 1630 L 436 1630 C 436 1624.8 444 1624.8 444 1630 L 444 1630 L 491.76 1630" fill="none" stroke="#7cab62" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 250 1630 L 435.96 1630 C 435.96 1624.8 443.96 1624.8 443.96 1630 L 443.96 1630 L 491.76 1630" fill="none" stroke="#7cab62" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
         <path d="M 497.76 1630 L 489.76 1634 L 491.76 1630 L 489.76 1626 Z" fill="#7cab62" stroke="#7cab62" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
         <g transform="translate(-0.5 -0.5)">
             <switch>
                 <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
-                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1631px; margin-left: 351px;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1630px; margin-left: 351px;">
                         <div data-drawio-colors="color: #000000; background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
                             <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
                                 Dynamic Objects
@@ -1502,6 +1502,92 @@
                 </text>
             </switch>
         </g>
+        <rect x="672.5" y="1060" width="120" height="26.05" rx="3.91" ry="3.91" fill="#fad7ac" stroke="#b46504" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 1073px; margin-left: 674px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                no_drivable_lane
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="733" y="1077" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    no_drivable_lane
+                </text>
+            </switch>
+        </g>
+        <rect x="1400" y="0" width="280" height="170" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <rect x="1410" y="10" width="90" height="30" fill="none" stroke="none" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 88px; height: 1px; padding-top: 25px; margin-left: 1411px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; overflow-wrap: normal;">
+                                Legend
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1455" y="29" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle" font-weight="bold">
+                    Legend
+                </text>
+            </switch>
+        </g>
+        <rect x="1440" y="44" width="200" height="30" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 59px; margin-left: 1441px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Component
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1540" y="63" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Component
+                </text>
+            </switch>
+        </g>
+        <rect x="1440" y="84" width="200" height="30" rx="4.5" ry="4.5" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 99px; margin-left: 1441px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                ROS Node
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1540" y="103" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    ROS Node
+                </text>
+            </switch>
+        </g>
+        <rect x="1440" y="124" width="200" height="30" rx="4.5" ry="4.5" fill="#ffe6cc" stroke="#d79b00" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 139px; margin-left: 1441px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Modlue Plugin
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1540" y="143" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Modlue Plugin
+                </text>
+            </switch>
+        </g>
     </g>
     <switch>
         <g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/>
diff --git a/docs/design/autoware-architecture/planning/image/reference-implementation-add-new-modules.drawio.svg b/docs/design/autoware-architecture/planning/image/reference-implementation-add-new-modules.drawio.svg
new file mode 100644
index 00000000000..95b32fd914e
--- /dev/null
+++ b/docs/design/autoware-architecture/planning/image/reference-implementation-add-new-modules.drawio.svg
@@ -0,0 +1,1116 @@
+<svg host="65bd71144e" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="1548px" height="1777px" viewBox="-0.5 -0.5 1548 1777" content="&lt;mxfile&gt;&lt;diagram id=&quot;8qt1-HtFgWOiWtJ-FPd8&quot; name=&quot;planning (v0.13.0)&quot;&gt;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&lt;/diagram&gt;&lt;/mxfile&gt;">
+    <defs/>
+    <g>
+        <rect x="0" y="106" width="1200" height="1600" fill="#fffdf5" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <rect x="40" y="156" width="1120" height="90" fill="#fffceb" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <rect x="50" y="1596" width="1120" height="80" fill="#fffceb" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <rect x="40" y="306" width="390" height="1030" fill="#fffceb" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <rect x="80" y="356" width="300" height="520" fill="none" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <rect x="82.5" y="906" width="297.5" height="400" fill="none" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <rect x="480" y="306" width="320" height="1030" fill="#fffceb" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <rect x="490" y="316" width="90" height="30" fill="none" stroke="none" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 88px; height: 1px; padding-top: 331px; margin-left: 491px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; overflow-wrap: normal;">
+                                Parking Scenario
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="535" y="335" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle" font-weight="bold">
+                    Parking Scenario
+                </text>
+            </switch>
+        </g>
+        <a xlink:href="https://github.com/autowarefoundation/autoware.universe/tree/main/planning/mission_planner">
+            <rect x="340" y="176" width="560" height="50" rx="7.5" ry="7.5" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+            <g transform="translate(-0.5 -0.5)">
+                <switch>
+                    <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                        <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 558px; height: 1px; padding-top: 201px; margin-left: 341px;">
+                            <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                                <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                    mission_planner
+                                </div>
+                            </div>
+                        </div>
+                    </foreignObject>
+                    <text x="620" y="205" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                        mission_planner
+                    </text>
+                </switch>
+            </g>
+        </a>
+        <path d="M 230 546 L 230 581.03" fill="none" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 230 588.53 L 225 578.53 L 230 581.03 L 235 578.53 Z" fill="#d4b455" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 570px; margin-left: 230px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                path_with_lane_id
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="230" y="573" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    path_with_lane_id
+                </text>
+            </switch>
+        </g>
+        <a xlink:href="https://github.com/autowarefoundation/autoware.universe/tree/main/planning/behavior_path_planner">
+            <rect x="120" y="396" width="220" height="150" rx="7.5" ry="7.5" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        </a>
+        <path d="M 230 856 L 230 936.03" fill="none" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 230 943.53 L 225 933.53 L 230 936.03 L 235 933.53 Z" fill="#d4b455" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 898px; margin-left: 230px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                path
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="230" y="901" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    path
+                </text>
+            </switch>
+        </g>
+        <a xlink:href="https://github.com/autowarefoundation/autoware.universe/tree/main/planning/behavior_velocity_planner">
+            <rect x="120" y="593" width="220" height="263" rx="8.8" ry="8.8" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        </a>
+        <path d="M 230 988 L 230 1021.03" fill="none" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 230 1028.53 L 225 1018.53 L 230 1021.03 L 235 1018.53 Z" fill="#d4b455" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1002px; margin-left: 231px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                Trajectory
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="231" y="1005" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Trajectory
+                </text>
+            </switch>
+        </g>
+        <a xlink:href="https://github.com/autowarefoundation/autoware.universe/tree/main/planning/obstacle_avoidance_planner">
+            <rect x="120" y="948" width="220" height="40" rx="6" ry="6" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+            <g transform="translate(-0.5 -0.5)">
+                <switch>
+                    <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                        <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 218px; height: 1px; padding-top: 968px; margin-left: 121px;">
+                            <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                                <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                    obstacle_
+                                    <br/>
+                                    avoidance_planner
+                                </div>
+                            </div>
+                        </div>
+                    </foreignObject>
+                    <text x="230" y="972" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                        obstacle_...
+                    </text>
+                </switch>
+            </g>
+        </a>
+        <path d="M 230 1063 L 230 1094.03" fill="none" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 230 1101.53 L 225 1091.53 L 230 1094.03 L 235 1091.53 Z" fill="#d4b455" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1085px; margin-left: 230px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                Trajectory
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="230" y="1088" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Trajectory
+                </text>
+            </switch>
+        </g>
+        <a xlink:href="https://github.com/autowarefoundation/autoware.universe/tree/main/planning/obstacle_velocity_limiter">
+            <rect x="120" y="1033" width="220" height="30" rx="4.5" ry="4.5" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+            <g transform="translate(-0.5 -0.5)">
+                <switch>
+                    <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                        <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 218px; height: 1px; padding-top: 1048px; margin-left: 121px;">
+                            <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                                <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                    obstacle_velocity_limiter
+                                </div>
+                            </div>
+                        </div>
+                    </foreignObject>
+                    <text x="230" y="1052" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                        obstacle_velocity_limiter
+                    </text>
+                </switch>
+            </g>
+        </a>
+        <path d="M 230 1276 L 230 1366 L 470 1366 L 470 1434.03" fill="none" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 470 1441.53 L 465 1431.53 L 470 1434.03 L 475 1431.53 Z" fill="#d4b455" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1367px; margin-left: 358px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                Trajectory
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="358" y="1370" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Trajectory
+                </text>
+            </switch>
+        </g>
+        <a xlink:href="https://github.com/autowarefoundation/autoware.universe/tree/main/planning/obstacle_stop_planner">
+            <rect x="120" y="1176" width="220" height="100" rx="7" ry="7" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        </a>
+        <path d="M 641 1486 L 641 1506 L 640.6 1514.04" fill="none" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 640.22 1521.53 L 635.73 1511.3 L 640.6 1514.04 L 645.72 1511.8 Z" fill="#d4b455" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1506px; margin-left: 641px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                Trajectory
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="641" y="1509" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Trajectory
+                </text>
+            </switch>
+        </g>
+        <a xlink:href="https://github.com/autowarefoundation/autoware.universe/tree/main/planning/scenario_selector">
+            <rect x="301" y="1446" width="680" height="40" rx="6" ry="6" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+            <g transform="translate(-0.5 -0.5)">
+                <switch>
+                    <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                        <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 678px; height: 1px; padding-top: 1466px; margin-left: 302px;">
+                            <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                                <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                    scenario_selector
+                                </div>
+                            </div>
+                        </div>
+                    </foreignObject>
+                    <text x="641" y="1470" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                        scenario_selector
+                    </text>
+                </switch>
+            </g>
+        </a>
+        <path d="M 640 1566 L 640 1604.03" fill="none" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 640 1611.53 L 635 1601.53 L 640 1604.03 L 645 1601.53 Z" fill="#d4b455" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1580px; margin-left: 641px;">
+                        <div data-drawio-colors="color: #666666; background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(102, 102, 102); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                <font color="#000000">
+                                    Trajectory
+                                </font>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="641" y="1583" fill="#666666" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Trajectory
+                </text>
+            </switch>
+        </g>
+        <a xlink:href="https://github.com/autowarefoundation/autoware.universe/tree/main/planning/motion_velocity_smoother">
+            <rect x="470" y="1526" width="340" height="40" rx="6" ry="6" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+            <g transform="translate(-0.5 -0.5)">
+                <switch>
+                    <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                        <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 338px; height: 1px; padding-top: 1546px; margin-left: 471px;">
+                            <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                                <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                    motion_velocity_smoother
+                                </div>
+                            </div>
+                        </div>
+                    </foreignObject>
+                    <text x="640" y="1550" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                        motion_velocity_smoother
+                    </text>
+                </switch>
+            </g>
+        </a>
+        <path d="M 640 654 L 640 876 L 640 917.76" fill="none" stroke="#d4b455" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 640 923.76 L 636 915.76 L 640 917.76 L 644 915.76 Z" fill="#d4b455" stroke="#d4b455" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 867px; margin-left: 641px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                Trajectory
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="641" y="870" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Trajectory
+                </text>
+            </switch>
+        </g>
+        <a xlink:href="https://github.com/autowarefoundation/autoware.universe/tree/main/planning/freespace_planner">
+            <rect x="570" y="607" width="140" height="47" rx="7.05" ry="7.05" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+            <g transform="translate(-0.5 -0.5)">
+                <switch>
+                    <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                        <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 138px; height: 1px; padding-top: 631px; margin-left: 571px;">
+                            <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                                <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                    freespace_planner
+                                </div>
+                            </div>
+                        </div>
+                    </foreignObject>
+                    <text x="640" y="634" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                        freespace_planner
+                    </text>
+                </switch>
+            </g>
+        </a>
+        <path d="M 640 486 L 640 598.76" fill="none" stroke="#d4b455" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 640 604.76 L 636 596.76 L 640 598.76 L 644 596.76 Z" fill="#d4b455" stroke="#d4b455" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 542px; margin-left: 640px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                occupancy_grid
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="640" y="545" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    occupancy_grid
+                </text>
+            </switch>
+        </g>
+        <a xlink:href="https://github.com/autowarefoundation/autoware.universe/tree/main/planning/costmap_generator">
+            <rect x="570" y="396" width="140" height="90" rx="13.5" ry="13.5" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+            <g transform="translate(-0.5 -0.5)">
+                <switch>
+                    <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                        <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 138px; height: 1px; padding-top: 441px; margin-left: 571px;">
+                            <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                                <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                    costmap_generator
+                                </div>
+                            </div>
+                        </div>
+                    </foreignObject>
+                    <text x="640" y="445" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                        costmap_generator
+                    </text>
+                </switch>
+            </g>
+        </a>
+        <rect x="130" y="636" width="60" height="50" fill="none" stroke="none" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 661px; margin-left: 131px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                behavior
+                                <br/>
+                                velocity
+                                <br/>
+                                planner
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="160" y="665" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    behavior...
+                </text>
+            </switch>
+        </g>
+        <rect x="130" y="406" width="60" height="50" fill="none" stroke="none" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 431px; margin-left: 131px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                behavior
+                                <br/>
+                                path
+                                <br/>
+                                planner
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="160" y="435" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    behavior...
+                </text>
+            </switch>
+        </g>
+        <path d="M 569 46 L 570.78 144.03" fill="none" stroke="rgb(0, 0, 0)" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 570.92 151.53 L 565.74 141.62 L 570.78 144.03 L 575.74 141.44 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 74px; margin-left: 570px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                goal
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="570" y="77" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    goal
+                </text>
+            </switch>
+        </g>
+        <rect x="130" y="1192" width="60" height="50" fill="none" stroke="none" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 1217px; margin-left: 131px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                obstacle
+                                <br/>
+                                stop
+                                <br/>
+                                planner
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="160" y="1221" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    obstacle...
+                </text>
+            </switch>
+        </g>
+        <rect x="202.5" y="1218" width="120" height="18" rx="2.7" ry="2.7" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 1227px; margin-left: 204px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                slow_down
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="263" y="1231" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    slow_down
+                </text>
+            </switch>
+        </g>
+        <rect x="202.5" y="1244" width="120" height="18" rx="2.7" ry="2.7" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 1253px; margin-left: 204px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                adaptive_cruise
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="263" y="1257" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    adaptive_cruise
+                </text>
+            </switch>
+        </g>
+        <rect x="202.5" y="1192" width="120" height="18" rx="2.7" ry="2.7" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 1201px; margin-left: 204px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                stop
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="263" y="1205" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    stop
+                </text>
+            </switch>
+        </g>
+        <rect x="45" y="316" width="90" height="30" fill="none" stroke="none" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 88px; height: 1px; padding-top: 331px; margin-left: 46px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; overflow-wrap: normal;">
+                                LaneDriving Scenario
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="90" y="335" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle" font-weight="bold">
+                    LaneDriving Sce...
+                </text>
+            </switch>
+        </g>
+        <rect x="80" y="366" width="120" height="30" fill="none" stroke="none" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 381px; margin-left: 81px;">
+                        <div data-drawio-colors="color: #666666; " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(102, 102, 102); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; overflow-wrap: normal;">
+                                <span style="font-weight: normal">
+                                    <font color="#000000">
+                                        Behavior Planning
+                                    </font>
+                                </span>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="140" y="385" fill="#666666" font-family="Helvetica" font-size="12px" text-anchor="middle" font-weight="bold">
+                    Behavior Planning
+                </text>
+            </switch>
+        </g>
+        <rect x="80" y="918" width="120" height="30" fill="none" stroke="none" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 933px; margin-left: 81px;">
+                        <div data-drawio-colors="color: #666666; " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(102, 102, 102); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; overflow-wrap: normal;">
+                                <span style="font-weight: normal">
+                                    <font color="#000000">
+                                        Motion Planning
+                                    </font>
+                                </span>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="140" y="937" fill="#666666" font-family="Helvetica" font-size="12px" text-anchor="middle" font-weight="bold">
+                    Motion Planning
+                </text>
+            </switch>
+        </g>
+        <rect x="0" y="1736" width="1200" height="40" fill="#fad7ac" stroke="#b46504" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1198px; height: 1px; padding-top: 1756px; margin-left: 1px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                To Control
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="600" y="1760" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    To Control
+                </text>
+            </switch>
+        </g>
+        <path d="M 1135 1457 L 989.24 1456.05" fill="none" stroke="#d4b455" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 983.24 1456.01 L 991.26 1452.07 L 989.24 1456.05 L 991.21 1460.07 Z" fill="#d4b455" stroke="#d4b455" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1442px; margin-left: 1135px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                route (from mission_planner)
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1135" y="1445" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    route (from mission_planner)
+                </text>
+            </switch>
+        </g>
+        <path d="M 180 1546 L 461.76 1546" fill="none" stroke="#d6b656" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 467.76 1546 L 459.76 1550 L 461.76 1546 L 459.76 1542 Z" fill="#d6b656" stroke="#d6b656" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <rect x="60" y="1516" width="120" height="60" rx="9" ry="9" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 1546px; margin-left: 61px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                external_velocity
+                                <br/>
+                                _limit_selector
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="120" y="1550" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    external_velocity...
+                </text>
+            </switch>
+        </g>
+        <path d="M 120 1406 L 120 1507.76" fill="none" stroke="#d6b656" stroke-width="2" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 120 1513.76 L 116 1505.76 L 120 1507.76 L 124 1505.76 Z" fill="#d6b656" stroke="#d6b656" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1498px; margin-left: 120px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                velocity_limit
+                                <br/>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="120" y="1501" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    velocity_l...
+                </text>
+            </switch>
+        </g>
+        <rect x="202.5" y="471" width="120" height="27.54" rx="4.13" ry="4.13" fill="#e51400" stroke="#b20000" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 485px; margin-left: 204px;">
+                        <div data-drawio-colors="color: #ffffff; " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 14px; font-family: Helvetica; color: rgb(255, 255, 255); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                New Module 1
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="263" y="489" fill="#ffffff" font-family="Helvetica" font-size="14px" text-anchor="middle">
+                    New Module 1
+                </text>
+            </switch>
+        </g>
+        <rect x="202.5" y="503" width="120" height="27.54" rx="4.13" ry="4.13" fill="#e51400" stroke="#b20000" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 517px; margin-left: 204px;">
+                        <div data-drawio-colors="color: #ffffff; " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 14px; font-family: Helvetica; color: rgb(255, 255, 255); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                New Module 2
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="263" y="521" fill="#ffffff" font-family="Helvetica" font-size="14px" text-anchor="middle">
+                    New Module 2
+                </text>
+            </switch>
+        </g>
+        <rect x="202.5" y="438" width="120" height="27.54" rx="4.13" ry="4.13" fill="#fad7ac" stroke="#b46504" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 452px; margin-left: 204px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                lane_change
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="263" y="455" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    lane_change
+                </text>
+            </switch>
+        </g>
+        <rect x="202.5" y="406" width="120" height="27.54" rx="4.13" ry="4.13" fill="#fad7ac" stroke="#b46504" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 420px; margin-left: 204px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                lane_following
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="263" y="423" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    lane_following
+                </text>
+            </switch>
+        </g>
+        <rect x="202.5" y="641" width="120" height="26.05" rx="3.91" ry="3.91" fill="#fad7ac" stroke="#b46504" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 654px; margin-left: 204px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                blind_spot
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="263" y="658" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    blind_spot
+                </text>
+            </switch>
+        </g>
+        <rect x="202.5" y="675" width="120" height="26.05" rx="3.91" ry="3.91" fill="#fad7ac" stroke="#b46504" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 688px; margin-left: 204px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                cross_walk
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="263" y="692" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    cross_walk
+                </text>
+            </switch>
+        </g>
+        <rect x="202.5" y="708" width="120" height="26.05" rx="3.91" ry="3.91" fill="#fad7ac" stroke="#b46504" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 721px; margin-left: 204px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                stop_line
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="263" y="725" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    stop_line
+                </text>
+            </switch>
+        </g>
+        <rect x="202.5" y="743" width="120" height="24.32" rx="3.65" ry="3.65" fill="#fad7ac" stroke="#b46504" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 755px; margin-left: 204px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                traffic_light
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="263" y="759" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    traffic_light
+                </text>
+            </switch>
+        </g>
+        <rect x="202.5" y="607" width="120" height="26.05" rx="3.91" ry="3.91" fill="#fad7ac" stroke="#b46504" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 620px; margin-left: 204px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                detection_area
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="263" y="624" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    detection_area
+                </text>
+            </switch>
+        </g>
+        <rect x="202.5" y="776" width="120" height="26.05" rx="3.91" ry="3.91" fill="#e51400" stroke="#b20000" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 789px; margin-left: 204px;">
+                        <div data-drawio-colors="color: #ffffff; " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 14px; font-family: Helvetica; color: rgb(255, 255, 255); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                New Module 3
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="263" y="793" fill="#ffffff" font-family="Helvetica" font-size="14px" text-anchor="middle">
+                    New Module 3
+                </text>
+            </switch>
+        </g>
+        <path d="M 650 46 L 650 144.03" fill="none" stroke="rgb(0, 0, 0)" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 650 151.53 L 645 141.53 L 650 144.03 L 655 141.53 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 74px; margin-left: 650px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                check_point
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="650" y="77" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    check_point
+                </text>
+            </switch>
+        </g>
+        <a xlink:href="https://github.com/autowarefoundation/autoware.universe/tree/main/planning/surround_obstacle_checker">
+            <rect x="30" y="1356" width="180" height="50" rx="7.5" ry="7.5" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+            <g transform="translate(-0.5 -0.5)">
+                <switch>
+                    <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                        <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 178px; height: 1px; padding-top: 1381px; margin-left: 31px;">
+                            <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                                <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                    surround_obstacle_checker
+                                </div>
+                            </div>
+                        </div>
+                    </foreignObject>
+                    <text x="120" y="1385" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                        surround_obstacle_checker
+                    </text>
+                </switch>
+            </g>
+        </a>
+        <path d="M 200 1466 L 200 1496 L 120 1496" fill="none" stroke="#d6b656" stroke-width="2" stroke-miterlimit="10" stroke-dasharray="6 6" pointer-events="stroke"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1466px; margin-left: 200px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                (from other planning modules)
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="200" y="1469" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    (from othe...
+                </text>
+            </switch>
+        </g>
+        <path d="M 639.89 1666 L 639.65 1722.79" fill="none" stroke="#d6b656" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 639.62 1730.29 L 634.66 1720.27 L 639.65 1722.79 L 644.66 1720.31 Z" fill="#d6b656" stroke="#d6b656" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1688px; margin-left: 640px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                <span style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 11px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-weight: 400; letter-spacing: normal; orphans: 2; text-align: center; text-indent: 0px; text-transform: none; widows: 2; word-spacing: 0px; -webkit-text-stroke-width: 0px; background-color: rgb(255, 255, 255); text-decoration-thickness: initial; text-decoration-style: initial; text-decoration-color: initial; float: none; display: inline !important;">
+                                    Trajectory
+                                </span>
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="640" y="1691" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Trajectory
+                </text>
+            </switch>
+        </g>
+        <a xlink:href="https://github.com/autowarefoundation/autoware.universe/tree/main/planning/planning_validator">
+            <rect x="470" y="1616" width="340" height="50" rx="7.5" ry="7.5" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+            <g transform="translate(-0.5 -0.5)">
+                <switch>
+                    <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                        <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 338px; height: 1px; padding-top: 1641px; margin-left: 471px;">
+                            <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                                <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                    planning_validator
+                                </div>
+                            </div>
+                        </div>
+                    </foreignObject>
+                    <text x="640" y="1645" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                        planning_validator
+                    </text>
+                </switch>
+            </g>
+        </a>
+        <rect x="0" y="0" width="1200" height="50" fill="#f5f5f5" stroke="#666666" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1198px; height: 1px; padding-top: 25px; margin-left: 1px;">
+                        <div data-drawio-colors="color: #333333; " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(51, 51, 51); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                API Layer
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="600" y="29" fill="#333333" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    API Layer
+                </text>
+            </switch>
+        </g>
+        <rect x="45" y="166" width="90" height="30" fill="none" stroke="none" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 88px; height: 1px; padding-top: 181px; margin-left: 46px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; overflow-wrap: normal;">
+                                Mission Planning
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="90" y="185" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle" font-weight="bold">
+                    Mission Planning
+                </text>
+            </switch>
+        </g>
+        <rect x="70" y="1606" width="90" height="30" fill="none" stroke="none" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 88px; height: 1px; padding-top: 1621px; margin-left: 71px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; overflow-wrap: normal;">
+                                Validation
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="115" y="1625" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle" font-weight="bold">
+                    Validation
+                </text>
+            </switch>
+        </g>
+        <rect x="202.5" y="811.05" width="120" height="26.05" rx="3.91" ry="3.91" fill="#e51400" stroke="#b20000" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 824px; margin-left: 204px;">
+                        <div data-drawio-colors="color: #ffffff; " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 14px; font-family: Helvetica; color: rgb(255, 255, 255); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                New Module 4
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="263" y="828" fill="#ffffff" font-family="Helvetica" font-size="14px" text-anchor="middle">
+                    New Module 4
+                </text>
+            </switch>
+        </g>
+        <rect x="1267" y="106" width="280" height="170" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <rect x="1277" y="116" width="90" height="30" fill="none" stroke="none" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 88px; height: 1px; padding-top: 131px; margin-left: 1278px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; overflow-wrap: normal;">
+                                Legend
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1322" y="135" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle" font-weight="bold">
+                    Legend
+                </text>
+            </switch>
+        </g>
+        <rect x="1307" y="150" width="200" height="30" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 165px; margin-left: 1308px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Component
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1407" y="169" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Component
+                </text>
+            </switch>
+        </g>
+        <rect x="1307" y="190" width="200" height="30" rx="4.5" ry="4.5" fill="#fff2cc" stroke="#d6b656" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 205px; margin-left: 1308px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                ROS Node
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1407" y="209" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    ROS Node
+                </text>
+            </switch>
+        </g>
+        <rect x="1307" y="230" width="200" height="30" rx="4.5" ry="4.5" fill="#ffe6cc" stroke="#d79b00" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 198px; height: 1px; padding-top: 245px; margin-left: 1308px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                Modlue Plugin
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1407" y="249" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="12px" text-anchor="middle">
+                    Modlue Plugin
+                </text>
+            </switch>
+        </g>
+        <rect x="120" y="1106" width="220" height="30" rx="4.5" ry="4.5" fill="#e51400" stroke="#b20000" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 218px; height: 1px; padding-top: 1121px; margin-left: 121px;">
+                        <div data-drawio-colors="color: #ffffff; " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 15px; font-family: Helvetica; color: rgb(255, 255, 255); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                New ROS Node
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="230" y="1126" fill="#ffffff" font-family="Helvetica" font-size="15px" text-anchor="middle">
+                    New ROS Node
+                </text>
+            </switch>
+        </g>
+        <path d="M 230.91 1136 L 230.97 1164.03" fill="none" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 230.99 1171.53 L 225.97 1161.54 L 230.97 1164.03 L 235.97 1161.52 Z" fill="#d4b455" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1156px; margin-left: 231px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                Trajectory
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="231" y="1159" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Trajectory
+                </text>
+            </switch>
+        </g>
+        <rect x="530" y="926" width="220" height="30" rx="4.5" ry="4.5" fill="#e51400" stroke="#b20000" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 218px; height: 1px; padding-top: 941px; margin-left: 531px;">
+                        <div data-drawio-colors="color: #ffffff; " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 15px; font-family: Helvetica; color: rgb(255, 255, 255); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                New ROS Node
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="640" y="946" fill="#ffffff" font-family="Helvetica" font-size="15px" text-anchor="middle">
+                    New ROS Node
+                </text>
+            </switch>
+        </g>
+        <path d="M 640 956 L 640 1434.03" fill="none" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 640 1441.53 L 635 1431.53 L 640 1434.03 L 645 1431.53 Z" fill="#d4b455" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1375px; margin-left: 656px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                Trajectory
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="656" y="1378" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Trajectory
+                </text>
+            </switch>
+        </g>
+        <rect x="840" y="306" width="320" height="1035.03" fill="#e51400" stroke="#b20000" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 318px; height: 1px; padding-top: 824px; margin-left: 841px;">
+                        <div data-drawio-colors="color: #ffffff; " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 19px; font-family: Helvetica; color: rgb(255, 255, 255); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;">
+                                New Scenario
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="1000" y="829" fill="#ffffff" font-family="Helvetica" font-size="19px" text-anchor="middle">
+                    New Scenario
+                </text>
+            </switch>
+        </g>
+        <path d="M 1000 1341.03 L 1000 1376 L 811 1376 L 811 1434.03" fill="none" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="stroke"/>
+        <path d="M 811 1441.53 L 806 1431.53 L 811 1434.03 L 816 1431.53 Z" fill="#d4b455" stroke="#d4b455" stroke-width="4" stroke-miterlimit="10" pointer-events="all"/>
+        <g transform="translate(-0.5 -0.5)">
+            <switch>
+                <foreignObject pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility" style="overflow: visible; text-align: left;">
+                    <div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 1403px; margin-left: 827px;">
+                        <div data-drawio-colors="color: rgb(0, 0, 0); background-color: rgb(255, 255, 255); " style="box-sizing: border-box; font-size: 0px; text-align: center;">
+                            <div style="display: inline-block; font-size: 11px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; background-color: rgb(255, 255, 255); white-space: nowrap;">
+                                Trajectory
+                            </div>
+                        </div>
+                    </div>
+                </foreignObject>
+                <text x="827" y="1406" fill="rgb(0, 0, 0)" font-family="Helvetica" font-size="11px" text-anchor="middle">
+                    Trajectory
+                </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%">
+                Text is not SVG - cannot display
+            </text>
+        </a>
+    </switch>
+</svg>
\ No newline at end of file
diff --git a/docs/design/autoware-architecture/planning/index-update.md b/docs/design/autoware-architecture/planning/index-update.md
index 04760531a59..66134897e30 100644
--- a/docs/design/autoware-architecture/planning/index-update.md
+++ b/docs/design/autoware-architecture/planning/index-update.md
@@ -187,50 +187,49 @@ This section describes the inputs and outputs of the Planning Component and of i
   - Trajectory: Same as above but with some additional safety considerations.
 
 
-
 ## Detailed design
 
 ### Supported features
 
-| Feature                                      | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            | Requirements                                                                | Figure                                                                          |
-| -------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------- | ------------------------------------------------------------------------------- |
-| Route Planning                               | Plan route from the ego vehicle position to the destination.<br> <br> Reference implementation is in [Mission Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/mission_planner/), enabled by launching the `mission_planner` node.                                                                                                                                                                                                                                                                        | - Lanelet map (driving lanelets)                                            | ![route-planning](image/features-route-planning.drawio.svg)                     |
-| Path Planning from Route                     | Plan path to be followed from the given route. <br> <br> Reference implementation is in [Behavior Path Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_path_planner/).                                                                                                                                                                                                                                                                                                                          | - Lanelet map (driving lanelets)                                            | ![lane-follow](image/features-lane-follow.drawio.svg)                           |
-| Obstacle Avoidance                           | Plan path to avoid obstacles by steering operation. <br> <br> Reference implementation is in [Avoidance](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_path_planner/docs/behavior_path_planner_avoidance_design/), [Obstacle Avoidance Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_avoidance_planner/). Enable flag in parameter: `launch obstacle_avoidance_planner true`                                                                                  | - objects information                                                       | ![obstacle-avoidance](image/features-avoidance.drawio.svg)                      |
-| Path Smoothing                               | Plan path to achieve smooth steering. <br> <br> Reference implementation is in [Obstacle Avoidance Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_avoidance_planner/).                                                                                                                                                                                                                                                                                                                         | - Lanelet map (driving lanelet)                                             | ![path-smoothing](image/features-path-smoothing.drawio.svg)                     |
-| Narrow Space Driving                         | Plan path to drive within the drivable area. Furthermore, when it is not possible to drive within the drivable area, stop the vehicle to avoid exiting the drivable area. <br> <br> Reference implementation is in [Obstacle Avoidance Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_avoidance_planner/).                                                                                                                                                                                     | - Lanelet map (high-precision lane boundaries)                              | ![narrow-space-driving](image/features-narrow-space-driving.drawio.svg)         |
-| Lane Change                                  | Plan path for lane change to reach the destination. <br> <br> Reference implementation is in [Lane Change](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_path_planner/docs/behavior_path_planner_lane_change_design/).. Enable flag in both parameters:                                                                                                                                                                                                                                                | - Lanelet map (driving lanelets)                                            | ![lane-change](image/features-lane-change.drawio.svg)                           |
-| Pull Over                                    | Plan path for pull over to park at the road shoulder. <br> <br> Reference implementation is in [Goal Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_path_planner/docs/behavior_path_planner_goal_planner_design/).                                                                                                                                                                                                                                                                             | - Lanelet map (shoulder lane)                                               | ![pull-over](image/features-pull-over.drawio.svg)                               |
-| Pull Out                                     | Plan path for pull over to start from the road shoulder. <br> <br> Reference implementation is in [Pull Out Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_path_planner/docs/behavior_path_planner_pull_out_design/).                                                                                                                                                                                                                                                                           | - Lanelet map (shoulder lane)                                               | ![pull-out](image/features-pull-out.drawio.svg)                                 |
-| Path Shift                                   | Plan path in lateral direction in response to external instructions. <br> <br> Reference implementation is in [Side Shift Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_path_planner/docs/behavior_path_planner_side_shift_design/).                                                                                                                                                                                                                                                           | - None                                                                      | ![side-shift](image/features-side-shift.drawio.svg)                             |
-| Obstacle Stop                                | Plan velocity to stop for an obstacle on the path. <br> <br> Reference implementation is in [Obstacle Stop Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_stop_planner/), [Obstacle Cruise Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_cruise_planner/). `launch obstacle_stop_planner` and enable flag: `TODO`, `launch obstacle_cruise_planner` and enable flag: `TODO`                                                                           | - objects information                                                       | ![obstacle-stop](image/features-obstacle-stop.drawio.svg)                       |
-| Obstacle Deceleration                        | Plan velocity to decelerate for an obstacle located around the path. <br> <br> Reference implementation is in [Obstacle Stop Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_stop_planner/), [Obstacle Cruise Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_cruise_planner/).                                                                                                                                                                          | - objects information                                                       | ![obstacle-decel](image/features-obstacle-decel.drawio.svg)                     |
-| Adaptive Cruise Control                      | Plan velocity to follow the vehicle driving in front of the ego vehicle. <br> <br> Reference implementation is in [Obstacle Stop Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_stop_planner/), [Obstacle Cruise Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_cruise_planner/).                                                                                                                                                                      | - objects information                                                       | ![adaptive-cruise](image/features-adaptive-cruise.drawio.svg)                   |
-| Decelerate for cut-in vehicles               | Plan velocity to avoid a risk for cutting-in vehicle to ego lane. <br> <br> Reference implementation is in [Obstacle Cruise Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_cruise_planner/).                                                                                                                                                                                                                                                                                                   | - objects information                                                       | ![cut-in](image/features-cut-in.drawio.svg)                                     |
-| Surround Check at starting                   | Plan velocity to prevent moving when an obstacle exists around the vehicle. <br> <br> Reference implementation is in [Surround Obstacle Checker](https://autowarefoundation.github.io/autoware.universe/main/planning/surround_obstacle_checker/). Enable flag in parameter: `use_surround_obstacle_check true` in [tier4_planning_component.launch.xml](https://github.com/autowarefoundation/autoware_launch/blob/2850d7f4e20b173fde2183d5323debbe0067a990/autoware_launch/launch/components/tier4_planning_component.launch.xml#L8) | - objects information                                                       | ![surround-check](image/features-surround-check.drawio.svg)                     |
-| Curve Deceleration                           | Plan velocity to decelerate the speed on a curve. <br> <br> Reference implementation is in [Motion Velocity Smoother](https://autowarefoundation.github.io/autoware.universe/main/planning/motion_velocity_smoother/).                                                                                                                                                                                                                                                                                                                 | - None                                                                      | ![decel-on-curve](image/features-decel-on-curve.drawio.svg)                     |
-| Curve Deceleration for Obstacle              | Plan velocity to decelerate the speed on a curve for a risk of obstacle collision around the path. <br> <br> Reference implementation is in [Obstacle Velocity Limiter](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_velocity_limiter/).                                                                                                                                                                                                                                                              | - objects information <br> - Lanelet map (static obstacle)                  | ![decel-on-curve-obstacles](image/features-decel-on-curve-obstacles.drawio.svg) |
-| Crosswalk                                    | Plan velocity to stop or decelerate for pedestrians approaching or walking on a crosswalk. <br> <br> Reference implementation is in [Crosswalk Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_crosswalk_module/docs/crosswalk-design/).                                                                                                                                                                                                                                                | - objects information <br> - Lanelet map (pedestrian crossing)              | ![crosswalk](image/features-crosswalk.drawio.svg)                               |
-| Intersection Oncoming Vehicle Check          | Plan velocity for turning right/left at intersection to avoid a risk with oncoming other vehicles. <br> <br> Reference implementation is in [Intersection Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_intersection_module/docs/intersection-design/).                                                                                                                                                                                                                               | - objects information <br> - Lanelet map (intersection lane and yield lane) | ![intersection](image/features-intersection.drawio.svg)                         |
-| Intersection Blind Spot Check                | Plan velocity for turning right/left at intersection to avoid a risk with other vehicles or motorcycles coming from behind blind spot. <br> <br> Reference implementation is in [Intersection Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_intersection_module/docs/intersection-design/).                                                                                                                                                                                           | - objects information <br> - Lanelet map (intersection lane)                | ![blind-spot](image/features-blind-spot.drawio.svg)                             |
-| Intersection Occlusion Check                 | Plan velocity for turning right/left at intersection to avoid a risk with the possibility of coming vehicles from occlusion area. <br> <br> Reference implementation is in [Intersection Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_intersection_module/docs/intersection-design/).                                                                                                                                                                                                | - objects information <br> - Lanelet map (intersection lane)                | ![intersection-occlusion](image/features-intersection-occlusion.drawio.svg)     |
-| Intersection Traffic Jam Detection           | Plan velocity for intersection not to enter the intersection when a vehicle is stopped ahead for a traffic jam. <br> <br> Reference implementation is in [Intersection Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_intersection_module/docs/intersection-design/).                                                                                                                                                                                                                  | - objects information <br> - Lanelet map (intersection lane)                | ![intersection-traffic-jam](image/features-intersection-traffic-jam.drawio.svg) |
-| Traffic Light                                | Plan velocity for intersection according to a traffic light signal. <br> <br> Reference implementation is in [Traffic Light Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_traffic_light_module/docs/traffic-light-design/).                                                                                                                                                                                                                                                           | - Traffic light color information                                           | ![traffic-light](image/features-traffic-light.drawio.svg)                       |
-| Run-out Check                                | Plan velocity to decelerate for the possibility of nearby objects running out into the path. <br> <br> Reference implementation is in [Run Out Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_run_out_module/docs/run-out-design/).                                                                                                                                                                                                                                                    | - objects information                                                       | ![run-out](image/features-run-out.drawio.svg)                                   |
-| Stop Line                                    | Plan velocity to stop at a stop line. <br> <br> Reference implementation is in [Stop Line Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_stop_line_module/docs/stop-line-design/).                                                                                                                                                                                                                                                                                                     | - Lanelet map (stop line)                                                   | ![stop-line](image/features-stop-line.drawio.svg)                               |
-| Occlusion Spot Check                         | Plan velocity to decelerate for objects running out from occlusion area, for example, from behind a large vehicle. <br> <br> Reference implementation is in [Occlusion Spot Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_occlusion_spot_module/docs/occlusion-spot-design/).                                                                                                                                                                                                         | - objects information <br> - Lanelet map (private/public lane)              | ![occlusion-spot](image/features-occlusion-spot.drawio.svg)                     |
-| No Stop Area                                 | Plan velocity not to stop in areas where stopping is prohibited, such as in front of the fire station entrance. <br> <br> Reference implementation is in [No Stopping Area Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_no_stopping_area_module/docs/no-stopping-area-design/).                                                                                                                                                                                                      | - Lanelet map (no stopping area)                                            | ![no-stopping-area](image/features-no-stopping-area.drawio.svg)                 |
-| Merge from Private Area to Public Road       | Plan velocity for entering the public road from a private driveway to avoid a risk of collision with pedestrians or other vehicles. <br> <br> Reference implementation is in [Merge from Private Area Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_intersection_module/docs/merge-from-private-design/).                                                                                                                                                                             | - objects information <br> - Lanelet map (private/public lane)              | WIP                                                                             |
-| Speed Bump                                   | Plan velocity to decelerate for speed bumps. <br> <br> Reference implementation is in [Speed Bump Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_speed_bump_module/docs/speed-bump-design/).                                                                                                                                                                                                                                                                                           | - Lanelet map (speed bump)                                                  | ![speed-bump](image/features-speed-bump.drawio.svg)                             |
-| Detection Area                               | Plan velocity to stop at the corresponding stop when an object exist in the designated detection area. <br> <br> Reference implementation is in [Detection Area Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_detection_area_module/docs/detection-area-design/).                                                                                                                                                                                                                     | - Lanelet map (detection area)                                              | ![detection-area](image/features-detection-area.drawio.svg)                     |
-| Out of ODD area                              | Plan velocity to stop before exiting the area designated by ODD (Operational Design Domain). <br> <br> Reference implementation is in (WIP).                                                                                                                                                                                                                                                                                                                                                                                           | - Lanelet map (invalid lanelet)                                             | WIP                                                                             |
-| Collision Detection when deviating from lane | Plan velocity to avoid conflict with other vehicles driving in the another lane when the ego vehicle is deviating from own lane. <br> <br> Reference implementation is in [Out of Lane Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_out_of_lane_module/docs/out-of-lane-design/).                                                                                                                                                                                                    | - objects information <br> - Lanelet map (driving lane)                     | WIP                                                                             |
-| Parking                                      | Plan path and velocity for given goal in parking area. <br> <br> Reference implementation is in [Free Space Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/freespace_planner/).                                                                                                                                                                                                                                                                                                                         | - objects information <br> - Lanelet map (parking area)                     | ![parking](image/features-parking.drawio.svg)                                   |
-| Autonomous Emergency Braking (AEB)           | Perform an emergency stop if a collision with an object ahead is anticipated. It is noted that this function is expected as a final safety layer, and this should work even in the event of failures in the Localization or Perception system. <br> <br> Reference implementation is in [Out of Lane Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_out_of_lane_module/docs/out-of-lane-design/).                                                                                      | - Primitive objects                                                         | ![aeb](image/features-aeb.drawio.svg)                                           |
-| Minimum Risk Maneuver (MRM)                  | Provide appropriate MRM (Minimum Risk Maneuver) instructions when a hazardous event occurs. For example, when a sensor trouble found, send an instruction for emergency braking, moderate stop, or pulling over to the shoulder, depending on the severity of the situation. <br> <br> Reference implementation is in TODO                                                                                                                                                                                                             | - TODO                                                                      | WIP                                                                             |
-| Trajectory Validation                        | Check the planned trajectory is safe. If it is unsafe, take appropriate action, such as modify the trajectory, stop sending the trajectory or report to the autonomous driving system. <br> <br> Reference implementation is in [Planning Validator](https://autowarefoundation.github.io/autoware.universe/main/planning/planning_validator/).                                                                                                                                                                                        | - None                                                                      | ![trajectory-validation](image/features-trajectory-validation.drawio.svg)       |
-| Running Lane Map Generation                  | Generate lane map from localization data recorded in manual driving. <br> <br> Reference implementation is in WIP                                                                                                                                                                                                                                                                                                                                                                                                                      | - None                                                                      | WIP                                                                             |
-| Running Lane Optimization                    | Optimize the centerline (reference path) of the map to make it smooth considering the vehicle kinematics. <br> <br> Reference implementation is in [Static Centerline Optimizer](https://autowarefoundation.github.io/autoware.universe/main/planning/static_centerline_optimizer/).                                                                                                                                                                                                                                                   | - Lanelet map (driving lanes)                                               | WIP                                                                             |
+| Feature                                      | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | Requirements                                                                | Figure                                                                          |
+| -------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------- | ------------------------------------------------------------------------------- |
+| Route Planning                               | Plan route from the ego vehicle position to the destination.<br> <br> Reference implementation is in [Mission Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/mission_planner/), enabled by launching the `mission_planner` node.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | - Lanelet map (driving lanelets)                                            | ![route-planning](image/features-route-planning.drawio.svg)                     |
+| Path Planning from Route                     | Plan path to be followed from the given route. <br> <br> Reference implementation is in [Behavior Path Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_path_planner/).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      | - Lanelet map (driving lanelets)                                            | ![lane-follow](image/features-lane-follow.drawio.svg)                           |
+| Obstacle Avoidance                           | Plan path to avoid obstacles by steering operation. <br> <br> Reference implementation is in [Avoidance](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_path_planner/docs/behavior_path_planner_avoidance_design/), [Obstacle Avoidance Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_avoidance_planner/). Enable flag in parameter: `launch obstacle_avoidance_planner true` <br> <br> [Demonstration Video](https://youtu.be/A_V9yvfKZ4E) <br> [![Demonstration Video](https://img.youtube.com/vi/A_V9yvfKZ4E/0.jpg)](https://www.youtube.com/watch?v=A_V9yvfKZ4E)                                                                                                                                                                                                       | - objects information                                                       | ![obstacle-avoidance](image/features-avoidance.drawio.svg)                      |
+| Path Smoothing                               | Plan path to achieve smooth steering. <br> <br> Reference implementation is in [Obstacle Avoidance Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_avoidance_planner/). <br> <br> [Demonstration Video](https://youtu.be/RhyAF26Ppzs) <br> [![Demonstration Video](https://img.youtube.com/vi/RhyAF26Ppzs/0.jpg)](https://www.youtube.com/watch?v=RhyAF26Ppzs)                                                                                                                                                                                                                                                                                                                                                                                                                                              | - Lanelet map (driving lanelet)                                             | ![path-smoothing](image/features-path-smoothing.drawio.svg)                     |
+| Narrow Space Driving                         | Plan path to drive within the drivable area. Furthermore, when it is not possible to drive within the drivable area, stop the vehicle to avoid exiting the drivable area. <br> <br> Reference implementation is in [Obstacle Avoidance Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_avoidance_planner/). <br> <br> [Demonstration Video](https://youtu.be/URzcLO2E1vY) <br> [![Demonstration Video](https://img.youtube.com/vi/URzcLO2E1vY/0.jpg)](https://www.youtube.com/watch?v=URzcLO2E1vY)                                                                                                                                                                                                                                                                                                          | - Lanelet map (high-precision lane boundaries)                              | ![narrow-space-driving](image/features-narrow-space-driving.drawio.svg)         |
+| Lane Change                                  | Plan path for lane change to reach the destination. <br> <br> Reference implementation is in [Lane Change](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_path_planner/docs/behavior_path_planner_lane_change_design/). <br> <br> [Demonstration Video](https://youtu.be/0jRDGQ84cD4) <br> [![Demonstration Video](https://img.youtube.com/vi/0jRDGQ84cD4/0.jpg)](https://www.youtube.com/watch?v=0jRDGQ84cD4)                                                                                                                                                                                                                                                                                                                                                                                                      | - Lanelet map (driving lanelets)                                            | ![lane-change](image/features-lane-change.drawio.svg)                           |
+| Pull Over                                    | Plan path for pull over to park at the road shoulder. <br> <br> Reference implementation is in [Goal Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_path_planner/docs/behavior_path_planner_goal_planner_design/). <br> <br> Demonstration Videos: <br> [Simple Pull Over](https://youtu.be/r3-kAmTb4hc) <br> [![Demonstration Video](https://img.youtube.com/vi/r3-kAmTb4hc/0.jpg)](https://www.youtube.com/watch?v=r3-kAmTb4hc) <br> [Arc Forward Pull Over](https://youtu.be/ornbzkWxRWU) <br> [![Demonstration Video](https://img.youtube.com/vi/ornbzkWxRWU/0.jpg)](https://www.youtube.com/watch?v=ornbzkWxRWU) <br> [Arc Backward Pull Over](https://youtu.be/if-0tG3AkLo) <br> [![Demonstration Video](https://img.youtube.com/vi/if-0tG3AkLo/0.jpg)](https://www.youtube.com/watch?v=if-0tG3AkLo) | - Lanelet map (shoulder lane)                                               | ![pull-over](image/features-pull-over.drawio.svg)                               |
+| Pull Out                                     | Plan path for pull over to start from the road shoulder. <br> <br> Reference implementation is in [Pull Out Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_path_planner/docs/behavior_path_planner_start_planner_design/#:~:text=WIP-,Path%20Generation,-%23). <br> <br> Demonstration Video: <br> [Simple Pull Out](https://youtu.be/xOjnPqoHup4) <br> [![Demonstration Video](https://img.youtube.com/vi/xOjnPqoHup4/0.jpg)](https://www.youtube.com/watch?v=xOjnPqoHup4) <br> [Backward Pull Out](https://youtu.be/iGieijPcPcQ) <br> [![Demonstration Video](https://img.youtube.com/vi/iGieijPcPcQ/0.jpg)](https://www.youtube.com/watch?v=iGieijPcPcQ)                                                                                                                                                 | - Lanelet map (shoulder lane)                                               | ![pull-out](image/features-pull-out.drawio.svg)                                 |
+| Path Shift                                   | Plan path in lateral direction in response to external instructions. <br> <br> Reference implementation is in [Side Shift Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_path_planner/docs/behavior_path_planner_side_shift_design/).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       | - None                                                                      | ![side-shift](image/features-side-shift.drawio.svg)                             |
+| Obstacle Stop                                | Plan velocity to stop for an obstacle on the path. <br> <br> Reference implementation is in [Obstacle Stop Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_stop_planner/), [Obstacle Cruise Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_cruise_planner/). `launch obstacle_stop_planner` and enable flag: `TODO`, `launch obstacle_cruise_planner` and enable flag: `TODO` <br> <br> [Demonstration Video](https://youtu.be/d8IRW_xArcE) <br> [![Demonstration Video](https://img.youtube.com/vi/d8IRW_xArcE/0.jpg)](https://www.youtube.com/watch?v=d8IRW_xArcE)                                                                                                                                                                                                | - objects information                                                       | ![obstacle-stop](image/features-obstacle-stop.drawio.svg)                       |
+| Obstacle Deceleration                        | Plan velocity to decelerate for an obstacle located around the path. <br> <br> Reference implementation is in [Obstacle Stop Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_stop_planner/), [Obstacle Cruise Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_cruise_planner/). <br> <br> [Demonstration Video](https://youtu.be/gvN1otgeaaw) <br> [![Demonstration Video](https://img.youtube.com/vi/gvN1otgeaaw/0.jpg)](https://www.youtube.com/watch?v=gvN1otgeaaw)                                                                                                                                                                                                                                                                                               | - objects information                                                       | ![obstacle-decel](image/features-obstacle-decel.drawio.svg)                     |
+| Adaptive Cruise Control                      | Plan velocity to follow the vehicle driving in front of the ego vehicle. <br> <br> Reference implementation is in [Obstacle Stop Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_stop_planner/), [Obstacle Cruise Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_cruise_planner/).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | - objects information                                                       | ![adaptive-cruise](image/features-adaptive-cruise.drawio.svg)                   |
+| Decelerate for cut-in vehicles               | Plan velocity to avoid a risk for cutting-in vehicle to ego lane. <br> <br> Reference implementation is in [Obstacle Cruise Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_cruise_planner/).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | - objects information                                                       | ![cut-in](image/features-cut-in.drawio.svg)                                     |
+| Surround Check at starting                   | Plan velocity to prevent moving when an obstacle exists around the vehicle. <br> <br> Reference implementation is in [Surround Obstacle Checker](https://autowarefoundation.github.io/autoware.universe/main/planning/surround_obstacle_checker/). Enable flag in parameter: `use_surround_obstacle_check true` in [tier4_planning_component.launch.xml](https://github.com/autowarefoundation/autoware_launch/blob/2850d7f4e20b173fde2183d5323debbe0067a990/autoware_launch/launch/components/tier4_planning_component.launch.xml#L8) <br> <br> [Demonstration Video](https://youtu.be/bbGgtXN3lC4) <br> [![Demonstration Video](https://img.youtube.com/vi/bbGgtXN3lC4/0.jpg)](https://www.youtube.com/watch?v=bbGgtXN3lC4)                                                                                                                      | - objects information                                                       | ![surround-check](image/features-surround-check.drawio.svg)                     |
+| Curve Deceleration                           | Plan velocity to decelerate the speed on a curve. <br> <br> Reference implementation is in [Motion Velocity Smoother](https://autowarefoundation.github.io/autoware.universe/main/planning/motion_velocity_smoother/).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                             | - None                                                                      | ![decel-on-curve](image/features-decel-on-curve.drawio.svg)                     |
+| Curve Deceleration for Obstacle              | Plan velocity to decelerate the speed on a curve for a risk of obstacle collision around the path. <br> <br> Reference implementation is in [Obstacle Velocity Limiter](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_velocity_limiter/). <br> <br> [Demonstration Video](https://youtu.be/I-oFgG6kIAs) <br> [![Demonstration Video](https://img.youtube.com/vi/I-oFgG6kIAs/0.jpg)](https://www.youtube.com/watch?v=I-oFgG6kIAs)                                                                                                                                                                                                                                                                                                                                                                                   | - objects information <br> - Lanelet map (static obstacle)                  | ![decel-on-curve-obstacles](image/features-decel-on-curve-obstacles.drawio.svg) |
+| Crosswalk                                    | Plan velocity to stop or decelerate for pedestrians approaching or walking on a crosswalk. <br> <br> Reference implementation is in [Crosswalk Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_crosswalk_module/). <br> <br> [Demonstration Video](https://youtu.be/tUvthyIL2W8) <br> [![Demonstration Video](https://img.youtube.com/vi/tUvthyIL2W8/0.jpg)](https://www.youtube.com/watch?v=tUvthyIL2W8)                                                                                                                                                                                                                                                                                                                                                                                           | - objects information <br> - Lanelet map (pedestrian crossing)              | ![crosswalk](image/features-crosswalk.drawio.svg)                               |
+| Intersection Oncoming Vehicle Check          | Plan velocity for turning right/left at intersection to avoid a risk with oncoming other vehicles. <br> <br> Reference implementation is in [Intersection Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_intersection_module/). <br> <br> [Demonstration Video](https://youtu.be/SGD07Hqg4Hk) <br> [![Demonstration Video](https://img.youtube.com/vi/SGD07Hqg4Hk/0.jpg)](https://www.youtube.com/watch?v=SGD07Hqg4Hk)                                                                                                                                                                                                                                                                                                                                                                             | - objects information <br> - Lanelet map (intersection lane and yield lane) | ![intersection](image/features-intersection.drawio.svg)                         |
+| Intersection Blind Spot Check                | Plan velocity for turning right/left at intersection to avoid a risk with other vehicles or motorcycles coming from behind blind spot. <br> <br> Reference implementation is in [Blind Spot Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_blind_spot_module/). <br> <br> [Demonstration Video](https://youtu.be/oaTCJRafDGA) <br> [![Demonstration Video](https://img.youtube.com/vi/oaTCJRafDGA/0.jpg)](https://www.youtube.com/watch?v=oaTCJRafDGA)                                                                                                                                                                                                                                                                                                                                             | - objects information <br> - Lanelet map (intersection lane)                | ![blind-spot](image/features-blind-spot.drawio.svg)                             |
+| Intersection Occlusion Check                 | Plan velocity for turning right/left at intersection to avoid a risk with the possibility of coming vehicles from occlusion area. <br> <br> Reference implementation is in [Intersection Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_intersection_module/). <br> <br> [Demonstration Video](https://youtu.be/bAHXMB7kbFc) <br> [![Demonstration Video](https://img.youtube.com/vi/bAHXMB7kbFc/0.jpg)](https://www.youtube.com/watch?v=bAHXMB7kbFc)                                                                                                                                                                                                                                                                                                                                              | - objects information <br> - Lanelet map (intersection lane)                | ![intersection-occlusion](image/features-intersection-occlusion.drawio.svg)     |
+| Intersection Traffic Jam Detection           | Plan velocity for intersection not to enter the intersection when a vehicle is stopped ahead for a traffic jam. <br> <br> Reference implementation is in [Intersection Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_intersection_module/). <br> <br> [Demonstration Video](https://youtu.be/negK4VbrC5o) <br> [![Demonstration Video](https://img.youtube.com/vi/negK4VbrC5o/0.jpg)](https://www.youtube.com/watch?v=negK4VbrC5o)                                                                                                                                                                                                                                                                                                                                                                | - objects information <br> - Lanelet map (intersection lane)                | ![intersection-traffic-jam](image/features-intersection-traffic-jam.drawio.svg) |
+| Traffic Light                                | Plan velocity for intersection according to a traffic light signal. <br> <br> Reference implementation is in [Traffic Light Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_traffic_light_module/). <br> <br> [Demonstration Video](https://youtu.be/lGA53KljQrM) <br> [![Demonstration Video](https://img.youtube.com/vi/lGA53KljQrM/0.jpg)](https://www.youtube.com/watch?v=lGA53KljQrM)                                                                                                                                                                                                                                                                                                                                                                                                          | - Traffic light color information                                           | ![traffic-light](image/features-traffic-light.drawio.svg)                       |
+| Run-out Check                                | Plan velocity to decelerate for the possibility of nearby objects running out into the path. <br> <br> Reference implementation is in [Run Out Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_run_out_module/). <br> <br> [Demonstration Video](https://youtu.be/9IDggldT2t0) <br> [![Demonstration Video](https://img.youtube.com/vi/9IDggldT2t0/0.jpg)](https://www.youtube.com/watch?v=9IDggldT2t0)                                                                                                                                                                                                                                                                                                                                                                                             | - objects information                                                       | ![run-out](image/features-run-out.drawio.svg)                                   |
+| Stop Line                                    | Plan velocity to stop at a stop line. <br> <br> Reference implementation is in [Stop Line Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_stop_line_module/). <br> <br> [Demonstration Video](https://youtu.be/eej9jYt-GSE) <br> [![Demonstration Video](https://img.youtube.com/vi/eej9jYt-GSE/0.jpg)](https://www.youtube.com/watch?v=eej9jYt-GSE)                                                                                                                                                                                                                                                                                                                                                                                                                                                | - Lanelet map (stop line)                                                   | ![stop-line](image/features-stop-line.drawio.svg)                               |
+| Occlusion Spot Check                         | Plan velocity to decelerate for objects running out from occlusion area, for example, from behind a large vehicle. <br> <br> Reference implementation is in [Occlusion Spot Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_occlusion_spot_module/). <br> <br> [Demonstration Video](https://youtu.be/3qs8Ivjh1fs) <br> [![Demonstration Video](https://img.youtube.com/vi/3qs8Ivjh1fs/0.jpg)](https://www.youtube.com/watch?v=3qs8Ivjh1fs)                                                                                                                                                                                                                                                                                                                                                         | - objects information <br> - Lanelet map (private/public lane)              | ![occlusion-spot](image/features-occlusion-spot.drawio.svg)                     |
+| No Stop Area                                 | Plan velocity not to stop in areas where stopping is prohibited, such as in front of the fire station entrance. <br> <br> Reference implementation is in [No Stopping Area Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_no_stopping_area_module/).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | - Lanelet map (no stopping area)                                            | ![no-stopping-area](image/features-no-stopping-area.drawio.svg)                 |
+| Merge from Private Area to Public Road       | Plan velocity for entering the public road from a private driveway to avoid a risk of collision with pedestrians or other vehicles. <br> <br> Reference implementation is in [Merge from Private Area Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_intersection_module/).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | - objects information <br> - Lanelet map (private/public lane)              | WIP                                                                             |
+| Speed Bump                                   | Plan velocity to decelerate for speed bumps. <br> <br> Reference implementation is in [Speed Bump Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_speed_bump_module/). <br> <br> [Demonstration Video](https://youtu.be/FpX3q3YaaCw) <br> [![Demonstration Video](https://img.youtube.com/vi/FpX3q3YaaCw/0.jpg)](https://www.youtube.com/watch?v=FpX3q3YaaCw)                                                                                                                                                                                                                                                                                                                                                                                                                                       | - Lanelet map (speed bump)                                                  | ![speed-bump](image/features-speed-bump.drawio.svg)                             |
+| Detection Area                               | Plan velocity to stop at the corresponding stop when an object exist in the designated detection area. <br> <br> Reference implementation is in [Detection Area Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_detection_area_module/). <br> <br> [Demonstration Video](https://youtu.be/YzXF4U69lJs) <br> [![Demonstration Video](https://img.youtube.com/vi/YzXF4U69lJs/0.jpg)](https://www.youtube.com/watch?v=YzXF4U69lJs)                                                                                                                                                                                                                                                                                                                                                                     | - Lanelet map (detection area)                                              | ![detection-area](image/features-detection-area.drawio.svg)                     |
+| No Drivable Lane                             | Plan velocity to stop before exiting the area designated by ODD (Operational Design Domain) or stop the vehicle if autonomous mode started in out of ODD lane. <br> <br> Reference implementation is in [No Drivable Lane Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_no_drivable_lane_module/).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                | - Lanelet map (no drivable lane)                                            | ![no-drivable-lane](image/features-no-drivable-lane.drawio.svg)                 |
+| Collision Detection when deviating from lane | Plan velocity to avoid conflict with other vehicles driving in the another lane when the ego vehicle is deviating from own lane. <br> <br> Reference implementation is in [Out of Lane Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_out_of_lane_module/).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                        | - objects information <br> - Lanelet map (driving lane)                     | WIP                                                                             |
+| Parking                                      | Plan path and velocity for given goal in parking area. <br> <br> Reference implementation is in [Free Space Planner](https://autowarefoundation.github.io/autoware.universe/main/planning/freespace_planner/). <br> <br> [Demonstration Video](https://youtu.be/rAIYmwpNWfA) <br> [![Demonstration Video](https://img.youtube.com/vi/rAIYmwpNWfA/0.jpg)](https://www.youtube.com/watch?v=rAIYmwpNWfA)                                                                                                                                                                                                                                                                                                                                                                                                                                              | - objects information <br> - Lanelet map (parking area)                     | ![parking](image/features-parking.drawio.svg)                                   |
+| Autonomous Emergency Braking (AEB)           | Perform an emergency stop if a collision with an object ahead is anticipated. It is noted that this function is expected as a final safety layer, and this should work even in the event of failures in the Localization or Perception system. <br> <br> Reference implementation is in [Out of Lane Module](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_out_of_lane_module/).                                                                                                                                                                                                                                                                                                                                                                                                                          | - Primitive objects                                                         | ![aeb](image/features-aeb.drawio.svg)                                           |
+| Minimum Risk Maneuver (MRM)                  | Provide appropriate MRM (Minimum Risk Maneuver) instructions when a hazardous event occurs. For example, when a sensor trouble found, send an instruction for emergency braking, moderate stop, or pulling over to the shoulder, depending on the severity of the situation. <br> <br> Reference implementation is in TODO                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         | - TODO                                                                      | WIP                                                                             |
+| Trajectory Validation                        | Check the planned trajectory is safe. If it is unsafe, take appropriate action, such as modify the trajectory, stop sending the trajectory or report to the autonomous driving system. <br> <br> Reference implementation is in [Planning Validator](https://autowarefoundation.github.io/autoware.universe/main/planning/planning_validator/).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                    | - None                                                                      | ![trajectory-validation](image/features-trajectory-validation.drawio.svg)       |
+| Running Lane Map Generation                  | Generate lane map from localization data recorded in manual driving. <br> <br> Reference implementation is in WIP                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                  | - None                                                                      | WIP                                                                             |
+| Running Lane Optimization                    | Optimize the centerline (reference path) of the map to make it smooth considering the vehicle kinematics. <br> <br> Reference implementation is in [Static Centerline Optimizer](https://autowarefoundation.github.io/autoware.universe/main/planning/static_centerline_optimizer/).                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               | - Lanelet map (driving lanes)                                               | WIP                                                                             |
 
 <!-- ![supported-functions](image/planning-functions.drawio.svg) -->
 
@@ -240,11 +239,10 @@ The following diagram describes the reference implementation of the Planning com
 
 _Note that some implementation does not adhere to the high-level architecture design due to the difficulties of the implementation and require updating._
 
-ハイレベルなデザインと比較したときの重要な違いは、「シナリオレイヤーの導入」と「behavior/motionの明確な分離」です。これらは現時点での性能や実装的な課題から導入されています。これらをハイレベルなデザインとして定義するか、それとも実装の一部として改良していくかは議論の必要があります。
 
 
 
-![reference-implementation](image/planning-diagram.drawio.svg)
+![reference-implementation](image/planning-diagram-tmp.drawio.svg)
 
 For more details, please refer to the design documents in each package.
 
@@ -282,6 +280,8 @@ For more details, please refer to the design documents in each package.
 
 ### Important information in the current implementation
 
+ハイレベルなデザインと比較したときの重要な違いは、「シナリオレイヤーの導入」と「behavior/motionの明確な分離」です。これらは現時点での性能や実装的な課題から導入されています。これらをハイレベルなデザインとして定義するか、それとも実装の一部として改良していくかは議論の必要があります。
+
 #### Introducing the Scenario Planning layer
 There are different requirements for interfaces between driving in well-structured lanes and driving in a free-space area like a parking lot. For example, while Lane Driving can handle routes with map IDs, this is not appropriate for planning in free space. The mechanism that switches planning sub-components at the scenario level (Lane Driving, Parking, etc) enables a flexible design of the interface, however, it has a drawbacks of the reuse of modules across different scenarios.
 
@@ -292,13 +292,29 @@ To understand this background, this [previously discussed document](https://gith
 
 ### How to add new modules in the current implementation
 
-現時点の実装でもモジュールレベルの機能の追加は可能ですが、全ての機能に対して統一的なインターフェースは提供されていません。
+現時点の実装でもモジュールレベルの機能の追加は可能ですが、全ての機能に対して統一的なインターフェースは提供されていません。モジュールレベルでの拡張を行うための、現時点での実装方法について簡単に説明します。
+
+![reference-implementation-add-new-modules](image/reference-implementation-add-new-modules.drawio.svg)
+
+
+#### Add new modules in behavior_velocity_planner or behavior_path_plnner
+
+[behavior_path_planner](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_path_planner/) や [behavior_velocity_planner](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_planner/) などの ROS nodeは、pluginによるモジュールインターフェースが用意されています。これらの ROS nodeで定義されるモジュールのインターフェースに沿ってモジュールを追加することにより、動的にモジュールのload/unloadが可能となります。具体的なモジュール追加の方法については、各パッケージのドキュメントをご確認ください。
 
 
-- Replace with scenario layer.
-- Add new modules in behavior_velocity_planner or behavior_path_palnner
-- Add a new ros node in the motion planning
+#### Add a new ros node in the planning component
 
+Motion Planningにおいてモジュールを追加する場合は、モジュールをROS Nodeで作成し、planning componentの中に統合する必要があります。現時点の構成は、上流で計算される目標軌道に対して情報を付加する形となっており、その過程に ROS Node を導入することによって機能の拡張を可能とします。
+
+#### Add or replace with scenarios
+
+今の実装には、まとめて複数のモジュールを切り替えるための方法としてシナリオレベルでの切り替えロジックが導入されています。これを用いることによって、新たなシナリオ(例えばhighway drivingなど)の追加が可能と成ります。
+
+実際にシナリオをros nodeなどで作成し、scenario_selectorというros nodeをそのシナリオに対応させれば統合は完了します。このメリットは、他のシナリオ(Lane Drivingなど)の実装に影響を与えずに、大きな新規機能を導入することができます。一方で、既存のplanning moduleレベルでの連携を行うことはできず、シナリオの切り替えによるシナリオレベルでの連携しかできません。
+
+
+
+<!-- 
 ### Important Parameters
 
 | Package                      | Parameter                                                     | Type   | Description                                                                                                        |
@@ -327,4 +343,4 @@ Currently, the supported modules are as follows.
 
 #### [2] Size of Path Points
 
-Some functions do not support paths with only one point. Therefore, each modules should generate the path with more than two path points.
+Some functions do not support paths with only one point. Therefore, each modules should generate the path with more than two path points. -->

From ef8786e472ee8254f1f7d39a588ea1a59a76fbee Mon Sep 17 00:00:00 2001
From: Takamasa Horibe <horibe.takamasa@gmail.com>
Date: Sun, 19 Nov 2023 18:41:05 +0900
Subject: [PATCH 15/19] update

Signed-off-by: Takamasa Horibe <horibe.takamasa@gmail.com>
---
 .../planning/index-update.md                  | 89 ++++++++-----------
 .../autoware-architecture/planning/index.md   |  5 +-
 2 files changed, 37 insertions(+), 57 deletions(-)

diff --git a/docs/design/autoware-architecture/planning/index-update.md b/docs/design/autoware-architecture/planning/index-update.md
index 66134897e30..4ae86bd2b94 100644
--- a/docs/design/autoware-architecture/planning/index-update.md
+++ b/docs/design/autoware-architecture/planning/index-update.md
@@ -1,5 +1,6 @@
 # Planning component design
-<!-- 
+
+<!--
 - discussionsはトレードオフ選定とかにしたい
 - サードパーティによって拡張というよりは、誰でも拡張できるって言い回しのほうが良いはず
 - mission plannerの使われ方を重点的に考えよう。FMSとして機能が外だしされることがあるから、これは別れてるのよ。
@@ -15,44 +16,42 @@
 
 ## Context and scope
 
-自動運転システムにおける Planning コンポーネントの役割は、与えられたミッションを満たすために、安全で交通ルールに基づいた自動運転車両の目標軌道(経路と速度)を生成することである。
+自動運転システムにおける Planning コンポーネントの役割は、与えられたミッションを満たすために、安全で交通ルールに基づいた自動運転車両の目標軌道(経路と速度)を生成することです。
 
-このドキュメントではAutowareにおけるplanningの要求やデザインをまとめる。これによって、開発者はplanning Componentがどのような考えで設計されているのか、およびそれらをどう拡張させていくのかを理解することができます。
+このドキュメントでは、Autowareにおけるplanningの要求やデザインをまとめます。これによって、開発者はPlanning Componentがどのような考えで設計されているのか、およびそれらをどう拡張させていくのかを理解することができます。
 
-ドキュメントの前半ではハイレベルな要求やデザインを、後半は実際の実装や提供機能について述べる。
+ドキュメントの前半ではハイレベルな要求やデザインについて、後半では実際の実装や提供機能について述べます。
 
 ## Goals and non-goals
 
-我々の目標は、純粋な自動運転システムの開発ではなく、自動運転"プラットフォーム"の開発である。このプラットフォームでは、誰もが自動運転の機能を自由に拡張できる。
-
+我々の目標は、純粋な自動運転システムの開発ではなく、自動運転"プラットフォーム"の開発です。このプラットフォームでは、誰もが自動運転の機能を自由に拡張できます。
 
-Autowareではこのプラットフォーム観点から [microautonomy architecture](https://autowarefoundation.github.io/autoware-documentation/main/design/autoware-concepts) の概念を提唱しています。Microautonomyとは、適切な機能のモジュール化やインターフェースの明確な定義に基づき、高い拡張性を焦点を当てた自動運転システムの設計コンセプトです。
+Autowareでは、このプラットフォーム観点から [microautonomy architecture](https://autowarefoundation.github.io/autoware-documentation/main/design/autoware-concepts) の概念を提唱しています。Microautonomyとは、適切な機能のモジュール化やインターフェースの明確な定義に基づき、高い拡張性に焦点を当てた自動運転システムの設計コンセプトです。
 
-これを踏まえ、Planning component の設計方針は、世の中のすべての複雑な自動運転のユースケースを解決することではなく(なぜならそれは非常に難しい問題なので)、**ユーザーのニーズに合わせてカスタマイズでき、誰でも容易に機能拡張が可能なPlanning開発プラットフォームを提供すること** に設定されています。我々が提供するプラットフォームが様々なニーズに対する拡張性を獲得した結果、最終的に多くの複雑なユースケースが解決できるようになると信じています。
+これを踏まえ、Planning componentの設計方針は、世の中のすべての複雑な自動運転のユースケースを解決することではなく(なぜならそれは非常に難しい問題だからです)、**ユーザーのニーズに合わせてカスタマイズでき、誰でも容易に機能拡張が可能なPlanning開発プラットフォームを提供すること**に設定されています。我々が提供するプラットフォームが様々なニーズに対する拡張性を獲得した結果、最終的に多くの複雑なユースケースが解決できるようになると信じています。
 
-この方針を明確にするため、以下に Goal と Non-Goal をリスト化します。
+この方針を明確にするため、以下にGoalとNon-Goalをリスト化します。
 
 **Goals:**
 
 - **自動運転の走行に必要な最低限の基本機能を持つこと**
-  - Planning Componentは機能拡張以前に、自動運転のために必須な機能を提供する必要があります。これは走る、止まる、曲がるといった基本計画に加え、比較的安全な状況での車線変更や信号停止などの機能が含まれます。
-- **提供機能はモジュール化されており、誰でも機能の再利用や拡張が可能であること** 
-  - これはユーザーが期待するODDに対し、拡張機能によって対応できることを意味します。プラグインのような形で誰でも機能拡張ができれば、それぞれのニーズ(Lv4/Lv2自動運転、公道/私道走行、大型車両、小型ロボットなど)にあったシステムが提供できます。
-  - ユーザーのニーズには、純粋な自動運転としての性能ではなく、限定されたODD(例えば障害物のない管理された私道)において可能な限り消費電力を下げることなども含まれます。この場合はモジュールをdisableさせることによって、この場合はODDを限定させる代わりに、処理負荷を下げられるようにする必要があります。
-- **人間のオペレータによって能力が拡張できること** 
+  - Planning Componentは、機能拡張以前に、自動運転のために必須な機能を提供する必要があります。これには、走る、止まる、曲がるといった基本計画に加え、比較的安全でシンプルな状況での車線変更や信号停止などの機能が含まれます。
+- **提供機能はモジュール化されており、誰でも機能の再利用や拡張が可能であること**
+  - これはユーザーが期待するODDに対し、拡張機能によって対応できることを意味します。プラグインのような形で誰でも機能拡張ができれば、それぞれのニーズ(Lv4/Lv2自動運転、公道/私道走行、大型車両、小型ロボットなど)に合ったシステムが提供できます。
+  - ユーザーのニーズには、純粋な自動運転としての性能ではなく、限定されたODD(例えば障害物のない管理された私道)において可能な限り消費電力を下げることなども含まれます。この場合、モジュールをdisableさせることによって、ODDを限定する代わりに、処理負荷を下げることが可能です。
+- **人間のオペレータによって能力が拡張できること**
   - オペレータによる補助も機能拡張の一つです。これにより、非常に複雑で困難なユースケースにおいても、人間の補助という機能拡張で対応できることを意味します。ここで具体的なオペレータの種類は定義しません。研究フェーズにおいては車に同乗している人かもしれませんし、自動運転サービス提供者にとっては非常時にのみ繋がる遠隔オペレータかもしれません。
 
-
 **Non-goals:**
 
-Planning Componentは third-partyのモジュールによって機能拡張されることを想定しています。したがって、以下はAutowareのPlanning Component単体の目標から除外されます。
+Planning Componentはthird-partyのモジュールによって機能拡張されることを想定しています。したがって、以下はAutowareのPlanning Component単体の目標から除外されます。
 
-- ユーザーが必要とする機能の全てをAutoware単独で提供すること 
+- ユーザーが必要とする機能の全てをAutoware単独で提供すること
 - 自動運転としての完全な機能と性能
 - 人間の性能を常に上回る性能
 - 「絶対に衝突しない」という機能
 
-なお、「絶対に衝突しない」といった性能は現在の目標ではありませんが、外部モジュールとの連携や将来の強化によってそのような状態を達成できるようなアーキテクチャを作成することは我々の目標です。そしてこれらの要求は自動運転プラットフォームの視点から来ているものであり、一般的な自動運転システムにおけるPlanning Componentへの要求としては一般的では無いかもしれません。
+なお、「絶対に衝突しない」といった性能は現在の目標ではありませんが、外部モジュールとの連携や将来の強化によってそのような状態を達成できるようなアーキテクチャを作成することは我々の目標です。そしてこれらの要求は自動運転プラットフォームの視点から来ているものであり、一般的な自動運転システムにおけるPlanning Componentへの要求としては一般的ではないかもしれません。
 
 <!-- ## Requirements
 
@@ -64,21 +63,21 @@ WIP -->
 
 ## High level design
 
-このダイアグラムはPlanning Componentのハイレベルなアーキテクチャを示している。なお、これは理想的なハイレベルデザインであり、現時点での実装がこれに従っていないこともあることに注意する。実際の詳細な実装は後半を参照のこと。
+このダイアグラムはPlanning Componentのハイレベルなアーキテクチャを示しています。なお、これは理想的なハイレベルデザインであり、現時点での実装がこれに完全に従っているわけではないことに注意してください。実際の詳細な実装については後半を参照してください。
 
 <!-- ![overall-planning-architecture](image/high-level-planning-diagram.drawio.svg) -->
+
 ![overall-planning-architecture](image/high-level-planning-diagram-miyake-reviewed.drawio.svg)
 
-Planning コンポーネントはいくつかのサブコンポーネントからなります。
+Planning コンポーネントは以下のようないくつかのサブコンポーネントから構成されます。
 
-- **Mission Planning**: 地図情報をもとに、自動運転ミッションの設定や現在位置からゴールまでのルートを計算を行います。
-- **Planning Modules**: 定められたミッションに対し、目標軌道やウインカーなどの自車の振る舞いの計画を行います。このサブコンポーネントは機能を担当するいくつかのモジュールから成ります。これらのモジュールは便宜上、BehaviorとMotionの2つに分けられています。
+- **Mission Planning**: 地図情報を基に、自動運転ミッションの設定や現在位置からゴールまでのルート計算を行います。
+- **Planning Modules**: 定められたミッションに対して、目標軌道やウインカーなどの自車の振る舞いの計画を行います。このサブコンポーネントは、機能を担当するいくつかのモジュールから成り立っています。これらのモジュールは便宜上、BehaviorとMotionの2つに分類されます。
   - **Behavior Planner**: 交通ルールや安全を考慮して適切な経路を計算します。
   - **Motion Planner**: Behavior Plannerと連携し、車両運動や乗り心地を考慮した目標軌道を計算します。
-- **Validation**: 計算された目標軌道を検証し、安全性の担保や緊急時の振る舞いを担います。
+- **Validation**: 計算された目標軌道を検証し、安全性の確保や緊急時の対応を担います。
 
-
-ここでは microautonomy アーキテクチャに従い、モジュール型のシステムフレームワークを採用しています。planningの機能はモジュールとして実装され、これらのモジュールは与えられたユースケースに応じて動的/静的にload/unloadされます。これらには例えば、レーンチェンジ、交差点、横断歩道モジュールなどのモジュールが含まれています。
+ここではmicroautonomyアーキテクチャに従い、モジュール型のシステムフレームワークを採用しています。Planningの機能はモジュールとして実装され、これらのモジュールは与えられたユースケースに応じて動的/静的にload/unloadされます。これには例えば、レーンチェンジ、交差点、横断歩道モジュールなどが含まれます。
 
 ### Remarkable points
 
@@ -86,57 +85,46 @@ Planning コンポーネントはいくつかのサブコンポーネントか
 
 #### Modulation of each function
 
-ルート生成や車線変更や交差点、横断歩道などPlanningに必要な機能はモジュールとして管理されます。これらのモジュールに対してはある程度共通化されたインターフェースが提供され、それに従うことによって誰でもモジュールの追加や拡張を行うことができます。詳細なインターフェースは後述。
-
+ルート生成や車線変更、交差点、横断歩道などPlanningに必要な機能はモジュールとして管理されます。これらのモジュールにはある程度共通化されたインターフェースが提供され、それに従うことで誰でもモジュールの追加や拡張を行うことができます。詳細なインターフェースについては後述します。
 
 #### Separation of Mission Planning sub-component
 
-Mission Planningの役割は、FMS(Fleet Management System)などの既存サービスの代替になるものです。ハイレベルで定義されたMission Planningのインターフェースに従うことにより、これらthird-party機能との連携を容易に行うことができます。
+Mission Planningの役割は、FMS(Fleet Management System)などの既存サービスの代替となります。ハイレベルで定義されたMission Planningのインターフェースに従うことで、これらthird-party機能との連携を容易に行うことができます。
 
 #### Separation of Validation sub-component
 
-誰でも容易に拡張できるというPlanning Componentの性質の背反として、全ての機能それぞれにおいて期待されるレベルの安全性を担保することは困難です。PlanningのValidation機能は実際に経路計画などを行うモジュールからは分離して管理され、モジュールに任意の変更があった場合にも一定のレベルの安全を担保できるように設計されています。
+誰でも容易に拡張できるというPlanning Componentの性質上、全ての機能それぞれにおいて期待されるレベルの安全性を担保することは困難です。PlanningのValidation機能は、実際に経路計画などを行うモジュールからは分離して管理され、モジュールに任意の変更があった場合でも一定のレベルの安全を担保できるように設計されています。
 
 #### Interface for HMI (Human Machine Interface)
 
-
-Human Machine Interfaceとの連携は、人間オペレータとの連携を円滑に行うために必要不可欠なものです。このComponent間のインターフェースを介して、同乗オペレータや遠隔監視システムとの連携を可能にします。
-
-
+Human Machine Interfaceとの連携は、人間オペレータとの連携を円滑に行うために必要不可欠です。このComponent間のインターフェースを介して、同乗オペレータや遠隔監視システムとの連携を可能にします。
 
 #### Trade-offs for the separation of planning and other components
 
-Autowareの全体設計の話ではあるが、Planningを孤立したComponentとして設計することにおいても注意するべきトレードオフが存在します。planning、perception、localization、controlなどのコンポーネントを分離して開発することで、サードパーティ製のコンポーネントとの連携が容易になります。しかし、ここではパフォーマンスと拡張性の間にトレードオフがあります。例えば、perception コンポーネントは理想的には planning コンポーネントが必要とするオブジェクトだけを認識すれば十分ですが、コンポーネントを分離することでそのような密接なコミュニケーションが難しくなり、不要なオブジェクトに対しても処理を実行する必要があります。また、計画と制御を分離すると、計画時に車両の運動性能を考慮することが難しくなるという性能面の欠点があります。これを補うためには、インターフェースの情報量を増やすか、計算負荷を増やすなど対応が必要になります。
-
+Autowareの全体設計において、Planningを孤立したComponentとして設計する際のトレードオフに注意が必要です。Planning、Perception、Localization、Controlなどのコンポーネントを分離して開発することで、サードパーティ製のコンポーネントとの連携が容易になります。しかし、パフォーマンスと拡張性の間にはトレードオフが存在します。例えば、Perceptionコンポーネントは理想的にはPlanningコンポーネントが必要とするオブジェクトだけを認識すれば十分ですが、コンポーネントを分離することでそのような密接なコミュニケーションが難しくなり、不要なオブジェクトに対しても処理を実行する必要があります。また、計画と制御を分離すると、計画時に車両の運動性能を考慮することが難しくなるという性能面の欠点があります。これを補うためには、インターフェースの情報量を増やすか、計算負荷を増やすなどの対応が必要になります。
 
 ## How to extend/corporate with new features (WIP)
 
 Planning Componentのデザインの最も重要な機能の一つが、外部モジュールとの連携です。以下の図に示すように外部の機能を組み込む際にはいくつかの方法があります。
 
-
 ![how-to-add-new-modules](image/how-to-add-new-modules.drawio.svg)
 
-
-
 ### Planning Componentに新たなモジュールを追加する
 
 ユーザーはモジュールとして作成されたPlanningの機能を置き換えたり、機能追加をすることができます。これは最も一般的な機能の拡張方法です。これによって、求めるODDにおいて不足している機能を追加したり、逆に既存の機能をよりシンプルなものに変更したりすることができます。
 
-ただし、この機能追加を行うためには、各モジュールのインターフェースが適切に整理されている必要があります。2023.11現在ではこのような理想的なモジュールの仕組みは提供されておらず、いくつかの制限を含んでいます。詳細は Reference Implementationの [How to add new modules in the current implementation](#how-to-add-new-modules-in-the-current-implementation) を確認してください。
-
+ただし、この機能追加を行うためには、各モジュールのインターフェースが適切に整理されている必要があります。2023年11月現在では、このような理想的なモジュールの仕組みは提供されておらず、いくつかの制限があります。詳細はReference Implementationの [How to add new modules in the current implementation](#how-to-add-new-modules-in-the-current-implementation) を確認してください。
 
 ### Planningのサブコンポーネントを置き換える
 
-いくつかのユーザーは、サブコンポーネントレベルでの連携・拡張を行うことに興味があるでしょう。これは例えば、Mission Planningを既存のFMSサービスと置き換えたり、既存のValidation機能は使いつつ経路生成の機能を third-party製のもの置き換えるといった要求に該当します。
-
-後に説明される [Internal interface in the planning component](#internal-interface-in-the-planning-component) に従えば、サブコンポーネントレベルでの連携・拡張を行うことが可能です。既存のplanningの機能との複雑な連携はできませんが、一部のplanning componentの機能と外部モジュールとの連携が可能に成ります。
+いくつかのユーザーは、サブコンポーネントレベルでの連携・拡張に興味があるかもしれません。これは例えば、Mission Planningを既存のFMSサービスと置き換えたり、既存のValidation機能を使用しつつ経路生成の機能をthird-party製のものに置き換えるといった要求に該当します。
 
+後に説明される [Internal interface in the planning component](#internal-interface-in-the-planning-component) に従えば、サブコンポーネントレベルでの連携・拡張を行うことが可能です。既存のPlanningの機能との複雑な連携はできませんが、一部のPlanning Componentの機能と外部モジュールとの連携が可能になります。
 
 ### Planning Component全体を置き換える
 
 自動運転のPlanningシステムを開発している企業や研究室などは、自社のPlanning製品をAutowareのPerceptionやControlモジュールと連携させ、自動運転システム全体の評価を行うことに関心があるでしょう。これはPlanning全体を置き換えることによって可能となります。Component間で定義される、おそらく最も堅牢で安定したインターフェースに従えば簡単に置き換えが可能です。ただし、既存のplanningモジュールとの連携はできません。
 
-
 ## Component interface
 
 This section describes the inputs and outputs of the Planning Component and of its internal modules. See the [Planning Component Interface](../../autoware-interfaces/components/planning.md) page for the current implementation.
@@ -186,7 +174,6 @@ This section describes the inputs and outputs of the Planning Component and of i
 - **Validation to Control Component**
   - Trajectory: Same as above but with some additional safety considerations.
 
-
 ## Detailed design
 
 ### Supported features
@@ -239,9 +226,6 @@ The following diagram describes the reference implementation of the Planning com
 
 _Note that some implementation does not adhere to the high-level architecture design due to the difficulties of the implementation and require updating._
 
-
-
-
 ![reference-implementation](image/planning-diagram-tmp.drawio.svg)
 
 For more details, please refer to the design documents in each package.
@@ -277,15 +261,16 @@ For more details, please refer to the design documents in each package.
 - [_external_velocity_limit_selector_](https://autowarefoundation.github.io/autoware.universe/main/planning/external_velocity_limit_selector/): takes an appropriate velocity limit from multiple candidates.
 - [_motion_velocity_smoother_](https://autowarefoundation.github.io/autoware.universe/main/planning/motion_velocity_smoother/): calculates final velocity considering velocity, acceleration, and jerk constraints.
 
-
 ### Important information in the current implementation
 
 ハイレベルなデザインと比較したときの重要な違いは、「シナリオレイヤーの導入」と「behavior/motionの明確な分離」です。これらは現時点での性能や実装的な課題から導入されています。これらをハイレベルなデザインとして定義するか、それとも実装の一部として改良していくかは議論の必要があります。
 
 #### Introducing the Scenario Planning layer
+
 There are different requirements for interfaces between driving in well-structured lanes and driving in a free-space area like a parking lot. For example, while Lane Driving can handle routes with map IDs, this is not appropriate for planning in free space. The mechanism that switches planning sub-components at the scenario level (Lane Driving, Parking, etc) enables a flexible design of the interface, however, it has a drawbacks of the reuse of modules across different scenarios.
 
 #### Separation of Behavior and Motion
+
 One of the classic approach to Planning involves dividing it into "Behavior", which decides the action, and "Motion", which determines the final movement. However, this separation implies a trade-off with performance, as performance tends to degrade with increasing separation of functions. For example, Behavior needs to make decisions without prior knowledge of the computations that Motion will eventually perform, which generally results in conservative decision-making. On the other hand, if behavior and motion are integrated, motion performance and decision-making become interdependent, creating challenges in terms of expandability, such as when you wish to extend only the decision-making function to follow a regional traffic rules.
 
 To understand this background, this [previously discussed document](https://github.com/tier4/AutowareArchitectureProposal.proj/blob/main/docs/design/software_architecture/Planning/DesignRationale.md) may be useful.
@@ -296,12 +281,10 @@ To understand this background, this [previously discussed document](https://gith
 
 ![reference-implementation-add-new-modules](image/reference-implementation-add-new-modules.drawio.svg)
 
-
 #### Add new modules in behavior_velocity_planner or behavior_path_plnner
 
 [behavior_path_planner](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_path_planner/) や [behavior_velocity_planner](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_planner/) などの ROS nodeは、pluginによるモジュールインターフェースが用意されています。これらの ROS nodeで定義されるモジュールのインターフェースに沿ってモジュールを追加することにより、動的にモジュールのload/unloadが可能となります。具体的なモジュール追加の方法については、各パッケージのドキュメントをご確認ください。
 
-
 #### Add a new ros node in the planning component
 
 Motion Planningにおいてモジュールを追加する場合は、モジュールをROS Nodeで作成し、planning componentの中に統合する必要があります。現時点の構成は、上流で計算される目標軌道に対して情報を付加する形となっており、その過程に ROS Node を導入することによって機能の拡張を可能とします。
@@ -312,9 +295,7 @@ Motion Planningにおいてモジュールを追加する場合は、モジュ
 
 実際にシナリオをros nodeなどで作成し、scenario_selectorというros nodeをそのシナリオに対応させれば統合は完了します。このメリットは、他のシナリオ(Lane Drivingなど)の実装に影響を与えずに、大きな新規機能を導入することができます。一方で、既存のplanning moduleレベルでの連携を行うことはできず、シナリオの切り替えによるシナリオレベルでの連携しかできません。
 
-
-
-<!-- 
+<!--
 ### Important Parameters
 
 | Package                      | Parameter                                                     | Type   | Description                                                                                                        |
diff --git a/docs/design/autoware-architecture/planning/index.md b/docs/design/autoware-architecture/planning/index.md
index 1c47a8d9a31..c3bdc02a159 100644
--- a/docs/design/autoware-architecture/planning/index.md
+++ b/docs/design/autoware-architecture/planning/index.md
@@ -9,10 +9,9 @@
 - ハイレベルに対するユースケースを上げる
 - 車両の振る舞いのユースケース
   - 話ゴールやチェくポイント、NGポイントを与えてplanning内部でルートを計算して進む / 渋滞情報を加味したルートを外部から与えて走行する
-開発者のユースケース
+    開発者のユースケース
   - 中の作りの話(実装や設計レベル):機能の差し替えができていてほしいので(レーンチェンジAとレーンチェンジBとか)、柔軟に変更できる必要があり、各機能はモジュールとして実装される。
 
-
 ## Purpose of this document
 
 This document outlines the high-level design strategies, goals and related rationales in the development of the Planning Component. Through this document, it is expected that all OSS developers will comprehend the design philosophy, goals and constraints under which the Planning Component is designed, and participate seamlessly in the development.
@@ -108,7 +107,7 @@ Following the microautonomy architecture, we adopt a modular system framework wh
 
 ここでは microautonomy アーキテクチャに従い、モジュール型のシステムフレームワークを採用しています。planningの機能はモジュールとして実装され、これらのモジュールは与えられたユースケースに応じて動的にロードおよびアンロードされます。例えば、behavior planning のサブコンポーネントには、レーンチェンジ、交差点、横断歩道モジュールなどのモジュールが含まれています。
 
-### Discussions -> わからん。trade-off選定とかにしよう。
+### Discussions -> わからん。trade-off選定とかにしよう
 
 The following provides discussion points on trade-offs in the architecture. From this information, you can see the current design limitation, challenges, and potential improvement.
 

From 36d0adc72b8353cca0ca2635772010749b5102cc Mon Sep 17 00:00:00 2001
From: Takamasa Horibe <horibe.takamasa@gmail.com>
Date: Fri, 24 Nov 2023 22:07:21 +0900
Subject: [PATCH 16/19] update

Signed-off-by: Takamasa Horibe <horibe.takamasa@gmail.com>
---
 ...lanning-diagram-miyake-reviewed.drawio.svg |  8 ++++--
 .../planning/index-update.md                  | 28 +++++++++----------
 2 files changed, 19 insertions(+), 17 deletions(-)

diff --git a/docs/design/autoware-architecture/planning/image/high-level-planning-diagram-miyake-reviewed.drawio.svg b/docs/design/autoware-architecture/planning/image/high-level-planning-diagram-miyake-reviewed.drawio.svg
index cbf19c12b49..8129b30d350 100644
--- a/docs/design/autoware-architecture/planning/image/high-level-planning-diagram-miyake-reviewed.drawio.svg
+++ b/docs/design/autoware-architecture/planning/image/high-level-planning-diagram-miyake-reviewed.drawio.svg
@@ -1,4 +1,4 @@
-<svg host="65bd71144e" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="1251px" height="754px" viewBox="-0.5 -0.5 1251 754" content="&lt;mxfile&gt;&lt;diagram id=&quot;8qt1-HtFgWOiWtJ-FPd8&quot; name=&quot;planning (v0.13.0)&quot;&gt;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&lt;/diagram&gt;&lt;/mxfile&gt;">
+<svg host="65bd71144e" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="1251px" height="754px" viewBox="-0.5 -0.5 1251 754" content="&lt;mxfile&gt;&lt;diagram id=&quot;8qt1-HtFgWOiWtJ-FPd8&quot; name=&quot;planning (v0.13.0)&quot;&gt;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&lt;/diagram&gt;&lt;/mxfile&gt;">
     <defs/>
     <g>
         <rect x="990" y="102.05" width="260" height="190" fill="rgb(255, 255, 255)" stroke="rgb(0, 0, 0)" pointer-events="all"/>
@@ -510,8 +510,8 @@
         <path d="M 157.76 355.53 L 145.76 361.53 L 145.77 349.53 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
         <path d="M 80 484.61 L 145.76 484.62" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
         <path d="M 157.76 484.62 L 145.76 490.62 L 145.77 478.62 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
-        <path d="M 94.56 612.23 L 160 612.01" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
-        <path d="M 82.56 612.27 L 94.54 606.23 L 94.58 618.23 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 80.32 642.27 L 145.76 642.06" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 157.76 642.02 L 145.78 648.06 L 145.74 636.06 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
         <rect x="300" y="180.05" width="125" height="19" fill="#000000" stroke="#000000" pointer-events="none" transform="translate(2,3)" opacity="0.25"/>
         <rect x="300" y="180.05" width="125" height="19" fill="#bac8d3" stroke="#23445d" pointer-events="none"/>
         <g transform="translate(-0.5 -0.5)">
@@ -818,6 +818,8 @@
         <path d="M 545 697.76 L 539 685.76 L 551 685.76 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
         <path d="M 545 54 L 545 134.06" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
         <path d="M 545 146.06 L 539 134.06 L 551 134.06 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 94.56 582.23 L 160 582.01" fill="none" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
+        <path d="M 82.56 582.27 L 94.54 576.23 L 94.58 588.23 Z" fill="rgb(0, 0, 0)" stroke="rgb(0, 0, 0)" stroke-width="2" stroke-miterlimit="10" pointer-events="none"/>
     </g>
     <switch>
         <g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/>
diff --git a/docs/design/autoware-architecture/planning/index-update.md b/docs/design/autoware-architecture/planning/index-update.md
index 4ae86bd2b94..a01cdab6796 100644
--- a/docs/design/autoware-architecture/planning/index-update.md
+++ b/docs/design/autoware-architecture/planning/index-update.md
@@ -39,8 +39,8 @@ Autowareでは、このプラットフォーム観点から [microautonomy archi
 - **提供機能はモジュール化されており、誰でも機能の再利用や拡張が可能であること**
   - これはユーザーが期待するODDに対し、拡張機能によって対応できることを意味します。プラグインのような形で誰でも機能拡張ができれば、それぞれのニーズ(Lv4/Lv2自動運転、公道/私道走行、大型車両、小型ロボットなど)に合ったシステムが提供できます。
   - ユーザーのニーズには、純粋な自動運転としての性能ではなく、限定されたODD(例えば障害物のない管理された私道)において可能な限り消費電力を下げることなども含まれます。この場合、モジュールをdisableさせることによって、ODDを限定する代わりに、処理負荷を下げることが可能です。
-- **人間のオペレータによって能力が拡張できること**
-  - オペレータによる補助も機能拡張の一つです。これにより、非常に複雑で困難なユースケースにおいても、人間の補助という機能拡張で対応できることを意味します。ここで具体的なオペレータの種類は定義しません。研究フェーズにおいては車に同乗している人かもしれませんし、自動運転サービス提供者にとっては非常時にのみ繋がる遠隔オペレータかもしれません。
+- **オペレータとの連携によって能力が拡張できること**
+  - オペレータによる補助も機能拡張の一つです。これにより、非常に複雑で困難なユースケースにおいても、人間の補助という機能拡張で対応できることを意味します。ここでは具体的なオペレータの種類は定義されません。研究フェーズにおいては車に同乗している人かもしれませんし、自動運転サービスにおいては非常時に繋がる遠隔オペレータかもしれません。
 
 **Non-goals:**
 
@@ -49,9 +49,9 @@ Planning Componentはthird-partyのモジュールによって機能拡張され
 - ユーザーが必要とする機能の全てをAutoware単独で提供すること
 - 自動運転としての完全な機能と性能
 - 人間の性能を常に上回る性能
-- 「絶対に衝突しない」という機能
+- 完全な安全性
 
-なお、「絶対に衝突しない」といった性能は現在の目標ではありませんが、外部モジュールとの連携や将来の強化によってそのような状態を達成できるようなアーキテクチャを作成することは我々の目標です。そしてこれらの要求は自動運転プラットフォームの視点から来ているものであり、一般的な自動運転システムにおけるPlanning Componentへの要求としては一般的ではないかもしれません。
+注意として、これらの要求は自動運転プラットフォームの視点から来ているものであり、一般的な自動運転システムにおけるPlanning Componentへの要求として一般的なものではないありません。
 
 <!-- ## Requirements
 
@@ -69,15 +69,15 @@ WIP -->
 
 ![overall-planning-architecture](image/high-level-planning-diagram-miyake-reviewed.drawio.svg)
 
+ここではmicroautonomyアーキテクチャに従い、モジュール型のシステムフレームワークを採用しています。Planningの機能はモジュールとして実装され、これらのモジュールは与えられたユースケースに応じて動的/静的にload/unloadされます。これには例えば、レーンチェンジ、交差点、横断歩道モジュールなどが含まれます。
+
 Planning コンポーネントは以下のようないくつかのサブコンポーネントから構成されます。
 
-- **Mission Planning**: 地図情報を基に、自動運転ミッションの設定や現在位置からゴールまでのルート計算を行います。
+- **Mission Planning**: 地図情報を基に、自動運転ミッションの設定や現在位置からゴールまでのルート計算を行います。既存のサービスと比較すると、FMS(Fleet Management System)のミッション管理やカーナビのルート探索機能などを担当するモジュールです。
 - **Planning Modules**: 定められたミッションに対して、目標軌道やウインカーなどの自車の振る舞いの計画を行います。このサブコンポーネントは、機能を担当するいくつかのモジュールから成り立っています。これらのモジュールは便宜上、BehaviorとMotionの2つに分類されます。
-  - **Behavior Planner**: 交通ルールや安全を考慮して適切な経路を計算します。
-  - **Motion Planner**: Behavior Plannerと連携し、車両運動や乗り心地を考慮した目標軌道を計算します。
-- **Validation**: 計算された目標軌道を検証し、安全性の確保や緊急時の対応を担います。
-
-ここではmicroautonomyアーキテクチャに従い、モジュール型のシステムフレームワークを採用しています。Planningの機能はモジュールとして実装され、これらのモジュールは与えられたユースケースに応じて動的/静的にload/unloadされます。これには例えば、レーンチェンジ、交差点、横断歩道モジュールなどが含まれます。
+  - **Behavior**: 交通ルールや安全を考慮して適切な経路を計算します。レーンチェンジや交差点進入、信号停止などの安全確認および実行判断を行います。
+  - **Motion**: Behaviorと連携し、車両運動や乗り心地を考慮した目標軌道を計算します。具体的には、経路形状を計算する横方向計画と、速度を計算する縦方向計画の機能からなります。
+- **Validation**: 計算された目標軌道を検証し、安全性の確保や緊急時の対応を担います。Planningの計算した軌道が不適切な場合は、SystemにEmergencyを通知したり、暫定的な軌道生成を行います。
 
 ### Remarkable points
 
@@ -103,7 +103,7 @@ Human Machine Interfaceとの連携は、人間オペレータとの連携を円
 
 Autowareの全体設計において、Planningを孤立したComponentとして設計する際のトレードオフに注意が必要です。Planning、Perception、Localization、Controlなどのコンポーネントを分離して開発することで、サードパーティ製のコンポーネントとの連携が容易になります。しかし、パフォーマンスと拡張性の間にはトレードオフが存在します。例えば、Perceptionコンポーネントは理想的にはPlanningコンポーネントが必要とするオブジェクトだけを認識すれば十分ですが、コンポーネントを分離することでそのような密接なコミュニケーションが難しくなり、不要なオブジェクトに対しても処理を実行する必要があります。また、計画と制御を分離すると、計画時に車両の運動性能を考慮することが難しくなるという性能面の欠点があります。これを補うためには、インターフェースの情報量を増やすか、計算負荷を増やすなどの対応が必要になります。
 
-## How to extend/corporate with new features (WIP)
+## Customize features
 
 Planning Componentのデザインの最も重要な機能の一つが、外部モジュールとの連携です。以下の図に示すように外部の機能を組み込む際にはいくつかの方法があります。
 
@@ -113,7 +113,7 @@ Planning Componentのデザインの最も重要な機能の一つが、外部
 
 ユーザーはモジュールとして作成されたPlanningの機能を置き換えたり、機能追加をすることができます。これは最も一般的な機能の拡張方法です。これによって、求めるODDにおいて不足している機能を追加したり、逆に既存の機能をよりシンプルなものに変更したりすることができます。
 
-ただし、この機能追加を行うためには、各モジュールのインターフェースが適切に整理されている必要があります。2023年11月現在では、このような理想的なモジュールの仕組みは提供されておらず、いくつかの制限があります。詳細はReference Implementationの [How to add new modules in the current implementation](#how-to-add-new-modules-in-the-current-implementation) を確認してください。
+ただし、この機能追加を行うためには、各モジュールのインターフェースが適切に整理されている必要があります。2023年11月現在では、このような理想的なモジュールの仕組みは提供されておらず、いくつかの制限があります。詳細はReference Implementationの [Customize features in the current implementation](#customize-features-in-the-current-implementation) を確認してください。
 
 ### Planningのサブコンポーネントを置き換える
 
@@ -145,7 +145,7 @@ This section describes the inputs and outputs of the Planning Component and of i
 - **From Human Machine Interface (HMI)**
   - Feature execution: Allows for executing/authorizing autonomous driving operations, such as lane changes or entering intersections, by human operators.
 - **From API Layer**
-  - Goal: Represents the final position that the Planning Component aims to reach.
+  - Destination (Goal): Represents the final position that the Planning Component aims to reach.
   - Checkpoint: Represents a midpoint along the route to the destination. This is used during route calculation.
   - Velocity limit: Sets the maximum speed limit for the vehicle.
 
@@ -275,7 +275,7 @@ One of the classic approach to Planning involves dividing it into "Behavior", wh
 
 To understand this background, this [previously discussed document](https://github.com/tier4/AutowareArchitectureProposal.proj/blob/main/docs/design/software_architecture/Planning/DesignRationale.md) may be useful.
 
-### How to add new modules in the current implementation
+### Customize features in the current implementation
 
 現時点の実装でもモジュールレベルの機能の追加は可能ですが、全ての機能に対して統一的なインターフェースは提供されていません。モジュールレベルでの拡張を行うための、現時点での実装方法について簡単に説明します。
 

From 779aa4cb69e1d96090483de30a83aa05f8255f2b Mon Sep 17 00:00:00 2001
From: Takamasa Horibe <horibe.takamasa@gmail.com>
Date: Tue, 28 Nov 2023 20:41:09 +0900
Subject: [PATCH 17/19] update

Signed-off-by: Takamasa Horibe <horibe.takamasa@gmail.com>
---
 .../planning/index-update.md                     | 16 ++++++++--------
 1 file changed, 8 insertions(+), 8 deletions(-)

diff --git a/docs/design/autoware-architecture/planning/index-update.md b/docs/design/autoware-architecture/planning/index-update.md
index a01cdab6796..ba45d36f96a 100644
--- a/docs/design/autoware-architecture/planning/index-update.md
+++ b/docs/design/autoware-architecture/planning/index-update.md
@@ -24,11 +24,11 @@
 
 ## Goals and non-goals
 
-我々の目標は、純粋な自動運転システムの開発ではなく、自動運転"プラットフォーム"の開発です。このプラットフォームでは、誰もが自動運転の機能を自由に拡張できます。
+我々の目標は、純粋な自動運転システムの開発ではなく、自動運転「プラットフォーム」の開発です。このプラットフォームでは、誰もが自動運転の機能を自由に拡張できます。
 
 Autowareでは、このプラットフォーム観点から [microautonomy architecture](https://autowarefoundation.github.io/autoware-documentation/main/design/autoware-concepts) の概念を提唱しています。Microautonomyとは、適切な機能のモジュール化やインターフェースの明確な定義に基づき、高い拡張性に焦点を当てた自動運転システムの設計コンセプトです。
 
-これを踏まえ、Planning componentの設計方針は、世の中のすべての複雑な自動運転のユースケースを解決することではなく(なぜならそれは非常に難しい問題だからです)、**ユーザーのニーズに合わせてカスタマイズでき、誰でも容易に機能拡張が可能なPlanning開発プラットフォームを提供すること**に設定されています。我々が提供するプラットフォームが様々なニーズに対する拡張性を獲得した結果、最終的に多くの複雑なユースケースが解決できるようになると信じています。
+これを踏まえ、Planning componentの設計方針は、世の中のすべての複雑な自動運転のユースケースを解決することではなく(なぜならそれは非常に難しい問題だからです)、**ユーザーのニーズに合わせてカスタマイズでき、誰でも容易に機能拡張が可能なPlanning開発プラットフォームを提供すること** に設定されています。我々が提供するプラットフォームが様々なニーズに対する拡張性を獲得した結果、最終的に多くの複雑なユースケースが解決できるようになると信じています。
 
 この方針を明確にするため、以下にGoalとNon-Goalをリスト化します。
 
@@ -36,9 +36,9 @@ Autowareでは、このプラットフォーム観点から [microautonomy archi
 
 - **自動運転の走行に必要な最低限の基本機能を持つこと**
   - Planning Componentは、機能拡張以前に、自動運転のために必須な機能を提供する必要があります。これには、走る、止まる、曲がるといった基本計画に加え、比較的安全でシンプルな状況での車線変更や信号停止などの機能が含まれます。
-- **提供機能はモジュール化されており、誰でも機能の再利用や拡張が可能であること**
+- **提供機能はモジュール化されており、誰でも機能の拡張が可能であること**
   - これはユーザーが期待するODDに対し、拡張機能によって対応できることを意味します。プラグインのような形で誰でも機能拡張ができれば、それぞれのニーズ(Lv4/Lv2自動運転、公道/私道走行、大型車両、小型ロボットなど)に合ったシステムが提供できます。
-  - ユーザーのニーズには、純粋な自動運転としての性能ではなく、限定されたODD(例えば障害物のない管理された私道)において可能な限り消費電力を下げることなども含まれます。この場合、モジュールをdisableさせることによって、ODDを限定する代わりに、処理負荷を下げることが可能です。
+  - また、限定されたODD(例えば障害物のない管理された私道)において、機能を縮小できることも重要です。モジュール化された機能をDisableすることによって、機能を限定する代わりに処理負荷や消費電力を削減できます。
 - **オペレータとの連携によって能力が拡張できること**
   - オペレータによる補助も機能拡張の一つです。これにより、非常に複雑で困難なユースケースにおいても、人間の補助という機能拡張で対応できることを意味します。ここでは具体的なオペレータの種類は定義されません。研究フェーズにおいては車に同乗している人かもしれませんし、自動運転サービスにおいては非常時に繋がる遠隔オペレータかもしれません。
 
@@ -46,7 +46,7 @@ Autowareでは、このプラットフォーム観点から [microautonomy archi
 
 Planning Componentはthird-partyのモジュールによって機能拡張されることを想定しています。したがって、以下はAutowareのPlanning Component単体の目標から除外されます。
 
-- ユーザーが必要とする機能の全てをAutoware単独で提供すること
+- ユーザーが必要とする機能の全てをAutoware単体で提供すること
 - 自動運転としての完全な機能と性能
 - 人間の性能を常に上回る性能
 - 完全な安全性
@@ -79,9 +79,9 @@ Planning コンポーネントは以下のようないくつかのサブコン
   - **Motion**: Behaviorと連携し、車両運動や乗り心地を考慮した目標軌道を計算します。具体的には、経路形状を計算する横方向計画と、速度を計算する縦方向計画の機能からなります。
 - **Validation**: 計算された目標軌道を検証し、安全性の確保や緊急時の対応を担います。Planningの計算した軌道が不適切な場合は、SystemにEmergencyを通知したり、暫定的な軌道生成を行います。
 
-### Remarkable points
+### Highlights
 
-このハイレベルデザインにおいて、Goalsに対する重要な設計として、以下を挙げます。
+このハイレベルデザインにおける重要なポイントを以下に列挙します。
 
 #### Modulation of each function
 
@@ -162,8 +162,8 @@ This section describes the inputs and outputs of the Planning Component and of i
 - **To API Layer**
   - Planning factors: Provides information about the reasoning behind the current planning behavior. This may include the position of target objects to avoid, obstacles that led to the decision to stop, and other relevant information.
 
-### Internal interface in the planning component
 
+### Internal interface in the planning component
 - **Mission Planning to Scenario Planning**
   - Route: Offers guidance for the path that needs to be followed from the starting point to the destination. This path is determined based on information such as lane IDs defined on the map. At the route level, it doesn't explicitly indicate which specific lanes to take, and the route can contain multiple lanes.
 - **Behavior Planning to Motion Planning**

From 88dfedac08c8c3fb822451d7a523b8912d65e6af Mon Sep 17 00:00:00 2001
From: Takamasa Horibe <horibe.takamasa@gmail.com>
Date: Wed, 29 Nov 2023 13:46:35 +0900
Subject: [PATCH 18/19] update

Signed-off-by: Takamasa Horibe <horibe.takamasa@gmail.com>
---
 docs/design/autoware-architecture/planning/index-update.md | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/docs/design/autoware-architecture/planning/index-update.md b/docs/design/autoware-architecture/planning/index-update.md
index ba45d36f96a..2ae9457e8c8 100644
--- a/docs/design/autoware-architecture/planning/index-update.md
+++ b/docs/design/autoware-architecture/planning/index-update.md
@@ -24,7 +24,7 @@
 
 ## Goals and non-goals
 
-我々の目標は、純粋な自動運転システムの開発ではなく、自動運転「プラットフォーム」の開発です。このプラットフォームでは、誰もが自動運転の機能を自由に拡張できます。
+我々の目標は、純粋な自動運転システムの開発ではなく、自動運転「プラットフォーム」の提供です。このプラットフォームでは、誰もが自動運転の機能を自由に拡張できます。
 
 Autowareでは、このプラットフォーム観点から [microautonomy architecture](https://autowarefoundation.github.io/autoware-documentation/main/design/autoware-concepts) の概念を提唱しています。Microautonomyとは、適切な機能のモジュール化やインターフェースの明確な定義に基づき、高い拡張性に焦点を当てた自動運転システムの設計コンセプトです。
 

From 9084240a503a77fca9bb27c8e62f69e104604e36 Mon Sep 17 00:00:00 2001
From: Takamasa Horibe <horibe.takamasa@gmail.com>
Date: Wed, 6 Dec 2023 12:18:51 +0900
Subject: [PATCH 19/19] update

Signed-off-by: Takamasa Horibe <horibe.takamasa@gmail.com>
---
 .../{index-update.md => index-japanese.md}    |  23 +-
 .../autoware-architecture/planning/index.md   | 235 ++++++++----------
 2 files changed, 104 insertions(+), 154 deletions(-)
 rename docs/design/autoware-architecture/planning/{index-update.md => index-japanese.md} (97%)

diff --git a/docs/design/autoware-architecture/planning/index-update.md b/docs/design/autoware-architecture/planning/index-japanese.md
similarity index 97%
rename from docs/design/autoware-architecture/planning/index-update.md
rename to docs/design/autoware-architecture/planning/index-japanese.md
index 2ae9457e8c8..194dfdc21d1 100644
--- a/docs/design/autoware-architecture/planning/index-update.md
+++ b/docs/design/autoware-architecture/planning/index-japanese.md
@@ -1,20 +1,6 @@
 # Planning component design
 
-<!--
-- discussionsはトレードオフ選定とかにしたい
-- サードパーティによって拡張というよりは、誰でも拡張できるって言い回しのほうが良いはず
-- mission plannerの使われ方を重点的に考えよう。FMSとして機能が外だしされることがあるから、これは別れてるのよ。
-- ハイレベルなデザインと詳細なデザインではなく、アーキテクチャのためのデザイン(要求ベース、これがやりたい)と、アーキテクチャ(詳細なフロー)ができるはず。
-- デザインの部分に、ポリシーによる変更がわかるような書き方があると良い。ポリシーA(右側走行)になったときに、いくつかのモジュールが特定の設定で起動する。どう図にするか。。。
-- このポリシーに対して、何がどうかわるかという例があるといい。自動運転レベルが変わったときに、HMIとの連携がこう変わって、軌道モジュールがこう変わる、とか。
-- ハイレベルに対するユースケースを上げる
-- 車両の振る舞いのユースケース
-  - 話ゴールやチェくポイント、NGポイントを与えてplanning内部でルートを計算して進む / 渋滞情報を加味したルートを外部から与えて走行する
-開発者のユースケース
-  - 中の作りの話(実装や設計レベル):機能の差し替えができていてほしいので(レーンチェンジAとレーンチェンジBとか)、柔軟に変更できる必要があり、各機能はモジュールとして実装される。
- -->
-
-## Context and scope
+## Purpose
 
 自動運転システムにおける Planning コンポーネントの役割は、与えられたミッションを満たすために、安全で交通ルールに基づいた自動運転車両の目標軌道(経路と速度)を生成することです。
 
@@ -53,13 +39,6 @@ Planning Componentはthird-partyのモジュールによって機能拡張され
 
 注意として、これらの要求は自動運転プラットフォームの視点から来ているものであり、一般的な自動運転システムにおけるPlanning Componentへの要求として一般的なものではないありません。
 
-<!-- ## Requirements
-
-WIP
-
-## Assumptions
-
-WIP -->
 
 ## High level design
 
diff --git a/docs/design/autoware-architecture/planning/index.md b/docs/design/autoware-architecture/planning/index.md
index c3bdc02a159..98db42aacf1 100644
--- a/docs/design/autoware-architecture/planning/index.md
+++ b/docs/design/autoware-architecture/planning/index.md
@@ -1,157 +1,106 @@
 # Planning component design
 
-- discussionsはトレードオフ選定とかにしたい
-- サードパーティによって拡張というよりは、誰でも拡張できるって言い回しのほうが良いはず
-- mission plannerの使われ方を重点的に考えよう。FMSとして機能が外だしされることがあるから、これは別れてるのよ。
-- ハイレベルなデザインと詳細なデザインではなく、アーキテクチャのためのデザイン(要求ベース、これがやりたい)と、アーキテクチャ(詳細なフロー)ができるはず。
-- デザインの部分に、ポリシーによる変更がわかるような書き方があると良い。ポリシーA(右側走行)になったときに、いくつかのモジュールが特定の設定で起動する。どう図にするか。。。
-- このポリシーに対して、何がどうかわるかという例があるといい。自動運転レベルが変わったときに、HMIとの連携がこう変わって、軌道モジュールがこう変わる、とか。
-- ハイレベルに対するユースケースを上げる
-- 車両の振る舞いのユースケース
-  - 話ゴールやチェくポイント、NGポイントを与えてplanning内部でルートを計算して進む / 渋滞情報を加味したルートを外部から与えて走行する
-    開発者のユースケース
-  - 中の作りの話(実装や設計レベル):機能の差し替えができていてほしいので(レーンチェンジAとレーンチェンジBとか)、柔軟に変更できる必要があり、各機能はモジュールとして実装される。
+## Purpose
 
-## Purpose of this document
+The role of the Planning Component in autonomous driving systems is to generate a target trajectory (path and speed) for autonomous vehicles that is safe and following traffic rules, in order to fulfill a given mission.
 
-This document outlines the high-level design strategies, goals and related rationales in the development of the Planning Component. Through this document, it is expected that all OSS developers will comprehend the design philosophy, goals and constraints under which the Planning Component is designed, and participate seamlessly in the development.
+This document summarizes the requirements and design of planning in Autoware. This will enable developers to understand how the Planning Component is designed and how to extend its capabilities.
 
-このドキュメントは Planning コンポーネントの開発における目標、ハイレベルな設計方針、およびそれらの議論ポイントをまとめています。このドキュメントを通じて、すべてのOSS開発者はPlanning コンポーネントがどのような設計思想、目標、制約の下で設計されているかを理解することができ、それによってスムーズに開発に参加することができます。
-
-Furthermore, detailed design of the reference imprementations and provided featres are are included in the latter part of this document, while this information might be managed separately in the future. This allows developers and users to understand what is currently available with the Planning Component, how to utilize, expand, or add to its features.
-
-ドキュメントの後半では、詳細設計としてリファレンス実装や提供機能の一覧も記載しています(この情報は将来的に別のドキュメントで管理されるかもしれません)。これにより、開発者やユーザーは Planning コンポーネントの現在の実装、およびそれらをどのように活用、拡張するかを理解することができます。
+The first half of the document discusses high-level requirements and design, while the latter half covers actual implementations and provided functionalities.
 
 ## Goals and non-goals
 
-The role of the Planning component is to generate a trajectory (path and velocity) of the self-driving vehicle that is safe and well-regulated while satisfying the given mission.
-
-Planning コンポーネントの役割は、与えられたミッションを満たしつつ、安全で交通ルールに基づいた自動運転車両の目標軌道(経路と速度)を生成することです。
+Our goal is not the development of just an autonomous driving system, but the provision of an autonomous driving "platform." On this platform, anyone can extend the functionalities of autonomous driving based on their needs.
 
-In our overall design, we emphasize the concept of [microautonomy architecture](https://autowarefoundation.github.io/autoware-documentation/main/design/autoware-concepts). This term refers to a design approach that focuses on the proper modularization of functions, clear definition of interfaces between these modules, and as a result, high expandability of the system. Given this context, the goal of the Planning component is set not to solve every conceivable complex use case (although we do aim to support basic ones), but rather to provide a platform that can be customized to the user's needs and can facilitate the development of additional features.
+In Autoware, we employ the concept of a [microautonomy architecture](https://autowarefoundation.github.io/autoware-documentation/main/design/autoware-concepts). Microautonomy is a design concept for autonomous driving systems focused on high extensibility, based on appropriate functional modularity and clear interface definitions.
 
-Planningの全体設計において、我々は [microautonomy architecture](https://autowarefoundation.github.io/autoware-documentation/main/design/autoware-concepts) の概念を重視しています。microautonomy とは、適切な機能のモジュール化やインターフェースの明確な定義に基づき、システムの高い拡張性を焦点を当てた設計コンセプトです。そのため Planning component の目標は、すべての考えられる複雑なユースケースを解決することではなく(基本的なものはサポートすることを目指していますが)、ユーザーのニーズに合わせてカスタマイズでき、第三者によって機能が容易に追加可能なプラットフォームを提供することに設定されています。
+With this in mind, the design policy for the Planning component is not to solve all the complex use cases of autonomous driving (as that is a very challenging problem), but **to provide a Planning development platform that can be customized according to user needs and easily extended by anyone**. We believe that as our platform gains extensibility to various needs, many complex use cases will ultimately be resolved.
 
-To clarify the design concepts, the following points are listed as goals and non-goals.
-
-この設計コンセプトを明確にするため、以下に Goal と Non-Goal をリスト化します。
+To clarify this policy, Goals and Non-Goals are listed below.
 
 **Goals:**
 
-- The basic functions are provided so that a simple Operational Design Domain (ODD) can be defined.
-  - **TODO**: need more information for the "simple ODD"
-- The functionality is modularized to accommodate the third-party components. That is, a complicated or realistic ODD needs not be defined by the basic functions provided by default.
-  - **TODO**: need to clarify the meaning of the "realistic ODD"
-- The capability is extensible with the third-party components or the decision of human operators.
-
-<!-- Not sure what the following says. -->
- <!-- - The mechanism and policy are separated to allow the system or operators to change the behavior of the ego vehicle. Ultimately speaking, the policy can be set to crash an obstacle and the mechanism always follows. Otherwise, the system is not safe from the design point of view. -->
-
-- シンプルな運用設計領域(ODD)を定義できるレベルの基本的なplanning機能を提供する
-  - **TODO**: シンプルの定義はもう少し詳しく書いたほうが良いかも
-- サードパーティによる機能の追加が容易なように、planningの機能はモジュール化されている。
-- 人間の操作者の決定やサードパーティのコンポーネントによって機能を拡張できる。
+- **To have the minimum basic functions necessary for autonomous driving**
+  - Prior to extension of functionalities, the Planning Component must offer essential functionalities for autonomous driving. This includes basic planning like moving forward and backward, stopping, and turning, as well as lane changes and obstacle avoidance in relatively safe and simple situations.
+- **Provided functionalities are modularized, and anyone can extend them**
+  - This means being able to respond to the expected ODD with extended functionalities. If anyone can extend functionalities like a plugin, systems tailored to various needs can be provided (e.g., Lv4/Lv2 autonomous driving, public/private road driving, large vehicles, small robots).
+  - Additionally, the ability to reduce functionalities for limited ODDs (e.g., obstacle-free managed private roads) is important from the platform point of view. Disabling modularized functions can reduce power consumption or requirement for sensing systems, which can fits to someone's needs.
+- **Capability enhancement through cooperation with operators**
+  - Assistance by operators is also a form of functional extension. This means that even in very complex and difficult use cases, the system can cope through functional extension by human assistance. The specific type of operator is not defined here. It might be a person accompanying in the vehicle during the prototype development phase or a remote operator connected in emergencies during autonomous driving services.
 
 **Non-goals:**
 
-- The Planning component is not self-contained but can be extended and enhanced with third parties.
-- The Planning component is not aimed at the complete functionality and capability.
-- The Planning component is not designed to always outperform human drivers.
-- The Planning component is not capable of “never crashes”.
+The Planning Component is intended to be extended by third-party modules. Therefore, the following are excluded from the goals of Autoware's Planning Component alone:
 
-- Planningコンポーネントは自己完結している必要はない。ただし、サードパーティと共に拡張・強化することができることは必要。
-- Planningコンポーネントは自動運転としての完全な機能を目指しているわけではない。
-- Planningコンポーネントは常に人間のドライバーを上回るように設計されているわけではない。
-- Planningコンポーネントは「絶対に衝突しない」という性能を持っているわけではない。
+- Providing all the functionalities needed by users solely with Autoware
+- Complete functionality and performance as an autonomous driving system
+- Performance consistently exceeding human capabilities or providing complete safety.
 
-While performance such as "never crashes" is not a present goals, we need to create an architecture that can potentially achieve such a state with third-party components or decision of human operators or future enhancement.
+Note that these requirements come from the perspective of an autonomous driving "platform" and are not generally applicable to the Planning Component of a typical autonomous driving system.
 
-「絶対に衝突しない」といった性能は現在の目標ではありませんが、サードパーティのコンポーネントや人間の操作者の決定、または将来の強化によってそのような状態を達成できるようなアーキテクチャを作成することは我々の目標です。
-
-## Requirements
-
-WIP
+## High level design
 
-## Assumptions
+This diagram shows the high-level architecture of the Planning Component. Note that this is an ideal high-level design and the current implementation does not fully comply with it. Please refer to the latter part for detailed implementations.
 
-WIP
+<!-- ![overall-planning-architecture](image/high-level-planning-diagram.drawio.svg) -->
 
-## High level design
+![overall-planning-architecture](image/high-level-planning-diagram-miyake-reviewed.drawio.svg)
 
-This diagram describes the high-level architecture of the Planning Component.
+Here, we adopt a modular system framework following the microautonomy architecture. The functions of Planning are implemented as modules, which are dynamically/statically loaded/unloaded according to the given use cases. This includes, for example, lane change, intersection, and pedestrian crossing modules.
 
-![overall-planning-architecture](image/high-level-planning-diagram.drawio.svg)
-![overall-planning-architecture](image/high-level-planning-diagram-miyake-reviewed.drawio.svg)
+The Planning Component consists of several sub-components such as:
 
-The Planning component consists of the following sub-components:
+- **Mission Planning**: Calculates routes from the current location to the goal for autonomous driving missions based on map information. Comparing to existing services, this module takes on functions like FMS (Fleet Management System) mission management or car navigation route searching.
+- **Planning Modules**: Plans the behavior of the vehicle, such as target trajectory and turn signals, for the defined mission. This sub-component consists of several modules responsible for functionalities. These modules are conveniently categorized into Behavior and Motion.
+  - **Behavior**: Calculates appropriate routes considering traffic rules and safety. It handles safe confirmations and execution decisions for lane changes, entering intersections, and stopping at signals.
+  - **Motion**: Calculates target trajectories considering vehicle motion and ride comfort in collaboration with Behavior modules. Specifically, it consists of lateral planning that calculates route shapes and longitudinal planning that calculates speeds.
+- **Validation**: Validates the calculated target trajectories, ensuring safety and responding in emergencies. If the trajectory calculated by Planning is inappropriate, it notifies the System of an Emergency or generates a provisional trajectory.
 
-Planning コンポーネントはいくつかのサブコンポーネントからなります。
+### Highlights
 
-- **Mission Planning**: Calculates the route from a starting position and a given goal based on map information.
-- **Scenario Planning**: Determines the trajectory based on the current scenario, such as Lane Driving or Parking.
-  - **Lane Driving**: Calculates the trajectory for driving within constructed lanes.
-    - **Behavior Planner**: Calculates suitable path based on safety considerations and traffic rules.
-    - **Motion Planner**: Calculates suitable trajectory for the vehicle by taking into account safety factors, vehicle motion considerations, and instructions from the behavior planner.
-  - **Parking**: Calculates the trajectory for parking in unstructured areas.
-- **Validation**: Verifies the safety of the trajectory.
+Important points in this high-level design are listed below.
 
-- **Mission Planning**: 地図情報をもとに、初期位置からゴールまでのルートを計算します。
-- **Scenario Planning**: Lane Driving や Parkingなどのシナリオに基づいて、適切な目標軌道を計算します。
-  - **Lane Driving**: レーン構造が存在する場所において、適切な目標軌道を計算します。
-    - **Behavior Planner**: 交通ルールや安全を考慮して適切な経路を計算します。
-    - **Motion Planner**: Behavior Plannerの出力を元に、車両運動や乗り心地を考慮した目標軌道を計算します。
-  - **Parking**: 駐車場などのフリースペース環境において、適切な目標軌道を計算します。
-- **Validation**: 計算された目標軌道の安全性を検証します。
+#### Modulation of each function
 
-Following the microautonomy architecture, we adopt a modular system framework where the tasks are implemented as modules that can be dynamically loaded and unloaded to achieve different features depending on the given use cases. For instance, the Behavior Planning component includes modules such as lane change, intersection, and crosswalk modules.
+Functions necessary for Planning, such as route generation, lane changes, intersections, and pedestrian crossings, are managed as modules. These modules are provided with standardized interfaces, following which anyone can add or extend modules. Details of the interfaces will be discussed later.
 
-ここでは microautonomy アーキテクチャに従い、モジュール型のシステムフレームワークを採用しています。planningの機能はモジュールとして実装され、これらのモジュールは与えられたユースケースに応じて動的にロードおよびアンロードされます。例えば、behavior planning のサブコンポーネントには、レーンチェンジ、交差点、横断歩道モジュールなどのモジュールが含まれています。
+#### Separation of Mission Planning sub-component
 
-### Discussions -> わからん。trade-off選定とかにしよう
+The role of Mission Planning is to substitute for existing services like FMS (Fleet Management System). By complying with the high-level defined interfaces of Mission Planning, easy integration with these third-party functions can be achieved.
 
-The following provides discussion points on trade-offs in the architecture. From this information, you can see the current design limitation, challenges, and potential improvement.
+#### Separation of Validation sub-component
 
-以下では、アーキテクチャのトレードオフについての議論のポイントを提供します。この情報から、現在の設計の限界、課題、そして潜在的な改善点が見えてきます。
+Given the nature of the Planning Component, which can be easily extended by anyone, it is difficult to ensure the expected level of safety in each function. The Validation function of Planning is managed separately from modules that actually perform planning, ensuring a certain level of safety even if arbitrary changes are made to the modules.
 
-**Separation of planning and other components**
-By developing the planning, perception, localization, and control components separately, it becomes easy to collaborate with third-party components in the component level. However, there's a trade-off between performance and extensibility here. For instance, a perception component would ideally perform recognition and motion prediction only for the objects that the planning component needs, but separating the components hinders such close communication. Additionally, separating planning and control makes it harder to consider vehicle motion performance when planning. To compensate for this, it's necessary to either increase the information exchanged via the interface or increase the computation load.
+#### Interface for HMI (Human Machine Interface)
 
-**planningと他のコンポーネントの分離**
-planning、perception、localization、controlなどのコンポーネントを分離して開発することで、サードパーティ製のコンポーネントとの連携が容易になります。しかし、ここではパフォーマンスと拡張性の間にトレードオフがあります。例えば、perception コンポーネントは理想的には planning コンポーネントが必要とするオブジェクトだけを認識すれば十分ですが、コンポーネントを分離することでそのような密接なコミュニケーションが難しくなり、不要なオブジェクトに対しても処理を実行する必要があります。また、計画と制御を分離すると、計画時に車両の運動性能を考慮することが難しくなるという性能面の欠点があります。これを補うためには、インターフェースの情報量を増やすか、計算負荷を増やすなど対応が必要になります。
+The integration with Human Machine Interface is essential for smooth cooperation with human operators. Through the interfaces between these components, coordination with accompanying operators or remote monitoring systems is enabled.
 
-**Introducing the Scenario Planning layer**
-There are different requirements for interfaces between driving in well-structured lanes and driving in a free-space area like a parking lot. For example, while Lane Driving can handle routes with map IDs, this is not appropriate for planning in free space. The mechanism that switches planning sub-components at the scenario level (Lane Driving, Parking, etc) enables a flexible design of the interface, however, it has a drawbacks of the reuse of modules across different scenarios.
+#### Trade-offs for the separation of planning and other components
 
-**Scenario Planning の導入**
-整備されたレーンを走行する場合と、駐車場のような自由空間での走行では、インターフェースに対する情報要求が異なります。例えば、レーン走行中は地図のレーン情報を処理できますが、これは自由空間での計画には適していません。シナリオレベル(Lane Driving / Parking)で Planning サブコンポーネントを切り替えるメカニズムは、インターフェースの柔軟な設計を可能にしますが、異なるシナリオ間でモジュールを再利用できなくなるという欠点もあります。
+In the overall design of Autoware, attention is needed for the trade-offs when designing Planning as an isolated Component. By developing components such as Planning, Perception, Localization, and Control separately, cooperation with third-party components becomes easier. However, there are trade-offs between performance and extensibility. For example, ideally, the Perception component should only recognize objects needed by the Planning component, but separating components makes such close communication difficult, necessitating processing even unnecessary objects. Also, separating planning and control has performance drawbacks, such as difficulty in considering vehicle dynamics during planning. To compensate for this, increasing the amount of information in interfaces or increasing computational load is necessary.
 
-**Separation of Behavior and Motion**
-One of the classic approach to Planning involves dividing it into "Behavior", which decides the action, and "Motion", which determines the final movement. However, this separation implies a trade-off with performance, as performance tends to degrade with increasing separation of functions. For example, Behavior needs to make decisions without prior knowledge of the computations that Motion will eventually perform, which generally results in conservative decision-making. On the other hand, if behavior and motion are integrated, motion performance and decision-making become interdependent, creating challenges in terms of expandability, such as when you wish to extend only the decision-making function to follow a regional traffic rules.
+## Customize features
 
-**Behavior と Motion の分離**
-Planningコンポーネントを行動を決定する "Behavior" と、最終的な動きを決定する ”Motion” に分けることは古典的なアプローチの一つです。しかし、この方針にはパフォーマンスとのトレードオフが存在します。機能の分離が進むとパフォーマンスは一般的に低下する傾向があります。例えば、Behavior は、最終的に Motion が行う計算結果を知るより前に意思決定を行わなければならないため、一般的に保守的な意思決定が行われます。一方、BehaviorとMotionが一体化している場合、運動性能と意思決定が依存するため、例えば国ごとに異なる交通ルールに従うために意思決定機能を拡張する場合において運動性能を考慮する必要があるといった拡張性の課題が生じます。
+One of the most important features of the Planning Component design is its integration with external modules. As shown in the diagram below, there are several ways to incorporate external functionalities.
 
-To understand this background, this [previously discussed document](https://github.com/tier4/AutowareArchitectureProposal.proj/blob/main/docs/design/software_architecture/Planning/DesignRationale.md) may be useful.
+![how-to-add-new-modules](image/how-to-add-new-modules.drawio.svg)
 
-### Mechanism and policy
+### 1. Adding New Modules to the Planning Component
 
-In planning, several policies are defined to achieve various user's needs and ODDs. For example, in terms of the level of autonomous driving, Planning provides the following policies.
+Users can replace or add functionalities to Planning as modules. This is the most common method of extending functionalities. This allows for the addition of missing functionalities in the desired ODD or, conversely, the simplification of existing functionalities.
 
-- **Fully-autonomous** that delegates all decision makings to the system, thus the system is responsible for the safety.
-- **Semi-autonomous** that delegates most of decision makings to the system but the rest of decision makings strictly defined remain with the human operator, thus both the system and the human operator are responsible for the safety.
-- **Motion-autonomous** that delegates only the low-level motion plan to the system, while high-level mission and behavior plannings remain with the human operator, thus the human operator is responsible for the safety.
+However, to add these functionalities, it is necessary that the interfaces of each module are properly organized. As of November 2023, such an ideal module system is not provided, and there are some limitations. For details, check the Reference Implementation section [Customize features in the current implementation](#customize-features-in-the-current-implementation).
 
-Planningでは、様々なODDやユーザーのニーズを達成するために、いくつかのポリシーが定義されます。例えば、自動運転のレベルにおいて、Planningは以下のポリシーを提供します。
+### 2. Replacing Sub-components of Planning
 
-- **Fully-autonomous** :すべての意思決定をシステムに委ね、システムが安全性を担保します。
-- **Semi-autonomous**:ほとんどの意思決定をシステムに委ねますが、一部の意思決定は人間のオペレーターに委ねられ、システムと人間のオペレーターの両方が安全性を担保します。
-- **Motion-autonomous**:低レベルの運動計画のみをシステムに委ね、高レベルのミッションと行動計画は人間のオペレーターが行い、人間のオペレーターが安全性を担保します。
+Some users may be interested in collaboration and extension at the sub-component level. This could include, for example, replacing Mission Planning with an existing FMS service, or replacing the route generation functionality with a third-party product while using the existing Validation functionality.
 
-This policy can vary depending on the desired use cases and ODDs. It might be determined before driving begins, or it may switch dynamically during operation. The activated modules and their configuration change according to the policy to achieve the expected behaviors. Note that our goal is not necessarily to achieve only fully-autonomous. Depending on the expected ODD, sensor configuration, and sensor costs, we may also design the system on the premise of semi-autonomy. Our goal as an OSS platform is to design an architecture that allows for flexible changes to these policies. [Separation the mechanism and policy](https://en.wikipedia.org/wiki/Separation_of_mechanism_and_policy) allows us to modularize the planning components not only from the software point of view but also from the actual logic point of view.
+Following the [Internal interface in the planning component](#internal-interface-in-the-planning-component) described later, it is possible to collaborate and extend at the sub-component level. While complex coordination with existing Planning functionalities is not feasible, it enables collaboration between some functionalities of the Planning Component and external modules.
 
-このポリシーは、求められるユースケースやODDにより変わります。これは走行前に決定されるかもしれませんし、走行中に動的に切り替わる可能性もあります。起動するモジュールやその設定はポリシーに従って変更され、期待される行動が実現されます。ここで注意すべきは、我々の目標が必ずしも Fully-autonomous だけであるわけではないということです。期待するODD、センサーの構成、センサーコストにより、Semi-autonomous を前提としたシステム設計を行うこともあります。OSSプラットフォームとしての我々の目標は、これらのポリシーを柔軟に変更できるアーキテクチャを設計することです。メカニズムとポリシーを分離することで、ソフトウェアの観点だけでなく、実際のロジックの観点からも計画コンポーネントをモジュラ化することが可能になります。
+### 3. Replacing the Entire Planning Component
 
-**TODO:** How to handle the policy of the autonomous level has not yet been finalized and needs further discussion. While it is believed that these can be implemented in collaboration with the Human-Machine Interface, further investigation and discussion is needed.
+Companies or research labs developing autonomous driving Planning systems may be interested in evaluating the entire autonomous driving system by integrating their own Planning products with Autoware's Perception or Control modules. This is possible by replacing the entire Planning system. It is easy to replace by following the most robust and stable interfaces defined between components. However, coordination with existing planning modules is not possible.
 
 ## Component interface
 
@@ -173,7 +122,7 @@ This section describes the inputs and outputs of the Planning Component and of i
 - **From Human Machine Interface (HMI)**
   - Feature execution: Allows for executing/authorizing autonomous driving operations, such as lane changes or entering intersections, by human operators.
 - **From API Layer**
-  - Goal: Represents the final position that the Planning Component aims to reach.
+  - Destination (Goal): Represents the final position that the Planning Component aims to reach.
   - Checkpoint: Represents a midpoint along the route to the destination. This is used during route calculation.
   - Velocity limit: Sets the maximum speed limit for the vehicle.
 
@@ -202,18 +151,6 @@ This section describes the inputs and outputs of the Planning Component and of i
 - **Validation to Control Component**
   - Trajectory: Same as above but with some additional safety considerations.
 
-## How to add new features (WIP)
-
-As mentioned in the goal session, this planning module is designed to be extensible by third-party components. When incorporating third-party components, there are several approaches.
-
-ゴールのセッションで述べたように、このPlanningコンポーネントはサードパーティのコンポーネントによる拡張を可能にするように設計されています。サードパーティのコンポーネントを組み込む際にはいくつかの方法があります。
-
-As stated in the figure, you can completely replace the entire planning function, replace or add to the planning sub-components, or add new modules into the existing planning component. The latter part offers advantages as it allows for cooperation with the existing Planning functions, but it does require adherence to the detailed interfaces defined within the Planning Component. Conversely, while replacing the entire planning function enables you to utilize other components of Autoware, it does not allow for integration with the existing planning functions. For specific instructions on how to add new modules and expand its functionality, please refer to the forthcoming documentation or guidelines (WIP).
-
-図に示した通り、機能の追加には「Planning Componentを完全に置き換える」、「Planningのサブコンポーネントを置き換えるまたは追加する」、「既存のPlanningコンポーネントに新たなモジュールを追加する」方法があります。後者の方法ほど、既存のPlanning機能との連携が可能であるという利点がありますが、Planningコンポーネント内で定義されている詳細なインターフェースに従う必要があります。一方、Planning機能全体を置き換えることにより、大枠のinterfaceを揃えるだけでAutowareの他のコンポーネントを利用することができますが、既存のPlanning機能との統合はできません。新しいモジュールを追加し、その機能を拡張する具体的な指示については、近日公開予定のドキュメンテーションまたはガイドライン(作業中)をご参照ください。
-
-![how-to-add-new-modules](image/how-to-add-new-modules.drawio.svg)
-
 ## Detailed design
 
 ### Supported features
@@ -264,9 +201,9 @@ As stated in the figure, you can completely replace the entire planning function
 
 The following diagram describes the reference implementation of the Planning component. By adding new modules or extending the functionalities, various ODDs can be supported.
 
-_Note that some implementation does not adhere to the high-level architecture design and require updating._
+_Note that some implementation does not adhere to the high-level architecture design due to the difficulties of the implementation and require updating._
 
-![reference-implementation](image/planning-diagram.drawio.svg)
+![reference-implementation](image/planning-diagram-tmp.drawio.svg)
 
 For more details, please refer to the design documents in each package.
 
@@ -279,17 +216,16 @@ For more details, please refer to the design documents in each package.
   - [_pull_out_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_path_planner/#pull-out)
   - _side_shift_
 - [_behavior_velocity_planner_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_planner/): calculates max speed based on the traffic rules.
-  - [_detection_area_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_detection_area_module/)
-  - [_blind_spot_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_blind_spot_module/)
-  - [_cross_walk_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_crosswalk_module/)
-  - [_stop_line_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_stop_line_module/)
-  - [_traffic_light_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_traffic_light_module/)
-  - [_intersection_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_intersection_module/)
-  - [_no_stopping_area_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_no_stopping_area_module/)
-  - [_virtual_traffic_light_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_virtual_traffic_light_module/)
-  - [_occlusion_spot_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_occlusion_spot_module/)
-  - [_run_out_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_run_out_module/)
-  - [_no_drivable_lane_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_no_drivable_lane_module)
+  - [_detection_area_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_detection_area_module/docs/detection-area-design/)
+  - [_blind_spot_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_blind_spot_module/docs/blind-spot-design/)
+  - [_cross_walk_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_crosswalk_module/docs/crosswalk-design/)
+  - [_stop_line_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_stop_line_module/docs/stop-line-design/)
+  - [_traffic_light_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_traffic_light_module/docs/traffic-light-design/)
+  - [_intersection_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_intersection_module/docs/intersection-design/)
+  - [_no_stopping_area_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_no_stopping_area_module/docs/no-stopping-area-design/)
+  - [_virtual_traffic_light_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_virtual_traffic_light_module/docs/virtual-traffic-light-design/)
+  - [_occlusion_spot_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_occlusion_spot_module/docs/occlusion-spot-design/)
+  - [_run_out_](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_run_out_module/docs/run-out-design/)
 - [_obstacle_avoidance_planner_](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_avoidance_planner/): calculate path shape under obstacle and drivable area constraints
 - [_surround_obstacle_checker_](https://autowarefoundation.github.io/autoware.universe/main/planning/surround_obstacle_checker/): keeps the vehicle being stopped when there are obstacles around the ego-vehicle. It works only when the vehicle is stopped.
 - [_obstacle_stop_planner_](https://autowarefoundation.github.io/autoware.universe/main/planning/obstacle_stop_planner/): When there are obstacles on or near the trajectory, it calculates the maximum velocity of the trajectory points depending on the situation: stopping, slowing down, or adaptive cruise (following the car).
@@ -302,6 +238,41 @@ For more details, please refer to the design documents in each package.
 - [_external_velocity_limit_selector_](https://autowarefoundation.github.io/autoware.universe/main/planning/external_velocity_limit_selector/): takes an appropriate velocity limit from multiple candidates.
 - [_motion_velocity_smoother_](https://autowarefoundation.github.io/autoware.universe/main/planning/motion_velocity_smoother/): calculates final velocity considering velocity, acceleration, and jerk constraints.
 
+### Important information in the current implementation
+
+An important difference compared to the high-level design is the "introduction of the scenario layer" and the "clear separation of behavior and motion." These are introduced due to current performance and implementation challenges. Whether to define these as part of the high-level design or to improve them as part of the implementation is a matter of discussion.
+
+#### Introducing the Scenario Planning layer
+
+There are different requirements for interfaces between driving in well-structured lanes and driving in a free-space area like a parking lot. For example, while Lane Driving can handle routes with map IDs, this is not appropriate for planning in free space. The mechanism that switches planning sub-components at the scenario level (Lane Driving, Parking, etc) enables a flexible design of the interface, however, it has a drawbacks of the reuse of modules across different scenarios.
+
+#### Separation of Behavior and Motion
+
+One of the classic approach to Planning involves dividing it into "Behavior", which decides the action, and "Motion", which determines the final movement. However, this separation implies a trade-off with performance, as performance tends to degrade with increasing separation of functions. For example, Behavior needs to make decisions without prior knowledge of the computations that Motion will eventually perform, which generally results in conservative decision-making. On the other hand, if behavior and motion are integrated, motion performance and decision-making become interdependent, creating challenges in terms of expandability, such as when you wish to extend only the decision-making function to follow a regional traffic rules.
+
+To understand this background, this [previously discussed document](https://github.com/tier4/AutowareArchitectureProposal.proj/blob/main/docs/design/software_architecture/Planning/DesignRationale.md) may be useful.
+
+### Customize features in the current implementation
+
+While it is possible to add module-level functionalities in the current implementation, a unified interface for all functionalities is not provided. Here's a brief explanation of the methods of extending at the module level in the current implementation.
+
+![reference-implementation-add-new-modules](image/reference-implementation-add-new-modules.drawio.svg)
+
+#### Add new modules in behavior_velocity_planner or behavior_path_plnner
+
+ROS nodes such as [behavior_path_planner](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_path_planner/) and [behavior_velocity_planner](https://autowarefoundation.github.io/autoware.universe/main/planning/behavior_velocity_planner/) have a module interface available through plugins. By adding modules in accordance with the module interfaces defined in these ROS nodes, dynamic loading/unloading of modules becomes possible. For specific methods of adding modules, please refer to the documentation of each package.
+
+#### Add a new ros node in the planning component
+
+When adding modules in Motion Planning, it is necessary to create the module as a ROS Node and integrate it into the planning component. The current configuration involves adding information to the target trajectory calculated upstream, and the introduction of a ROS Node in this process allows for the expansion of functionality.
+
+#### Add or replace with scenarios
+
+The current implementation has introduced a scenario-level switching logic as a method for collectively switching multiple modules. This allows for the addition of new scenarios (e.g., highway driving).
+
+By creating a scenario as a ros node and aligning the scenario_selector ros node with it, the integration is complete. The benefit of this is that you can introduce significant new functionalities without affecting the implementation of other scenarios (like Lane Driving). However, it only allows for scenario-level coordination through scenario switching and does not enable coordination at the existing planning module level.
+
+<!--
 ### Important Parameters
 
 | Package                      | Parameter                                                     | Type   | Description                                                                                                        |
@@ -330,4 +301,4 @@ Currently, the supported modules are as follows.
 
 #### [2] Size of Path Points
 
-Some functions do not support paths with only one point. Therefore, each modules should generate the path with more than two path points.
+Some functions do not support paths with only one point. Therefore, each modules should generate the path with more than two path points. -->