Repository: kubernetes-sigs/gateway-api-inference-extension

Issue:
Flaky TestPrefixPluginChatCompletionsGrowth test
Flaked during a presubmit run for https://github.com/kubernetes-sigs/gateway-api-inference-extension/pull/1572 


https://prow.k8s.io/view/gs/kubernetes-ci-logs/pr-logs/pull/kubernetes-sigs_gateway-api-inference-extension/1572/pull-gateway-api-inference-extension-test-unit-main/1966383296988319744

/cc @vMaroon 

Discussion:
@ahg-g: Failed here too: https://github.com/kubernetes-sigs/gateway-api-inference-extension/pull/1515#issuecomment-3285472718

Solution patch:
diff --git a/config/charts/inferencepool/README.md b/config/charts/inferencepool/README.md
index c7374bc..5a5663d 100644
--- a/config/charts/inferencepool/README.md
+++ b/config/charts/inferencepool/README.md
@@ -117,6 +117,30 @@ Then apply it with:
 helm install vllm-llama3-8b-instruct ./config/charts/inferencepool -f values.yaml
 ```
 
+### Install with Monitoring
+
+To enable metrics collection and monitoring for the EndpointPicker, you can configure Prometheus ServiceMonitor creation:
+
+```yaml
+inferenceExtension:
+  monitoring:
+    interval: "10s"
+    prometheus:
+      enabled: true
+    secret:
+      name: inference-gateway-sa-metrics-reader-secret
+```
+
+**Note:** Prometheus monitoring requires the Prometheus Operator and ServiceMonitor CRD to be installed in the cluster.
+
+For GKE environments, monitoring is automatically configured when `provider.name` is set to `gke`.
+
+Then apply it with:
+
+```txt
+helm install vllm-llama3-8b-instruct ./config/charts/inferencepool -f values.yaml
+```
+
 ## Uninstall
 
 Run the following command to uninstall the chart:
@@ -147,6 +171,9 @@ The following table list the configurable parameters of the chart.
 | `inferenceExtension.affinity`               | Affinity for the endpoint picker. Defaults to `{}`.                                                                    |
 | `inferenceExtension.tolerations`            | Tolerations for the endpoint picker. Defaults to `[]`.                                                                 |
 | `inferenceExtension.flags.has-enable-leader-election` | Enable leader election for high availability. When enabled, only one EPP pod (the leader) will be ready to serve traffic.       |
+| `inferenceExtension.monitoring.interval`   | Metrics scraping interval for monitoring. Defaults to `10s`.                                                           |
+| `inferenceExtension.monitoring.secret.name` | Name of the service account token secret for metrics authentication. Defaults to `inference-gateway-sa-metrics-reader-secret`. |
+| `inferenceExtension.monitoring.prometheus.enabled` | Enable Prometheus ServiceMonitor creation for EPP metrics collection. Defaults to `false`.                      |
 | `inferenceExtension.pluginsCustomConfig`    | Custom config that is passed to EPP as inline yaml.      |
 | `provider.name`                             | Name of the Inference Gateway implementation being used. Possible values: `gke`. Defaults to `none`.                   |
 
diff --git a/config/charts/inferencepool/templates/epp-sa-token-secret.yaml b/config/charts/inferencepool/templates/epp-sa-token-secret.yaml
new file mode 100644
index 0000000..9abee0f
--- /dev/null
+++ b/config/charts/inferencepool/templates/epp-sa-token-secret.yaml
@@ -0,0 +1,12 @@
+{{- if or .Values.inferenceExtension.monitoring.prometheus.enabled .Values.inferenceExtension.monitoring.gke.enabled }}
+apiVersion: v1
+kind: Secret
+metadata:
+  name: {{ .Values.inferenceExtension.monitoring.secret.name }}
+  namespace: {{ .Release.Namespace }}
+  labels:
+    {{- include "gateway-api-inference-extension.labels" . | nindent 4 }}
+  annotations:
+    kubernetes.io/service-account.name: {{ include "gateway-api-inference-extension.name" . }}
+type: kubernetes.io/service-account-token
+{{- end }}
\ No newline at end of file
diff --git a/config/charts/inferencepool/templates/epp-servicemonitor.yaml b/config/charts/inferencepool/templates/epp-servicemonitor.yaml
new file mode 100644
index 0000000..e4788ba
--- /dev/null
+++ b/config/charts/inferencepool/templates/epp-servicemonitor.yaml
@@ -0,0 +1,25 @@
+{{- if .Values.inferenceExtension.monitoring.prometheus.enabled }}
+apiVersion: monitoring.coreos.com/v1
+kind: ServiceMonitor
+metadata:
+  name: {{ include "gateway-api-inference-extension.name" . }}-monitor
+  namespace: {{ .Release.Namespace }}
+  labels:
+    {{- include "gateway-api-inference-extension.labels" . | nindent 4 }}
+spec:
+  endpoints:
+  - interval: {{ .Values.inferenceExtension.monitoring.interval }}
+    port: "http-metrics"
+    path: "/metrics"
+    authorization:
+      credentials:
+        key: token
+        name: {{ .Values.inferenceExtension.monitoring.secret.name }}
+  jobLabel: {{ include "gateway-api-inference-extension.name" . }}
+  namespaceSelector:
+    matchNames:
+    - {{ .Release.Namespace }}
+  selector:
+    matchLabels:
+      {{- include "gateway-api-inference-extension.labels" . | nindent 6 }}
+{{- end }}
diff --git a/config/charts/inferencepool/templates/gke.yaml b/config/charts/inferencepool/templates/gke.yaml
index 470063c..f2296aa 100644
--- a/config/charts/inferencepool/templates/gke.yaml
+++ b/config/charts/inferencepool/templates/gke.yaml
@@ -46,15 +46,15 @@ spec:
   endpoints:
   - port: metrics
     scheme: http
-    interval: 5s
+    interval: {{ .Values.inferenceExtension.monitoring.interval }}
     path: /metrics
     authorization:
       type: Bearer
       credentials:
         secret:
-          name: {{ .Values.gke.monitoringSecret.name }}
+          name: {{ .Values.inferenceExtension.monitoring.secret.name }}
           key: token
-          namespace: {{ .Values.gke.monitoringSecret.namespace }}
+          namespace: {{ .Release.Namespace }}
   selector:
     matchLabels:
       {{- include "gateway-api-inference-extension.selectorLabels" . | nindent 8 }}
diff --git a/config/charts/inferencepool/templates/rbac.yaml b/config/charts/inferencepool/templates/rbac.yaml
index 7ff534f..ebe68c3 100644
--- a/config/charts/inferencepool/templates/rbac.yaml
+++ b/config/charts/inferencepool/templates/rbac.yaml
@@ -17,6 +17,12 @@ rules:
   - subjectaccessreviews
   verbs:
   - create
+{{- if .Values.inferenceExtension.monitoring.prometheus.enabled }}
+- nonResourceURLs:
+  - "/metrics"
+  verbs:
+  - get
+{{- end }}
 ---
 kind: ClusterRoleBinding
 apiVersion: rbac.authorization.k8s.io/v1
diff --git a/config/charts/inferencepool/values.yaml b/config/charts/inferencepool/values.yaml
index d45e6ed..f61b64e 100644
--- a/config/charts/inferencepool/values.yaml
+++ b/config/charts/inferencepool/values.yaml
@@ -40,6 +40,17 @@ inferenceExtension:
 
   tolerations: []
 
+  # Monitoring configuration for EPP
+  monitoring:
+    interval: "10s"
+    # Service account token secret for authentication
+    secret:
+      name: inference-gateway-sa-metrics-reader-secret
+
+    # Prometheus ServiceMonitor will be created when enabled for EPP metrics collection
+    prometheus:
+      enabled: false
+
 inferencePool:
   targetPorts:
     - number: 8000
@@ -56,7 +67,3 @@ inferencePool:
 provider:
   name: none
 
-gke:
-  monitoringSecret:
-    name: inference-gateway-sa-metrics-reader-secret
-    namespace: default
diff --git a/docs/endpoint-picker.svg b/docs/endpoint-picker.svg
index 3ec8eed..6f4b9cf 100644
--- a/docs/endpoint-picker.svg
+++ b/docs/endpoint-picker.svg
@@ -1,3 +1,5 @@
-<svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1452.6284042512102 785.1072998046875" width="1452.6284042512102" height="785.1072998046875"><!-- svg-source:excalidraw --><metadata></metadata><defs><style class="style-fonts">
-      @font-face { font-family: Excalifont; src: url(data:font/woff2;base64,d09GMgABAAAAAB04AA4AAAAAM5gAABzgAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbjUocgXIGYACBJBEICsx0uG0LYAABNgIkA4E8BCAFgxgHIBs+KKOitFNeRvZXB7wh3tQfwLtareM4EQSGXenHllydGFpS83eGbhpiiccToeH5ufXe/9v/i/qLYoNtbERuhIxeJDm6JR1goc2dgA1iFfaVmSgq54Un2niFXoXV8Pz/3/9v7nXOBXvDAyrQ30fz758CDT2OMOCwt02arti2uDmGviQMhTAGpX5o/i+nKV011z8zgsCCZdkOLdiLBQDLLpzSvh5773F9da5ix1kSGpK8rrPOAvBIUyiA/590q0/+76C1U62+SqUGy2+v+tUV/aSdaZ9E2ADLJMF29wRYs1OZTP5vv195EEsMjSgaCZVkGUKhlPdlgPsGs2Ewl2QeEodKenxMdhGxtp/2N3lpxE2BtpGtdeOWktbP8U7neBeqGy0h9FxI+SOfK912AAQAAwFAyC4uEBSC4H0BQKNlQNo/TMkG0puOtiYgfWiraQTS14rJLUCKBAAgHgVe7tpaAOUqAM7sIsthGASgikDmYcefM/l0/kPIAxh/AALDra/+532NQa/HT7aJp3W9dwHNaLwnYfzuB+q9PoCg8fIYpm3s/b2LhA2/C2itTgYUO36R50xGbfZ7Zzr+z6t6V4Wd/KzPgfIgkXnDIPFulPE3gz+jGojvDUe8F+P7WYK9XqZnhKw8AcBvl28VOMSpPc+ur+fmrZR/T3qWI4XidtMUVDRMbBwELh4+ARExCRk5Lyre1Pz4CxAomwujghB4RACATV0LVVwHAyDNCwCJBE5AbgM2TONDSAjRpXEUDAJcTELiLGwuE4OcCYEEPPRFru3xVU7ur2LOaejSXhQAJhbAp5wglPDhBiMHZQg1QxzmmCFSkNI2yoXqjRHixpi8Ng7lROzyWFDEL4oEBbgOFMIQG0NcjODbJxESwYgxlRSTqTBGg3EBcg5GkDAAAEMs+Y7LCM32EWQQufWJcnGymGvDpJC8peL1qa4C8D/aqltihiFIYXSLzhEjCO2MUyD35kGCFcBDSRwbn8paECokgPkHahagAzEiZHI9uQ6IO1Xt2pcazXB8EDBSXI0oxMKQJIYEHEQQmXWTXb3IKFmUfAAkb2YCz4V5A46hZS1n9jQwCBQ6xtS1RJ7lq6kbAGzpBsGv6/gp8jugCvhDCoeYpNdCQYF0Mn/BQkUxsrJzSuWSLY9bR49b9f20zWYp0mUZV2h7tcfHjr7z9u9efunFQ88ffLZP96E+CDZdUpYcgNAOKq0aDzB+ANbvsBXF0ZNERNXVWyG7htp1D3UJoZcGN7c8NY4cQZLZsz2zKrZa7h+tzEhvDef7iCLjWP6rrFyzVCbUpNB1mSWeAezI7aJke3qRM4wNnS3VzlZ/vJHeJm/MfiuFvLUIIx8Alwv66UswuYah48EtP7MzvNyfgdSUzkB0PdelfOWFtspblsOCAGj4eEFH85IEzV7l+cFcN9ts0ci0PKLRl4zUx/gA406Eh7J/DOKLpASTiQk10lb//7Blq829Hj35VzE2sqWAAY1YxSjW9LdHpRv6MTkc9g9f0ffJJvWuGEn7ZOs95iLHXVKSTJLl3QWe7hiq3ap/Vi/yOAKfyY1KWekbsv+ZbhoSmbD4pyS0XKPzxFNJqmlW0pIkJbh6FeApSDFeaR3ZFeZbFy5o3mkyNuoqkxtwxoPeGSYgUpFt2xgtgGMAkAvY9z2A39Q0mSYJrV90FwoYTBiAvSqLdzaLuWiyrcYnrFK0zD2aKUgF8YFzypfmsTp6vC8kNIhBTsLUGoGhnBArbmRI3cN4Cgankno5XOBkiq4m+Oqrl1SThDaDQnRjPkdDWqtZs6lGSOFqgvO/mbfzHHgpGVi7agX3FKt/912rEL5BWTwRF9ffsVxCHORyTnk4kAVUmikB0DVSWy3mmksbYjzPSUJnVE2TJ5QfTBE3Pqk+98c6VkjoOlgA24WKiWeonHFuuKy0gzfkoAQXpQeqqRls/w2AsMbXkjWacVQQ+gAwZSW4exdgQm6CE5B43qjWPfOOlbv820IYXf0xGSu3Prr3uKIn4W541XoKhnr5xzN+tLAqFQUZBVps4DSKMCLkmKf4cd4AtkfQnC5fbGU04lpRIElOJJAkSefohpHp5YzykGa4zInr2ricjGUIQ8vqdiVZknAJJGkJbTYDZzxF2LgYq8iObIwe6KaEj0GaVkpX9N1VWYC52El6e35ppZAO17yOQzp0DSnFpLoMwOsDNhKkjOKKbmRHGCPbFhy/dBNikm6eI2GhUqF6JJT8bQaD+maLNv8mHxoYgGVZXcuB9FCojT9kvsW1iGtlqh5JpqCNq02BmdO7beoNqYpwFTOMOQ5OKTnhLYzp77JoWSnst+WM65jrj7UpxsIp0TSqabh+3hQdX3lxRysKK8WJuSTfglTQ4a68DeBZHsa9wbWsOjQ3xecq1W+lZKSFN/rlMOqIEpRXy+P7tgeTY+usND1yrwQAni93l9CyPNj+NeMGJ3UmkDvV+RljMi/KMrYA1gGYUla/G07JphgO6VoVqxsfq5wbe2pYEMvzQS3cH51UU8TD5Ep983qiXvSPX6DvCZOyjCUKQ9AMTMnxL+U4p9szbVZ/9NXLxIlXUO98RyViRw2A9fqTJGnFtRCeJlRFkaF4G/m9KvoWBgvSbklOpFKBS/oYcgHzWceqAC7B1LUaifWTccubi0Wac6MbOi+9g3sXlQBXkda57Z+MiNJmpikoOG3BCRBrqyt35/vtjz6qKc1z6UlGSkdF4PbiLXnSNCFgo5uyX4EykbRWG+074TnQGFTACk1d1MgJnKBDO/zGSaZ7SJkY2VBNMJqY42VclV//I4Q1A1ILW0a1lPF0e5T1TsvWNp6OFgdLw9V7bNlmWxHfz+n4upCabTPZ0PjoQ099Pstngu20YrgoRrfLqSS/AguDfcqG5uD7QTnpXiT2sNLu3Hl3jzeyS1k18GUfZOiQmNBFmL5cFOs+Dj5PcqOFmSCOTU1ZIxIWmltYc5Yr9bOts3y+d5pGXIwMvISDvQ3R9JnsKB8E4xwHANL8Elv7JXO7x+1rSNFCIJbsycgS/7CQeobv67099pGW5BdXfKGXfzr78mr2aaY4V+uXzMSwlQShHa2toeyGFn1xRe6mlWNNitxRiQ0QsdlwqPMOXYjbnR/HJ3lKmzOMto/FfLt+mQYkrcuQzFnT5KuzXH9cx7TJb78gc0mWHNlZzxVhhX884TQeqLExrvPlbmW6otkFLiinvOfKTzaLuT4/uYXU+wKEJAl9ku6OKgBgRVINEqT4C62YlpOlam2RyQbt7cVJCVZleaVQbUU/TRlMjoEkl0n0go5LO/xcofaL/RfJdV3bRlf4iBwi31NIhlR1J9+bp4SFdX6F+DFJN7Toio6ujbkwvo3r8J+ujYgsCj3VUQMV0ffPYrHuCYx8aUE296+GEZ7Z/gvypUT6l/xi3ko3tWh2fIxjnHtK6xckLAqVhnhjNn/1Ftd/3eIGX3GTmiyOvwg8awjPQmg9/SwnNDI8bA6OWKYB8aQSMLldmqor89zribwhvhsXXGU9OyjyXAmEJprZ6pPYCM6JfT6/xPdFSFWFjZsodBkTgrzfVxDAnKoUiG6EVIaP+3uPsmN1S0+WnCHXVo1Z9bbp9/uD5SAkqUrBhnNODCVIsT2ofF2B1AIdExLdEoEBrN5sDmILtEFoIMlTjWSyX/7WjTj1VBK9IVZKIIh1gbe2KA+HdHyUo7Gt5E5T9IUAIDQf/C5vzrWoQ7faW0jl7+c9A5iE99uK83kKAmdArCtBA6SwLoPXF3CMk5/BchyHWPaKDk+hgW++fP+ePqfXaLNPpsU7JcEEQ4E8+FWtFDy6/9F6Mzi+0Uh+vXty79OH86EgYCDJmJSmlWsTgBF0FfQtr51LktfVhZiOq0UGRxhtQZgt7tH7a9zZiR4gZXCPpAUpkQUCEp/8sxAVrdWS61usyLvWJAwBPLyRV3NHNO+ZE/PVeY3+3tBsMZoLiQY5ISJzbDpNv1r7tO6OG0MFc3w5e5A0PpnNDEBPGMh6JRWUEEsYGQyg7tuMdLaV412YpE8/g8mqjGNCgVNI/gaHbQ2c6yQ8F3CRRZf285DyDnrS1SoTobuEkY3UQiFnO6nrZIjtCA9nBLRP5bOLFTClQ0a3l20m/CDW7nTMscHXlJyOB36GkfINd8sd9mg0f3eBdUQJSpwpbzGlIACkd7umDC9S+lB47px6wgvEOXc6bqEvl2FHCGYR8XCL1qML7dhPle1jR3hZQeXq+A7X+DC/y25EhzNZ+oi70gs2BOUVzeWT/CVzjYIBOUy4vMBIDcOvY94tjerMDR66CUwMtrcvCN+CQckAcBN1jGwcgChRGJfZs1BX0ulVgJeg/+2SFdFdbUd8fl9JsrbZCjvnudZBCg9lqHTN4JrOybC3lZTSuee6NFFc1vC9BngCMGizA2BZnuyX/k8DFXbhkStfi97CODGyKSLR+wjIW4dJGDv0bRHTxKic0zVEH/y0+TV96DJO+6/Or8LOkDJ+vWg+98whK94LpMbo8Rr7eLlZmbC3prcVV70Gk/4MDkYkRgjbadcPhFygibGRNUS8eFLtlXS5JN7/x0t3tqry5MHUKOrD7foPsgtpSUtINm3YdO83x+oXObRkoivxdGbaGqNGQ5R2xqPxfEeuZXJZ04kE62KqiVlu2fl8P+dCyjec1Zc+XsiYDyYN488xHgXaF0H15oaxPR4DuInY4JXbmrvojOUdIDg/nZAArKUeThoNL5FbmpRVktXUfHno5wey60D9TWL9p3KR46mI/3I//qB867bKoYKx2nkrhOW+vV9aQPCuQ2fFJZ93k7aU9iFSC1hytkAeSTjanvTvpWe8ur1QkxcQM8W2qOmCvvCaNowCJEGm2v/k8y+XcZQDQwEyNrtgfh22UpOaH5+YxfFRa1x+IXNpXF/Gm8KTFlKYZw6SjZ7/5Hwb9YA8VHQ0pvZrTeYyXqxGl/R0lSCf7deE2mA3OgtIwplH/p7sZIzIaKtz4EpLj3Adn854iIWdrK7ezdnjzXPdKM17MWXg2eZgq/k1vxh2wknu/fxTAK9ne3tiECKV0nUshNs31K2BdPjJb9rwVMJJpmTz1l/ZiT3H3ApT+53D1doQkBfyWmn+Xlvg3gTMYBWMW+A3ctyUs1lQX7TCVGiU1bUrMGQqh4Q8VFpftcz1nf1lOnJOOtFMcAC8cdg6MXtxyQhBK/7n/xfWwrVprghji6wfoJnYSpTHsuV0SKZnzEsWA6fyMeVEV/XNg8h+V2vmoUMYmZjyprCOZkNoIsoFO/UiBN4pIpfvwegfPOjbX5kVPT6snowcW6bN23Ci7J795+v3yi89MHpVE0vY6mm2f2duodUmhHFtOTg5Q5eUV9VV1CLDLRNOQ2MCLCSZeM6WJB9q1mmwlcEfzyl2YEvj8QKKmYIX5JSFPyAbLD7Uoxz7iODPPYf7L+ztkm7VTFi9Zu1VcmLU8Dad5sAkkk20wyw8/L4Gr3PX+gehpTILez9t/6B56Nu6CaOZc0h3pojSPTSZ3sfnO0g3K1oNiJcL41RPwchpaDb75h8JM3b3LmOPlF8p2D6vOQPk+FcMPybkqQb/HlkRmNI0IdVaqW/OrGuc2uDYG5ehxlotv/Fp29MQfPLpN90BfXuklsoSksOQZSEiFwlanCpT1BAoI1WRjeCI2vO0G2p7FubgK7LR7BUWxVwaUe/jTKL4vQYFkqhZfXWS7OA9xAkru9XxK4tioU1mEYdTIygRgRVzUwSAk+s+sDloIFt3rfdnsfPHzFt1moOPMB4qDUM5Zg4KLbBT8bebYsBIyJeuJiYBV1yI/BT3W1Qx2sYna1EtWVDptRoEgFccahfrQA2lz0EK+depVRdGThck6QJLgyhYGfxzTTCdt52ZtOuf/Gf+JTIetaDlL7USFmJ5WzMXZ84GhEftHCraGAK+cow8/DrJ9VL/Ka9iXTCeOxng/ug8i8ha1tKerzJOCI2BVHauhytuQGUDJ5VX0Nth5YL5qzsG0pK9sygCS7GZ13/2IR2/Ze+5jMxSaxJ+Qds+9corWoPlC91CQGrrG+DssB6jGiA40Ik3Rm0Rksj2WBALS/rLOKm+XYHZckfl9M4AWCKc118glGFmS4gBhlBWeUuSVY7aktTgTK+kfJaP9WrF2HSR7qqHZSQwL623Q6p1+zTCXZ/k7k8NEmxKTPUJ3VHXMW/wKajllQRDE60wyWNZym9Ilt+JDr0+Uso8krMxB9uINfMq1csDbaWCQ8kgz/bq4RVx9SSTemm4OCVWBBRMLDG5DwEHerjtxEPD86GpogWADmwZcfsI9YrQ7STjWKT3z4AhrURoHkCCtCNpqt2fFnlzQsZ81ujgp898DDCJ+lfvmiyrLqfZd2Yc+86m/a0uLZyJHv958Tw7aFvxxnR+VWWXgU7u7UKKoYs3Ubt3VsSRVBkNO78h2au9NzIxbUHpc2Nccw04IDGH18A0Mo90JYRVrHVZOOlwTqvneGdRwI6Tv6n0X5MlKsYN5JoF6FY3h+ymOeBYEikQsym9KHAdxz3gZuxk8MiGhwbyX3geuEahUddvQ8VzVac4l8BquiZhsZMnj6on1QhL6j0DX1RaLBGvX7CaIiWuCJui/FOn5mOtLetY3tItfWLu4q/PehN1KdqptEd/JNpf/X5Rnb6WicBwiIEH70UC5uRIil9f7eAyX4nDw6Z3eCdHUR9ee2HOq8ywzOzxqUgjdWv1SSlL//v6a3ABe2gU+yxtuJueIwiAAdYTQdWqPgc7HSfq1+u/KS5aJkoTqYrES1nppLeAHFi5xzakjvhEaPQ1t2abSog7cFaNA52ORySRwvvzD7lJ9VJAo1fb/ZNCqMUwazaW7SH4jylo+J5YQ5M9IrO7ZewlqGue+g9Px3qvEJdK7164JiVCV5DLGZ7x5XA2YX/21+YgdTr1nO3HnK+JQlDMHJRmPKni3H+D2VqWdwrLfP8wDCtrRxI1w4Po9efR11f92ffYL+IUYord8TTsbSo82Ehui8DF00vALq7uyuje11hGPE5N/2hGGmMsyS8BxdEOHNMKq9O4nFIk7vijTI81EcClYTSqvVLVhorQPJmHIcnz70ic3/yfpKWFbXcODUfscB9Ril7mBcWvEgwgdmp2TTjwzb2orm1IyEgRP6kabM1I9CFlFKBCQXjTj1dYuytTPuLNH75vbtOo+A+6XMKMdJLJ3+Jd+Nc0cvtzI02OZP0SvqxVwP86rG4AHKD1veru9J8h4JrnzdhdIJjr7cXpjTkEG4WSjEXiiEPt/W0uZOaujz59ySU36Q78/H/FRfXWLDhVGxPZxkyjOK5fds7ivbyxJiEQPBV4mAVbfUSSqRQyRS+bS8e/TwX8qTxbVGHzBoMkrULEPWVZ8VKFgtFOamopl5SBLJugi+2OcdAi8ye+TIuyAzJdSydPO2p1vX/SaFNZYmOdn9aeJO6rFSZ+mRdl6iZ0d5caeOg3pnvVs6Ypqjd8H/QHeCyg+NwMbBOxzX+c8m+McE5kMm7TRT0qgJKYoeFaJJmLFiFC1jt/Hllv6ivfD8H41UU6l/Q0Ea+wFbozw4VCpYPvlb9Flh8Ao7jWVrD8/IPXcgVtV2cFj3BlrjL0hM3w7oDRRB7RLf5mB2DKPXAXno9L5X/6XPpO0DzpRjBFFQqRUP8GsHez0RaoK1vtEnqFZxs/HRSrh5snizmd0Mzzv5iaFlaQ5sg4IWQtyGdCy4QwryOLfV+wwpnFLMfnrFc/rw8PvS0Wpv9dCHZ73KuyLjFqf9vFILA6FLO9ujDZNfQR+Gc4vrzQKb/wxcgcK8s0ikz1rahWBRyHCAVDSnS3g6zD3R/QRj8upQOXR6JN0EZbpj2qJiPpWL2myBtuc4D5PNHwj3C2mInT6F9KEfrVoA6hzAuZS0btNGYw8wS+yglRq2LfduaMYTAD7ChXb0aexggZfUVlkRvfPsz3P/6cH9XOi88au7tvZdIgpQDmnZNv8GFMu5A9/j5aFDwLqaLqsizTiU3pm8JT/u1Hvk/Mo7cjOjAhJbxsMTiE0CTc2jqusdhnr0OkwihKY1RkJi8krXXActrLSV8lJ6eiVI75kWKoIZAVBc0Hb3nnTvIeNSi3N/Q2HvS053Az0PNQ+pdiIvieFFB/1vmWVN8QUL/X6Lc2MakncTjc9kVi82zZ8xq3VpHslyt06m1049Y6qMoOCfK6dJLI7rNQfAPpkNb86GAj2Njmdo/mniF87bTdFFArhZnFVMvcR1d4VibeP8VT63jPmPNfS4JqNDNiE4mKdCnxhpjqFesmrD4b5yFwOmzZezUv6MnsLbNZM8By736WhU8+oGKIwlVMuH2raOeSos4yPpkqXergM/bYZy+k8TSLQJuQuSQ6dufYSDwLdaJCxAKMVt4tjT7sb/mOAwa67Kv+yKnBm1NNOVJjpK3yugfW/HuxOouMKNHHukOWqQ5B5gJyxqPDU97eubng5f+Hch7nR5lKH+BEq3LOHMDXjxRprh/V0Gf68B255gt3qfIDlfd/Nkfz8hmD+rrjE4U7QnxRd61GN3rAOLLzMzC/4qWNc0BUYmPraen7pB9qIrRPXYeMH1un1c+yk6bw9w6O/JBhKJ8ZlepqVcwBowwMjzEu/GNujTgTSZjZ4aXYcbArMnxPnxha6TlMLOQFT6Wbb0cVIYhaExOa+V2l3xBVfjqpVpbkp//2CxwllW9nKUMDffSkeKb9yTtuAfgRJ4ZOXNGXSFz7ponk84EKKoHa9RyEoWZJY3f38c1PH75TifO2bpLeLrr5Wxa29oCCNJjCxn/WG6dbsq0lS6J+MO4iqpVmrRHDwWUWqqDfMI1NXLNgUngs3IhgPkwiUEXkzcOnEtkl8tk28qoAc16ysa32gQ/qNCuTsUCu/FJIzUZd1sHoX+CWnMcVht699taIJJUpwXZ1TDDNIzNmInDED6SvbyTVJ3em15r0Kwse1+T+3B8snJZLIbX2c3o+i8uqMKBbJ2eaos2rVs8W3OIQmQordwJEkQDLztqieINVIHToiQ5F5c3wN0HS14MZnSuXF5j+4tAQ4aVF5hzx/VDwY7tilUbJKI1e9nn8iut3bdFKSdUtj6ImYwXNIZrnR7ycZ8cCH6HlrCD7tRnrfr6T9y46vY5kiVuaNUssU6XOSGiN+A+J0bjF+xO+CIuKoSZ4S2nAfCTzlaY9ovWGQNPlr5pm3tCp/MGjE9EtPsfhRRryK4mfqPhnzJbJ26KH8uhoFXMq7X+acMno9h9kU5J7f7/e/5WAfCzIxPPIxyqXEOCnw4erolF6XvIC/Ds292OiSw3cxP+yAoG/3bh84CJnyn2kCE3u9g1KCqLYBDQXWyBwzv38/gT6CnDmh/zhq8xOX2LtraHFCNsP98GmzDTdpelj7biamZEOvnRfJ2YFvW2Xq11Y1v/6awd4Gb0/HxrjmRS8oZIeu0x9XrDj/igI/QPMxjoCLEDlg21/zxz/eD1z/jXn/zz6IANv8F+r/8K1GPy/q/+/zcsNHZWs1QvAb0G1gl9twIsOKSGQ7ACQT6LBAMwMCduUHn+fvTzjRf+cP+BnHHBzkjEtqKMAHFxxMfBJoMh6RZES/pHwqMdfZ0FgokR6hlOO3hWBYGMgImvEhQWik08biajaSBcvfvEHo6YLEzBzRHDSscMVVrvIFF/dHwKxCHUHYH7Iv+mhBtgIVwgFJxUA0OT6wQriO2uFYNlvhQrQZUWiVmlFlkAN2O6oAFhNV6VCk3q1JmkxWbBMNepMMaRVaJOrZbRpV28rqKATQksslt2e1sFtYkcwonAI24DfEIUNH8X/6g4o6l5t9hZZ7NLEsuoOGraCecPcOixQ70Qn3gn8HMB/w8JoFUTsoNLaVsFl1dp2bJoQEzNqotYKPm3XoGaDamDqoEC1ECi4N/4BGQAAAA==); }
-      @font-face { font-family: Comic Shanns; src: url(data:font/woff2;base64,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); }</style></defs><rect x="0" y="0" width="1452.6284042512102" height="785.1072998046875" fill="#ffffff"></rect><g stroke-linecap="round" transform="translate(68.21875 285.1854248046875) rotate(0 57.140625 41.75)"><path d="M20.88 0 C40.07 -3.44, 67.81 3.23, 93.41 0 C108.58 -1.7, 113.64 4.43, 114.28 20.88 C110.37 31.89, 114.48 43.19, 114.28 62.63 C111.97 77.06, 110.19 79.94, 93.41 83.5 C76.29 85.88, 58.8 83.04, 20.88 83.5 C5.01 86.19, 3.57 75.81, 0 62.63 C2.8 49.69, 3.12 33.02, 0 20.88 C0.67 5.24, 5.02 3.06, 20.88 0" stroke="none" stroke-width="0" fill="#ffec99"></path><path d="M20.88 0 C38.48 1.33, 55.66 1.28, 93.41 0 M20.88 0 C44.6 -0.2, 69.08 0.17, 93.41 0 M93.41 0 C108.93 -0.66, 114.81 6.61, 114.28 20.88 M93.41 0 C108.53 1.09, 112.71 7.42, 114.28 20.88 M114.28 20.88 C112.83 36.64, 115.76 49.99, 114.28 62.63 M114.28 20.88 C113.33 33.37, 113.92 45.86, 114.28 62.63 M114.28 62.63 C115.09 77.36, 107.86 81.53, 93.41 83.5 M114.28 62.63 C116.05 77.36, 107.29 85.79, 93.41 83.5 M93.41 83.5 C67.37 84.88, 43.52 83.69, 20.88 83.5 M93.41 83.5 C64.39 82.39, 36.31 83.79, 20.88 83.5 M20.88 83.5 C7.14 83.77, 0.22 76.33, 0 62.63 M20.88 83.5 C7.36 81.6, 0.6 75.33, 0 62.63 M0 62.63 C-1.85 48.15, 1.08 32.11, 0 20.88 M0 62.63 C0.19 51.66, -0.9 39.69, 0 20.88 M0 20.88 C1.08 6.53, 5.03 -0.9, 20.88 0 M0 20.88 C0.95 6.51, 4.8 2.2, 20.88 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g stroke-linecap="round" transform="translate(85.1171875 271.7322998046875) rotate(0 57.140625 41.75)"><path d="M20.88 0 C36.65 0.88, 53.33 -3.33, 93.41 0 C106.92 -1.99, 112.95 8.68, 114.28 20.88 C113.65 31.24, 112.8 40.44, 114.28 62.63 C112.86 74.18, 104.02 84.03, 93.41 83.5 C75.64 78.75, 55.15 82.05, 20.88 83.5 C6.55 81.54, 0.98 74.7, 0 62.63 C-1.9 48.94, -3.45 40.75, 0 20.88 C2.95 9.1, 6.34 -1.4, 20.88 0" stroke="none" stroke-width="0" fill="#ffec99"></path><path d="M20.88 0 C44.26 1.44, 63.6 0.29, 93.41 0 M20.88 0 C40.78 -0.21, 59.6 0.09, 93.41 0 M93.41 0 C105.83 0.69, 115.59 5.93, 114.28 20.88 M93.41 0 C107.36 -0.58, 116.13 6.78, 114.28 20.88 M114.28 20.88 C115.72 29.87, 113.43 41.74, 114.28 62.63 M114.28 20.88 C115.3 30.82, 114.91 42.41, 114.28 62.63 M114.28 62.63 C112.36 76.73, 105.74 83.18, 93.41 83.5 M114.28 62.63 C112.48 74.85, 108.46 83.79, 93.41 83.5 M93.41 83.5 C67.59 85.09, 44.24 83.88, 20.88 83.5 M93.41 83.5 C77.17 82.58, 58.4 83.6, 20.88 83.5 M20.88 83.5 C8.45 84.11, 0.55 76.75, 0 62.63 M20.88 83.5 C7.06 81.8, 0.99 74.25, 0 62.63 M0 62.63 C-1.18 51.77, 0.62 41.51, 0 20.88 M0 62.63 C0.34 46.95, -0.32 30.63, 0 20.88 M0 20.88 C-0.1 6.15, 6.07 -1.37, 20.88 0 M0 20.88 C0 7.01, 8.25 -0.1, 20.88 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g stroke-linecap="round" transform="translate(290.1015625 640.1072998046875) rotate(0 186.5 67.5)"><path d="M32 0 C140.02 -4.99, 249.26 -6.46, 341 0 C361.27 3.21, 371.54 8.64, 373 32 C374.4 45.04, 373.03 60.55, 373 103 C370.4 126.18, 365.21 132.91, 341 135 C225.99 138.51, 106.01 138.75, 32 135 C11.12 135.2, 3.06 121.49, 0 103 C2.24 85.97, -1.84 69.24, 0 32 C-0.72 14.27, 9.6 1.86, 32 0" stroke="none" stroke-width="0" fill="#b2f2bb"></path><path d="M32 0 C147.2 2.31, 263.84 0.13, 341 0 M32 0 C152.79 -1.4, 273.68 -0.26, 341 0 M341 0 C363.24 1.89, 371.63 8.68, 373 32 M341 0 C361.89 1.32, 374.96 8.55, 373 32 M373 32 C373.51 49.51, 371.4 69.4, 373 103 M373 32 C371.89 53.55, 372.75 74.94, 373 103 M373 103 C372.91 124.05, 363.84 135.32, 341 135 M373 103 C371.37 125.1, 364.41 133.43, 341 135 M341 135 C243.35 136, 143.9 136.22, 32 135 M341 135 C252.05 134.58, 161.61 134.64, 32 135 M32 135 C9.49 136.67, -1.21 123.37, 0 103 M32 135 C12 134.37, -0.77 125.37, 0 103 M0 103 C0.14 78.38, -1.66 53.05, 0 32 M0 103 C-1 85.17, -0.34 65.21, 0 32 M0 32 C0.75 11.29, 10.4 -0.03, 32 0 M0 32 C-2.27 12.93, 10.36 -0.31, 32 0" stroke="#2f9e44" stroke-width="2" fill="none"></path></g><g stroke-linecap="round" transform="translate(304.0703124999999 627.2908935546875) rotate(0 186.5 67.5)"><path d="M32 0 C99.75 -0.07, 161.54 3.63, 341 0 C363.88 -2.2, 374.83 7.14, 373 32 C369.67 56.51, 369.73 80.69, 373 103 C371.86 121.04, 365.88 135.99, 341 135 C256.53 132.69, 168.68 133, 32 135 C10.03 134.3, -0.87 127.4, 0 103 C1.64 86.22, 3 67.78, 0 32 C1.84 9.2, 14.11 0.61, 32 0" stroke="none" stroke-width="0" fill="#b2f2bb"></path><path d="M32 0 C115.52 1.4, 198.1 0.3, 341 0 M32 0 C146.69 2.05, 260.35 1.75, 341 0 M341 0 C364.02 1.02, 374.31 9.03, 373 32 M341 0 C363.28 1.65, 374.07 10.28, 373 32 M373 32 C373.05 49.43, 374.13 67.61, 373 103 M373 32 C373.56 53.48, 373.1 74.79, 373 103 M373 103 C371.81 123.87, 362.02 136.69, 341 135 M373 103 C371.99 126.23, 362.36 135.56, 341 135 M341 135 C247.91 132.51, 156.62 132.69, 32 135 M341 135 C261.96 134.72, 182.4 134.98, 32 135 M32 135 C11.59 136.42, 0.19 124.28, 0 103 M32 135 C8.96 137.09, -1.24 125.29, 0 103 M0 103 C0.44 84.06, -1.82 68.4, 0 32 M0 103 C1.27 79.48, 0.98 56.36, 0 32 M0 32 C0.16 12.48, 10.16 0.85, 32 0 M0 32 C-0.57 10.58, 9.84 0.71, 32 0" stroke="#2f9e44" stroke-width="2" fill="none"></path></g><g stroke-linecap="round" transform="translate(477.3994140625 378.0802001953125) rotate(0 110.28125 47.6328125)"><path d="M23.82 0 C71.25 1.44, 121.04 -1.23, 196.75 0 C215.34 2.43, 217.56 10.86, 220.56 23.82 C220.43 39.4, 220.37 62.4, 220.56 71.45 C220.84 86.46, 210.56 97.66, 196.75 95.27 C137.78 100.62, 81.78 96.46, 23.82 95.27 C10.36 97.47, -2.73 87.07, 0 71.45 C-2.96 52.81, 0.19 35.84, 0 23.82 C0.08 10.72, 6.94 1.73, 23.82 0" stroke="none" stroke-width="0" fill="#b2f2bb"></path><path d="M23.82 0 C67.79 -0.23, 115.28 2.19, 196.75 0 M23.82 0 C72.95 0.25, 121.65 -0.72, 196.75 0 M196.75 0 C211.99 -0.05, 222.44 6.28, 220.56 23.82 M196.75 0 C213.5 0.36, 222.09 8.09, 220.56 23.82 M220.56 23.82 C221.31 37.36, 220.25 56.1, 220.56 71.45 M220.56 23.82 C219.9 38.62, 220.14 51.22, 220.56 71.45 M220.56 71.45 C219.03 87.42, 210.82 93.29, 196.75 95.27 M220.56 71.45 C219.84 88.77, 212.6 93.46, 196.75 95.27 M196.75 95.27 C140.64 96.38, 87.94 95, 23.82 95.27 M196.75 95.27 C160.68 94.58, 125.89 94.95, 23.82 95.27 M23.82 95.27 C8.02 95.61, -0.4 87.6, 0 71.45 M23.82 95.27 C6.83 96.97, 0.75 88.96, 0 71.45 M0 71.45 C0.08 56.74, -0.66 41.56, 0 23.82 M0 71.45 C-0.02 54.9, -0.79 39.32, 0 23.82 M0 23.82 C-1.09 9.87, 7.36 -1.79, 23.82 0 M0 23.82 C-0.48 8.17, 9.74 0.58, 23.82 0" stroke="#2f9e44" stroke-width="2" fill="none"></path></g><g transform="translate(511.02071380615234 400.7130126953125) rotate(0 76.65995025634766 25)"><text x="76.65995025634766" y="17.619999999999997" font-family="Excalifont, Xiaolai, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Endpoint Picker</text><text x="76.65995025634766" y="42.62" font-family="Excalifont, Xiaolai, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Service</text></g><g stroke-linecap="round" transform="translate(102.2177734375 257.9141845703125) rotate(0 57.140625 41.75)"><path d="M20.88 0 C46.28 -0.94, 80.79 0.72, 93.41 0 C104.19 2.4, 117.1 10.26, 114.28 20.88 C117.53 35.09, 113.39 42.67, 114.28 62.63 C113.78 79.14, 109.16 85.65, 93.41 83.5 C76.92 81.02, 54.36 82.46, 20.88 83.5 C4.7 83.19, 3 78.05, 0 62.63 C1.68 42.54, -0.05 30.88, 0 20.88 C-3.48 6.36, 5.12 0.21, 20.88 0" stroke="none" stroke-width="0" fill="#ffec99"></path><path d="M20.88 0 C46.71 1.43, 72.02 0.45, 93.41 0 M20.88 0 C39.7 -0.76, 56.01 0.02, 93.41 0 M93.41 0 C107.38 -0.04, 112.83 5.4, 114.28 20.88 M93.41 0 C105.18 -1.7, 112.43 9.16, 114.28 20.88 M114.28 20.88 C114.06 31.68, 115.46 44.3, 114.28 62.63 M114.28 20.88 C114.08 36.13, 114.93 52.01, 114.28 62.63 M114.28 62.63 C114.53 77.24, 106.51 82.14, 93.41 83.5 M114.28 62.63 C113.73 75.85, 107.43 85.02, 93.41 83.5 M93.41 83.5 C73.07 83.17, 56.48 82.82, 20.88 83.5 M93.41 83.5 C73.98 83.5, 55.11 83.83, 20.88 83.5 M20.88 83.5 C8.61 83.03, 0.17 77.43, 0 62.63 M20.88 83.5 C7.32 83.09, -1.65 74.76, 0 62.63 M0 62.63 C1.3 47.78, -0.48 30.94, 0 20.88 M0 62.63 C-0.89 52.85, -0.46 41.69, 0 20.88 M0 20.88 C-1.45 5.25, 8.55 1.64, 20.88 0 M0 20.88 C0.61 4.94, 6.82 -1.54, 20.88 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(128.9084243774414 274.6641845703125) rotate(0 30.449974060058594 25)"><text x="30.449974060058594" y="17.619999999999997" font-family="Excalifont, Xiaolai, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Model</text><text x="30.449974060058594" y="42.62" font-family="Excalifont, Xiaolai, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Server</text></g><g stroke-linecap="round" transform="translate(470.3876953125 140.3614501953125) rotate(0 110.28125 47.6328125)"><path d="M23.82 0 C69.04 -0.44, 115.41 -2.92, 196.75 0 C211.63 1.35, 222.48 11.39, 220.56 23.82 C220.18 31.29, 219.35 45.04, 220.56 71.45 C222.5 85.21, 210.82 94.98, 196.75 95.27 C148.05 99.11, 107.88 97.98, 23.82 95.27 C8.15 91.93, -0.33 86.03, 0 71.45 C-0.17 62.04, 1.9 51.19, 0 23.82 C-1.35 11.01, 11.48 -1.99, 23.82 0" stroke="none" stroke-width="0" fill="#ffec99"></path><path d="M23.82 0 C80.54 1.26, 135.33 -1.37, 196.75 0 M23.82 0 C83.27 0.83, 144.24 0.1, 196.75 0 M196.75 0 C212.38 -1.16, 222.02 7.56, 220.56 23.82 M196.75 0 C210.97 -0.21, 218.68 7.7, 220.56 23.82 M220.56 23.82 C220.3 39.34, 220.95 54.89, 220.56 71.45 M220.56 23.82 C221.75 40.07, 221.52 55.58, 220.56 71.45 M220.56 71.45 C219.87 87.55, 213.15 94.55, 196.75 95.27 M220.56 71.45 C220.64 87.7, 212.04 93.53, 196.75 95.27 M196.75 95.27 C150.02 97.34, 100.19 98.1, 23.82 95.27 M196.75 95.27 C159.18 95.87, 122.12 97.55, 23.82 95.27 M23.82 95.27 C7.17 96.38, 0 86.34, 0 71.45 M23.82 95.27 C9.37 95.14, -1.77 87.34, 0 71.45 M0 71.45 C1.78 54.35, -0.91 36.58, 0 23.82 M0 71.45 C0.11 52.85, -0.74 36.39, 0 23.82 M0 23.82 C1.23 8.88, 8.75 -0.46, 23.82 0 M0 23.82 C-2.1 6.39, 6.03 -2.19, 23.82 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(481.6190081834793 175.4942626953125) rotate(0 99.04993712902069 12.5)"><text x="99.04993712902069" y="17.619999999999997" font-family="Excalifont, Xiaolai, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">L7 Proxy / Gateway</text></g><g stroke-linecap="round"><g transform="translate(583.2613405725397 240.8028564453125) rotate(0 -0.07611351315927095 68.138671875)"><path d="M-1.19 0.76 C-0.89 23.54, 0.52 113.85, 0.88 136.59" stroke="#2f9e44" stroke-width="2.5" fill="none" stroke-dasharray="8 10"></path></g><g transform="translate(583.2613405725397 240.8028564453125) rotate(0 -0.07611351315927095 68.138671875)"><path d="M-8.04 113.23 C-4.77 120.29, -3.52 125.69, 0.88 136.59" stroke="#2f9e44" stroke-width="2.5" fill="none"></path></g><g transform="translate(583.2613405725397 240.8028564453125) rotate(0 -0.07611351315927095 68.138671875)"><path d="M9.06 112.97 C8.49 119.91, 5.9 125.37, 0.88 136.59" stroke="#2f9e44" stroke-width="2.5" fill="none"></path></g></g><mask></mask><g stroke-linecap="round" transform="translate(750.6435546874999 614.4747314453125) rotate(0 192.08007812500006 67.5)"><path d="M32 0 C158.04 4.59, 289.17 2.11, 352.16 0 C374.5 2.14, 385.78 14.17, 384.16 32 C380.34 58.45, 384.72 90.14, 384.16 103 C384.95 121.39, 372.03 134.63, 352.16 135 C283.11 135.67, 217.71 136.84, 32 135 C10.4 134.18, -0.97 122.58, 0 103 C-2.31 73.54, 2.48 47.77, 0 32 C-0.77 8.01, 9.96 -0.29, 32 0" stroke="none" stroke-width="0" fill="#b2f2bb"></path><path d="M32 0 C125.72 -0.2, 220.61 0.88, 352.16 0 M32 0 C100.58 -2.23, 168.62 -2.12, 352.16 0 M352.16 0 C371.8 -0.78, 382.64 12.44, 384.16 32 M352.16 0 C373.2 1.21, 384.15 9.66, 384.16 32 M384.16 32 C383.15 60.37, 385.37 87.56, 384.16 103 M384.16 32 C384.71 58, 384.05 83.35, 384.16 103 M384.16 103 C384.41 125.28, 373.49 136.81, 352.16 135 M384.16 103 C385.42 122.08, 373.35 135.39, 352.16 135 M352.16 135 C252.85 132.7, 152.26 134.2, 32 135 M352.16 135 C277.01 137.27, 202.72 136.84, 32 135 M32 135 C9.75 134.61, 0.37 123.55, 0 103 M32 135 C10.58 134.83, 0.13 123.49, 0 103 M0 103 C-0.39 76.36, -0.28 46.02, 0 32 M0 103 C0.19 85.91, -1.05 68.06, 0 32 M0 32 C1.64 10.1, 11.49 -1.64, 32 0 M0 32 C-0.34 12.02, 8.7 -1.11, 32 0" stroke="#2f9e44" stroke-width="2" fill="none"></path></g><g transform="translate(755.6435546874999 631.9747314453125) rotate(0 186.12994003295904 50)"><text x="0" y="17.619999999999997" font-family="Excalifont, Xiaolai, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="start" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">            InferencePool API</text><text x="0" y="42.62" font-family="Excalifont, Xiaolai, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="start" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic"> Selects</text><text x="0" y="67.62" font-family="Excalifont, Xiaolai, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="start" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic"> - the model servers (the endpoints)</text><text x="0" y="92.62" font-family="Excalifont, Xiaolai, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="start" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic"> - the endpoint picker service</text></g><g stroke-linecap="round"><g transform="translate(462.5791015625 411.3730470828506) rotate(0 -121.759765625 -28.974548443769038)"><path d="M-0.98 0.09 C-24.45 -1.96, -100.69 -2.6, -141.04 -12.31 C-181.39 -22.03, -225.85 -50.73, -243.06 -58.21" stroke="#2f9e44" stroke-width="2.5" fill="none" stroke-dasharray="8 10"></path></g><g transform="translate(462.5791015625 411.3730470828506) rotate(0 -121.759765625 -28.974548443769038)"><path d="M-218.27 -55.02 C-225.22 -56.43, -232.35 -56.29, -243.06 -58.21" stroke="#2f9e44" stroke-width="2.5" fill="none"></path></g><g transform="translate(462.5791015625 411.3730470828506) rotate(0 -121.759765625 -28.974548443769038)"><path d="M-226.12 -39.83 C-230.82 -45.53, -235.69 -49.74, -243.06 -58.21" stroke="#2f9e44" stroke-width="2.5" fill="none"></path></g></g><mask></mask><g transform="translate(273.1737523901456 341.5802001953125) rotate(0 68.55846812991925 25)"><text x="68.55846812991923" y="17.5" font-family="Comic Shanns, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Model Server</text><text x="68.55846812991923" y="42.5" font-family="Comic Shanns, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Protocol</text></g><g stroke-linecap="round"><g transform="translate(443.85546875 188.5137939453125) rotate(0 -112.228515625 29.22265625)"><path d="M-0.68 -1.1 C-20.79 -0.89, -83.63 -8.3, -120.94 1.71 C-158.25 11.72, -207.44 49.33, -224.56 58.94 M1.16 0.93 C-18.54 1.29, -80.92 -6.18, -118.67 3.14 C-156.43 12.46, -208 47.83, -225.37 56.86" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(443.85546875 188.5137939453125) rotate(0 -112.228515625 29.22265625)"><path d="M-209.44 37.6 C-215.6 41.42, -218.51 47.98, -225.37 56.86 M-209.44 37.6 C-215.11 44.17, -220.1 49.91, -225.37 56.86" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(443.85546875 188.5137939453125) rotate(0 -112.228515625 29.22265625)"><path d="M-200.78 52.35 C-209.39 52.05, -214.69 54.54, -225.37 56.86 M-200.78 52.35 C-209.52 53.95, -217.46 54.65, -225.37 56.86" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g></g><mask></mask><g transform="translate(275.7103710609954 149.0489501953125) rotate(0 51.191972689004615 12.5)"><text x="51.19197268900463" y="17.619999999999997" font-family="Excalifont, Xiaolai, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Traffic</text></g><g transform="translate(468.03412875362244 286.8809814453125) rotate(0 55.69806259269109 25)"><text x="55.698062592691095" y="17.5" font-family="Comic Shanns, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Extension</text><text x="55.698062592691095" y="42.5" font-family="Comic Shanns, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Protocol</text></g><g stroke-linecap="round" transform="translate(822.63671875 380.4942626953125) rotate(0 110.28125 47.6328125)"><path d="M23.82 0 C61.47 -0.69, 93.52 4.98, 196.75 0 C216.1 2.95, 223.17 4.92, 220.56 23.82 C224.42 39.65, 219.59 49.22, 220.56 71.45 C219.08 90.46, 214.22 93.4, 196.75 95.27 C147.6 97.33, 98.46 99.1, 23.82 95.27 C7.29 95.04, 2.09 89.95, 0 71.45 C2.45 56.24, 2.75 44.41, 0 23.82 C0.67 10.72, 4.9 -3.22, 23.82 0" stroke="none" stroke-width="0" fill="#ffec99"></path><path d="M23.82 0 C73.46 0.23, 122.54 1.22, 196.75 0 M23.82 0 C70 0.09, 116.01 0.21, 196.75 0 M196.75 0 C213.09 -1.96, 219.85 9.16, 220.56 23.82 M196.75 0 C213.11 1.41, 220.05 7.44, 220.56 23.82 M220.56 23.82 C219.35 39.84, 220.74 55.1, 220.56 71.45 M220.56 23.82 C221.36 41.8, 220.53 62.25, 220.56 71.45 M220.56 71.45 C220.81 86.59, 213.06 93.69, 196.75 95.27 M220.56 71.45 C221.05 85.71, 210.41 93.9, 196.75 95.27 M196.75 95.27 C158.77 95.3, 116.48 95.21, 23.82 95.27 M196.75 95.27 C151.77 95.73, 105.1 95.39, 23.82 95.27 M23.82 95.27 C8.09 97.01, -1.6 86.27, 0 71.45 M23.82 95.27 C6.69 97.13, -1.41 85.29, 0 71.45 M0 71.45 C0.19 59.05, 0.6 44.44, 0 23.82 M0 71.45 C0.06 53.44, -0.92 36.28, 0 23.82 M0 23.82 C0.36 7.78, 8.38 -1.5, 23.82 0 M0 23.82 C-0.1 8.68, 5.78 -2.16, 23.82 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(839.5780334472656 415.6270751953125) rotate(0 93.33993530273438 12.5)"><text x="93.33993530273438" y="17.619999999999997" font-family="Excalifont, Xiaolai, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Gateway Controller</text></g><g stroke-linecap="round" transform="translate(939.5 142.9864501953125) rotate(0 81.77734375 41.41015625)"><path d="M20.71 0 C56.95 1.65, 89.18 -0.68, 142.85 0 C159.8 -0.58, 166.6 10.18, 163.55 20.71 C161.08 33.25, 165.55 40.16, 163.55 62.12 C166.23 78.86, 156.24 80.86, 142.85 82.82 C99.65 80.64, 52.44 83.77, 20.71 82.82 C7.49 80.52, 1.3 75.62, 0 62.12 C-0.76 50.89, 2.19 39.45, 0 20.71 C2.33 4.4, 3.71 -0.81, 20.71 0" stroke="none" stroke-width="0" fill="#ffec99"></path><path d="M20.71 0 C65.19 -0.08, 112.71 -1.26, 142.85 0 M20.71 0 C46.04 0.33, 70.7 0.37, 142.85 0 M142.85 0 C157.33 0.63, 162.82 8.21, 163.55 20.71 M142.85 0 C157.68 0.45, 161.53 7.71, 163.55 20.71 M163.55 20.71 C165.74 33.72, 162.01 49.31, 163.55 62.12 M163.55 20.71 C163.68 31.27, 163.54 43.83, 163.55 62.12 M163.55 62.12 C164.24 75.7, 157.52 81.56, 142.85 82.82 M163.55 62.12 C164.79 76.17, 156.97 81.05, 142.85 82.82 M142.85 82.82 C99.61 85.16, 56.9 82.6, 20.71 82.82 M142.85 82.82 C111.28 81.63, 80.2 81.85, 20.71 82.82 M20.71 82.82 C7.12 82.37, 0.01 77.24, 0 62.12 M20.71 82.82 C5.96 81.25, 0.02 77.13, 0 62.12 M0 62.12 C0.89 47.15, -0.73 31.99, 0 20.71 M0 62.12 C0.69 46.92, -0.55 31.39, 0 20.71 M0 20.71 C1.74 6.85, 8.29 1.3, 20.71 0 M0 20.71 C-0.27 8.52, 8.72 -1.06, 20.71 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(994.1373672485352 171.8966064453125) rotate(0 27.139976501464844 12.5)"><text x="27.139976501464844" y="17.619999999999997" font-family="Excalifont, Xiaolai, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Client</text></g><g stroke-linecap="round"><g transform="translate(922.86328125 183.162400055984) rotate(0 -105.361328125 -0.8692249303357471)"><path d="M0.05 -1.15 C-35.27 -1.48, -175.62 -1.12, -210.8 -1.08 M-1.38 0.86 C-36.97 0.11, -176.69 -2.25, -211.78 -2.85" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(922.86328125 183.162400055984) rotate(0 -105.361328125 -0.8692249303357471)"><path d="M-188.15 -11 C-199.38 -7.88, -205.73 -5.01, -211.78 -2.85 M-188.15 -11 C-196.2 -7.3, -205.19 -5.52, -211.78 -2.85" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(922.86328125 183.162400055984) rotate(0 -105.361328125 -0.8692249303357471)"><path d="M-188.44 6.1 C-199.68 2.44, -205.91 -1.47, -211.78 -2.85 M-188.44 6.1 C-196.43 3.45, -205.31 -1.13, -211.78 -2.85" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g></g><mask></mask><g transform="translate(769.3978710609954 147.5391845703125) rotate(0 51.191972689004615 12.5)"><text x="51.19197268900463" y="17.619999999999997" font-family="Excalifont, Xiaolai, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Traffic</text></g><g stroke-linecap="round"><g transform="translate(928.5772506621181 349.6577824771475) rotate(188.5660498991342 -120.40162861425495 -46.92349377479326)"><path d="M0.36 0.29 C-18.72 -4.9, -73.42 -14.9, -113.8 -30.55 C-154.19 -46.2, -220.65 -83.14, -241.95 -93.61" stroke="#1e1e1e" stroke-width="2.5" fill="none" stroke-dasharray="8 10"></path></g><g transform="translate(928.5772506621181 349.6577824771475) rotate(188.5660498991342 -120.40162861425495 -46.92349377479326)"><path d="M-24.48 3.06 C-15.16 2.08, -6.74 -0.91, 0.36 0.29" stroke="#1e1e1e" stroke-width="2.5" fill="none"></path></g><g transform="translate(928.5772506621181 349.6577824771475) rotate(188.5660498991342 -120.40162861425495 -46.92349377479326)"><path d="M-20.45 -13.56 C-12.49 -8.61, -5.51 -5.67, 0.36 0.29" stroke="#1e1e1e" stroke-width="2.5" fill="none"></path></g></g><mask></mask><g transform="translate(808.2207168425398 268.5841064453125) rotate(0 65.25584565746021 12.5)"><text x="65.25584565746026" y="17.619999999999997" font-family="Excalifont, Xiaolai, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Configures</text></g><g stroke-linecap="round"><g transform="translate(936.1958922859567 493.1307373046875) rotate(0 -27.263694847254442 54.974243164062386)"><path d="M-1.13 -0.25 C-2.06 8.87, 2.63 37.08, -6.23 55.34 C-15.09 73.6, -46.22 100.06, -54.29 109.32" stroke="#1e1e1e" stroke-width="2.5" fill="none" stroke-dasharray="8 10"></path></g><g transform="translate(936.1958922859567 493.1307373046875) rotate(0 -27.263694847254442 54.974243164062386)"><path d="M-43.75 86.65 C-46.66 90.48, -49.2 98.19, -54.29 109.32" stroke="#1e1e1e" stroke-width="2.5" fill="none"></path></g><g transform="translate(936.1958922859567 493.1307373046875) rotate(0 -27.263694847254442 54.974243164062386)"><path d="M-31.64 98.73 C-37.62 99.45, -43.17 104.16, -54.29 109.32" stroke="#1e1e1e" stroke-width="2.5" fill="none"></path></g></g><mask></mask><g transform="translate(916.1386855925398 541.3812670878817) rotate(0 65.25584565746021 12.5)"><text x="65.25584565746026" y="17.619999999999997" font-family="Excalifont, Xiaolai, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Watches</text></g><g stroke-linecap="round"><g transform="translate(588.3232087702838 481.6697998046875) rotate(0 121.13727580091177 53.65456432845673)"><path d="M0.47 -0.11 C23.69 4.93, 100.2 12.29, 140.47 30.06 C180.75 47.83, 225.13 93.74, 242.12 106.51" stroke="#1e1e1e" stroke-width="2.5" fill="none" stroke-dasharray="8 10"></path></g><g transform="translate(588.3232087702838 481.6697998046875) rotate(0 121.13727580091177 53.65456432845673)"><path d="M218.74 97.67 C227.73 101.01, 237.6 104.27, 242.12 106.51" stroke="#1e1e1e" stroke-width="2.5" fill="none"></path></g><g transform="translate(588.3232087702838 481.6697998046875) rotate(0 121.13727580091177 53.65456432845673)"><path d="M229.89 84.71 C234.49 93.18, 239.98 101.53, 242.12 106.51" stroke="#1e1e1e" stroke-width="2.5" fill="none"></path></g></g><mask></mask><g transform="translate(548.2324355925398 511.3304858378817) rotate(0 65.25584565746027 12.5)"><text x="65.25584565746026" y="17.619999999999997" font-family="Excalifont, Xiaolai, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Watches</text></g><g stroke-linecap="round"><g transform="translate(576.5876850571794 482.7557373046875) rotate(0 -51.44594701271518 58.185546875)"><path d="M0.29 0.13 C-8.59 7.07, -36.33 21.81, -53.51 41.35 C-70.7 60.88, -94.76 105, -102.82 117.32" stroke="#1e1e1e" stroke-width="2.5" fill="none" stroke-dasharray="8 10"></path></g><g transform="translate(576.5876850571794 482.7557373046875) rotate(0 -51.44594701271518 58.185546875)"><path d="M-98 92.79 C-99.21 99.92, -98.9 106.64, -102.82 117.32" stroke="#1e1e1e" stroke-width="2.5" fill="none"></path></g><g transform="translate(576.5876850571794 482.7557373046875) rotate(0 -51.44594701271518 58.185546875)"><path d="M-83.36 101.63 C-88.64 106.32, -92.43 110.57, -102.82 117.32" stroke="#1e1e1e" stroke-width="2.5" fill="none"></path></g></g><mask></mask><g stroke-linecap="round" transform="translate(319.9375000000001 612.9627685546875) rotate(0 196.5078125 67.5)"><path d="M32 0 C127.13 2.17, 224.31 1.2, 361.02 0 C381.26 -2.23, 396.05 9.95, 393.02 32 C392.75 47.4, 390.84 64.23, 393.02 103 C390.78 124.97, 379.49 134.65, 361.02 135 C259.59 135.34, 162.24 135.32, 32 135 C12.11 132, 1.72 125.61, 0 103 C1.89 83.85, 1.87 72.43, 0 32 C-3.44 11.92, 9.2 -1.19, 32 0" stroke="none" stroke-width="0" fill="#b2f2bb"></path><path d="M32 0 C106.07 -1.26, 182 0.52, 361.02 0 M32 0 C104.51 -0.82, 177.46 -0.62, 361.02 0 M361.02 0 C384.32 -1.79, 394.01 10.59, 393.02 32 M361.02 0 C380.92 -0.61, 390.82 11.87, 393.02 32 M393.02 32 C392.32 50.05, 395.41 68.55, 393.02 103 M393.02 32 C392.9 60.8, 393.6 88.87, 393.02 103 M393.02 103 C394.39 124, 381.1 136.9, 361.02 135 M393.02 103 C391.38 122.77, 383.09 133.82, 361.02 135 M361.02 135 C269.17 135.48, 175.48 134.2, 32 135 M361.02 135 C293.83 133.74, 226.2 133.19, 32 135 M32 135 C11.51 134.85, 0.4 125.7, 0 103 M32 135 C8.6 136.46, 1.03 122.73, 0 103 M0 103 C-0.97 75.24, 1.04 47.9, 0 32 M0 103 C-0.29 85.46, 1.51 67.2, 0 32 M0 32 C1.75 11.96, 11.27 0.67, 32 0 M0 32 C0.96 9.77, 10.61 1.16, 32 0" stroke="#2f9e44" stroke-width="2" fill="none"></path></g><g transform="translate(324.9375000000001 630.4627685546875) rotate(0 188.9198760986328 50)"><text x="0" y="17.619999999999997" font-family="Excalifont, Xiaolai, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="start" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">         InferenceModel API</text><text x="0" y="42.62" font-family="Excalifont, Xiaolai, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="start" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic"> Defines</text><text x="0" y="67.62" font-family="Excalifont, Xiaolai, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="start" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic"> - the model/adapter to serve</text><text x="0" y="92.62" font-family="Excalifont, Xiaolai, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="start" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic"> - the serving objectives for the model</text></g><g stroke-linecap="round"><g transform="translate(466.70349253341556 449.71871084230554) rotate(0 -133.21484375 45.69419410734173)"><path d="M0.85 -1.12 C-25.83 1.77, -116.7 1.09, -161.23 16.46 C-205.76 31.83, -248.8 78.57, -266.33 91.1" stroke="#2f9e44" stroke-width="2.5" fill="none" stroke-dasharray="8 10"></path></g><g transform="translate(466.70349253341556 449.71871084230554) rotate(0 -133.21484375 45.69419410734173)"><path d="M-22.02 8.98 C-19.1 7.61, -11.91 4.81, 0.85 -1.12" stroke="#2f9e44" stroke-width="2.5" fill="none"></path></g><g transform="translate(466.70349253341556 449.71871084230554) rotate(0 -133.21484375 45.69419410734173)"><path d="M-23.16 -8.08 C-20.13 -5.94, -12.71 -5.22, 0.85 -1.12" stroke="#2f9e44" stroke-width="2.5" fill="none"></path></g></g><mask></mask><g transform="translate(277.3282506200807 477.1658935546875) rotate(0 89.76159312991925 25)"><text x="89.76159312991922" y="17.5" font-family="Comic Shanns, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Observability</text><text x="89.76159312991922" y="42.5" font-family="Comic Shanns, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Metrics Scraping</text></g><g stroke-linecap="round" transform="translate(10 530.4119873046875) rotate(0 85.671875 55)"><path d="M27.5 0 C57.96 0.23, 92.07 -2.16, 143.84 0 C161.98 -1.62, 171.53 10.07, 171.34 27.5 C172.01 46.69, 172.38 68.01, 171.34 82.5 C169.13 104.28, 159.03 113.05, 143.84 110 C96.78 106.99, 54.06 111.19, 27.5 110 C8.1 113.16, -3.25 101.52, 0 82.5 C3.07 64.43, 1.44 46.39, 0 27.5 C-1.67 6.06, 12.67 3.19, 27.5 0" stroke="none" stroke-width="0" fill="#ffec99"></path><path d="M27.5 0 C58.62 0.1, 86.75 -0.75, 143.84 0 M27.5 0 C66.17 1.24, 103.86 0.14, 143.84 0 M143.84 0 C160.73 1.75, 169.79 10.1, 171.34 27.5 M143.84 0 C162.38 2.15, 171.96 8.78, 171.34 27.5 M171.34 27.5 C170.44 50.01, 172.38 71.02, 171.34 82.5 M171.34 27.5 C172.51 49.03, 171.57 70.72, 171.34 82.5 M171.34 82.5 C171.08 100.74, 161.79 108.79, 143.84 110 M171.34 82.5 C169.18 99.21, 163.59 112.09, 143.84 110 M143.84 110 C100.17 110.08, 56.23 110.56, 27.5 110 M143.84 110 C97.23 108.17, 51.87 108.41, 27.5 110 M27.5 110 C8.79 111.81, -1.3 100.22, 0 82.5 M27.5 110 C11.27 110.65, -0.82 102.29, 0 82.5 M0 82.5 C1.49 66.6, -0.48 54.73, 0 27.5 M0 82.5 C-0.44 69.52, 0.7 54.3, 0 27.5 M0 27.5 C-1.19 9.05, 11.1 -1.12, 27.5 0 M0 27.5 C-1.28 8.1, 10.63 1.93, 27.5 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(33.09192307293415 560.4119873046875) rotate(0 62.57995192706585 25)"><text x="62.57995192706585" y="17.619999999999997" font-family="Excalifont, Xiaolai, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Observability</text><text x="62.57995192706585" y="42.62" font-family="Excalifont, Xiaolai, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Dashboards</text></g><g stroke-linecap="round" transform="translate(1188.15966796875 422.12890625) rotate(0 19.009765625 19.9765625)"><path d="M9.5 0 C17.2 -1.91, 23.8 -2.55, 28.51 0 C34.45 -2.93, 40.84 1.97, 38.02 9.5 C35.2 16.34, 40.22 20.84, 38.02 30.45 C40.35 33.57, 31.7 36.44, 28.51 39.95 C20.78 41.88, 17.07 42.29, 9.5 39.95 C3.11 38.32, 3.04 36.29, 0 30.45 C-1.02 21.62, 0.3 22.26, 0 9.5 C3.55 3.04, 4.96 -2.37, 9.5 0" stroke="none" stroke-width="0" fill="#ffec99"></path><path d="M9.5 0 C12.18 -0.35, 19.86 1.97, 28.51 0 M9.5 0 C14.27 -0.61, 17.82 -0.66, 28.51 0 M28.51 0 C34.98 1.32, 38.29 3.39, 38.02 9.5 M28.51 0 C34.94 -2.13, 36.52 2.08, 38.02 9.5 M38.02 9.5 C37.4 16.48, 36.07 22.88, 38.02 30.45 M38.02 9.5 C37.21 16.76, 37.8 23.99, 38.02 30.45 M38.02 30.45 C37.64 35.02, 33.72 40.39, 28.51 39.95 M38.02 30.45 C36.06 34.72, 37 37.72, 28.51 39.95 M28.51 39.95 C22.61 40.79, 14.26 41.35, 9.5 39.95 M28.51 39.95 C22.65 39.96, 14.96 39.51, 9.5 39.95 M9.5 39.95 C3.7 41.27, 0.1 35.19, 0 30.45 M9.5 39.95 C5.16 37.7, -1.03 36.06, 0 30.45 M0 30.45 C1.08 24.65, -0.89 20.64, 0 9.5 M0 30.45 C-0.05 22.97, 0.57 14.93, 0 9.5 M0 9.5 C1.06 3.51, 1.7 -1.87, 9.5 0 M0 9.5 C1.87 3.84, 3.92 -0.55, 9.5 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(1240.3881973112898 420.1015625) rotate(0 92.18748628246021 25)"><text x="92.18748628246026" y="17.619999999999997" font-family="Excalifont, Xiaolai, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Standard Gateway</text><text x="92.18748628246026" y="42.62" font-family="Excalifont, Xiaolai, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Elements</text></g><g stroke-linecap="round" transform="translate(1189.40771484375 494.0390625) rotate(0 19.009765625 19.9765625)"><path d="M9.5 0 C16.94 -3.63, 19.26 -2.83, 28.51 0 C36.94 1.41, 34.54 6.28, 38.02 9.5 C41.52 11.8, 36.14 16.95, 38.02 30.45 C40.04 37.07, 32.03 36.51, 28.51 39.95 C26.01 36.63, 16.57 40.91, 9.5 39.95 C4.3 43.02, -0.42 33.87, 0 30.45 C0.8 22.84, 0.86 14.53, 0 9.5 C0.66 5.06, -0.06 -0.13, 9.5 0" stroke="none" stroke-width="0" fill="#b2f2bb"></path><path d="M9.5 0 C14.98 1.17, 21.64 0.19, 28.51 0 M9.5 0 C13.88 0.31, 19.36 0.96, 28.51 0 M28.51 0 C35.95 -1.88, 37.85 4.17, 38.02 9.5 M28.51 0 C36.74 -1.67, 37.97 1.05, 38.02 9.5 M38.02 9.5 C36.58 16.46, 39.49 20.96, 38.02 30.45 M38.02 9.5 C38.5 16.62, 38.74 26.02, 38.02 30.45 M38.02 30.45 C36.7 37.35, 35.52 39.15, 28.51 39.95 M38.02 30.45 C36.32 38.33, 32.93 38.91, 28.51 39.95 M28.51 39.95 C21.83 40.67, 16.54 38.71, 9.5 39.95 M28.51 39.95 C24.82 38.9, 19.76 40.06, 9.5 39.95 M9.5 39.95 C3.91 41.69, -0.87 36.75, 0 30.45 M9.5 39.95 C1.02 40.41, 1.67 38.9, 0 30.45 M0 30.45 C0.31 24.1, -1.79 18.3, 0 9.5 M0 30.45 C-0.07 23.16, -0.08 13.24, 0 9.5 M0 9.5 C0.94 3.17, 1.28 1.06, 9.5 0 M0 9.5 C1.08 4.86, 5.08 -1.29, 9.5 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(1243.2768691862898 488.15234375) rotate(0 99.67576753246021 25)"><text x="99.67576753246021" y="17.619999999999997" font-family="Excalifont, Xiaolai, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Inference Extension</text><text x="99.67576753246021" y="42.62" font-family="Excalifont, Xiaolai, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Elements</text></g><g transform="translate(420.6089004362898 10) rotate(0 178.3730331574602 22.5)"><text x="178.3730331574602" y="31.716" font-family="Excalifont, Xiaolai, Segoe UI Emoji" font-size="36px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Inference Gateway</text></g></svg>
\ No newline at end of file
+<?xml version="1.0" standalone="no"?>
+<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
+<svg version="1.1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1162.7099609375 654.745849609375" width="1162.7099609375" height="654.745849609375"><!-- svg-source:excalidraw --><metadata></metadata><defs><style class="style-fonts">
+      @font-face { font-family: Excalifont; src: url(data:font/woff2;base64,d09GMgABAAAAAB24AA4AAAAANKAAAB1hAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhwbjgwcgXIGYACBHBEICs48ugALYgABNgIkA4FABCAFgxgHIBsPKSMDdYrTCofsLxO4w8gHN0BNbIcMe0A7YXjmsBvrktWKoiXr/EcoaXh+br33/9//i/qrIMZG5CgZvUhyjMiy0OZOwCbsulIw7xpFj/Mabe4M9CqshiJ/j5vb1298nWgqTH1N0xBCExTCEaTHC3jtZkcIqQD+f9KtPvm/g9ZOtfoqlRosv73qV1f0k3amfRKBwC6TBNvdE2DNTmUy+b+cpnTVXP/MCAILlmU7tBAvYREMhVPa12PvPcZX5yp2nCWhIclrnHUWgEeagg+/5m71pG2o6RMkEUIhktKXzN+vtXofr59GvHMiIZp0GolSlt2zt4vZv0VMdmji3TwkhtDMpB3tSF4akRRoxKuZSCmJdaim79ui6s9F1GUVzZyj4LB9RwACgIkAIOiYEAgKQfC6AKDT0sMu15QsIHt0dTQB2VtHdSOQvcpntgAZDABAPMp8PDtaANUKgJRj5LgHhwBUBuT0l+HHTPk+1MTkwPQdQBH8+vv/mNcUaPP0xwONozWd9wUdT/dJm772jjLXOyByuozDnG17eB9A6shfA2LNPi5R8vRZbutAbDHsnMP0P7+3+Z4606l2B+pDw8w3Bg3f9cr9YcDcq0BN1+tmvC3Tw3y0+g9Rx5DcDQCCVgVaiqIxas1tFOJ2/C7179zNjWHmAsD0oSA5DBUNHQsHF4mHT0BITEJKQcmdihc1DT/+AgTK7dSoICQ+MQCgRFigjCUMgKwkABgpAoEyAHyWI4CQImIQAlUJmYR4WESYi40DiAQkDQok4mQIYl37KZB2mdmk0zEEhQIWNkAHLkqFSCCYVyYaOKbIE8THJDEiBZazRw40Xh8Rr0+eftuMRo2e5oNDHOMRzBITFBUxxMEQDyMETjEiYjgJppFhChXGqTHOGxMCaCJGYBgAgCE2feYVRPlOERQQZevSleKEQX+GSaEJfBO83mvLgeCzo6qFOwxBDrJcdpEYgegxJiwyz+aDBCuA16oEDgGVtixUQAR3D9QkQKdsRMk19ug4IOac6ty6LFdMEICAI2NNoxAbQ9IkDLiygJlFy5pRUFtRHgCSj6OBd2FeAK/QrOabLQ2M8tC1/Jco61LjGdg5ioQ/dkI9PiHkogAQuMccMabvYtxwodg8+AkSIoqBhY1DKqcsubr2tIVQX52lSZwiXaao/JOcnjr56it/+OVzzx57+ujP96f7GNh9NXXIA6AdojIRINGOhYZwJMSWGgqRRVTNeDPkXNdAc9XOaiJCTw0Gh7hp7NnCJJNbp6sytkrpF+2Zkd4eLvAWR8ax/QSZOSaZQqRJwfMzSd38OSFkpL4w2ZZe6Ajzj86WamerP95I75M3ady68NtcYegBwOmCfvm2bUYahseDe15qpXi5OwFJXdo90fUch/KNN9oqb1iFOQGg2e35Lc2LYzR7l8XVPKLNZo2nxRGNvmSkPsYnGLdDPJT9IxBdJSUYjepQIW31//ORSpM7HXryVzE2srmAAQ1YyYQAf3NQuKGfk8P1/sEr+jHZpN4NI2mebL3HXOSoTUqSSbK4O8PjbUM1W/XP6sUoDsBncqNSVvqG7H+ma4YiFTp/SkLzNbpCPJWkmmYFLUlSgps3AV6CFOOF1lFeZr6xtaV5F8jYqKtUbsBFFxYvMgGRCi3LwmgCHAGATMCu5wL8psbxOI5p/aK7MMBgwgCsJZmf2syn2CRb1U9IAlrmDs0UxLL4oDjlS3Ou9h7vCQn1IpCjIDEHYJgTseJGhtQjjMswSI6p58MZjsfoaoKvZp5STRJa93PRjfkU9WmtZtOvGiGFqwnO/5kv5iPgJiM7c8eo4F4IG9991yrMdyiLJ+L89imrEuIgk3PmnUAWUGmmBEBXSG21mGsurYnxNMcxnVE1jl9QfjJGXP2k+tprdcyA0G2wALYDFdOboXLG+bTJXNt4Qw4KcFV6EKAZnP4GQFjjK/EKzTgqiB4ATFkBHj5sw4jcBNsn8bQJupeOrO/ybwszuvpjMlRufXTv7ooeBTvBTfMlGC5mH8/44SL3UZ53jXwtNnAchhgRcsxj/HjUADYH0JzOX2xlNOJaMUaSHEkgSZJO0R0j08sZ5T7NcJljx7FwORnKEASm2W5LsiDhEkjSFNpsAi66irBwsalCK7QwuqBrEj4GaVoqXdEPl2QO5spupfenlxYKd7nmtWzSpWtIKWagxwDcLmA1QcoortEJrRBjaFmC4xduQkTS9cskzFXKVY+Ekr/JYLC42aD1v8mHBgZgmmbbtCE9EGrj88w3uBZxrU6NI0kVtHC1KTBzerdJnT5VIa5iijHDwbKSE+9hTH6XecO6yM/ljOuY6Y8jxVA4JWomwKh9XhQd33jzoL8YW8mPzSV5AhJBBzvyNoBruhh3B7fS8rC+Kb6WoN9IyUgL70yqYdQRJShvlnN4lguTI+usMD10bwLumteTe3Nomi5s/5pxg+M2E8Gt5nyPEZnnRRmZAKsATCmr341SsimGfbpWxvLGxyrj03tqmBOrea8S7o2OqzHifnyjvelfqEf94xfoucKkKCOJggA0AzPheNcynPP2RJstPvrR88SJl1PvSkslYjcaAOuLT/pJK64L8zimKgwNxZvIH82iZ2IwIW0X5EgqVfiYPoZMwGzSMUsAp1DXlRqJ9ZNxw5uKRZpyozs6z72DuztKgKtI6zwI64+Qo93MVFBw2oITINZWF+5O95sffVRTmufQk4yUjorA7dlb8qRm2sAGd2W/BEUiaaU22nPCs6ExKIEZ1HVeIdu3/Rbt8jvHme4hVcfQgmqCsY4ZXsZV+Q07RLCgT2phwwQp4+nx0bB3QbbW8XIwO5gbLt2TlR1uRXwv++PzQmqyzWTD8eGHlfp8lk0Em0nJqBiP7hdTSX4FJgZr2QLTwfcbOWpfJfZspdl9cHqPV7NraTnwZB9kYJOY0FWYvp0Vqx4OPk8yo4WpII5M67JCJMw1t8icZUr9bOssX+lcoBEXIwOv4WB3Q9R8JjvKB8EwwwGAND/Gxv6Eubmn9i2kaGGIJHthvMTPF65n+H4cXWQfaUl+ccUXFrNPZ19ezT7NFOfm4iWzZWSdILTClRWU3dGiL67InaR0rEnM7ZXYFhE7HPZ13qYLcbP74/g4j2lzhtHysNis1y9Sj6SLMiBzVjOj1VmmP57FpMuvPydzSRYc2VnNFGEGfzxRGvXU2Bi3+Wr3Ul3RbIsLyiHvlfKTzXyqz49vIXVWgJAkoU/SnUEJAEwmjSBBir/pL7bLyVy11mGyQXtzdlKAJVlcyVU7pV8mDCZHQJLzJHp+y6FdfjlX+/nei+Q4jmUhC4IcIttVOBuWLu9ku/MB0TAX+RWi5yRd06IbOjoWjIfxJK7Cf7oyIrJIjSeOqqiIrncJi1VXIJRKc7K5d7Uccanl7ZE3lkj+kl/MG+m6Fq33j3GI80pp/ZyEed5HfbwxmX8uzq7/usUNvuHELZkdfhK41wCetdF8+VlONDI8rA0OWVGPeFIJmNwuTNWVae50RF4T341z3sd6tl9kWW8gNLEerM5qzb8s9vn0Et8TIVUWFm6i0GOsCLJuV0GA+lQlX3QL9pDi4/7uo+GxuqUnc06fa6vGrHy77ne769kgIKlK/pp9WQwlSCAZKl9XjvOZoCNColsiMIClNxuH2DFaI9STZNIkmewXv3UjTj2VRK+PlRIIYlXgjQ3K/T4dH+ZwaCl50RRdIQAI6g/+rq9PtahFt5pbSGVn8xUDGAWPm4rzYfJ9u0dsKUEDJLAug9sVcIiTn8G0bZtYeXmL+9CID1++f/eb8zXa7JNpfqokmGAYyINf1UKh0eOP1mvB0Y1q8oeeD1ucD7mvcK+UlSeKt24cLyoVPsP1HAf+6rBUp2aIy9V6utEva3yBHVonXzJ4xODar3eP7336cHcoCBhIMiKlaenaBGAAPWVgMF2z+yXfVhdi3K8WGRxitARRb3GH3j/E7e3wCVIGd0iakxqdwifx8T8Lq3CllZ1fpyQfmqMgAHDxRlbOC1G7l/bmS/MK/b2m2fFoKiQa5IiI1L7pAv1q7dO6O64OFczw5exJXP1kNjEAPWIgFyu+pIqYw9BgAGq+zkhnSzneg0ny8jMYLckoIuTblRxmcF1Xz75Nwss+F1l0aS/3KW+jF52vMhF6cxhaSM0UPtv1fQdDbIV4OCGgvZxNdkpQlzYZ3Z+3Q+G5WHvSPscG31JyHg+8FCPlO86G0+/QaPruDOuIPBw70V7YBCMBILfdrsvgIcID4eXL6gnPFze83XIazWwpdoRgEhH3N2g92hokf6osDzaElxVUro4f8H4+yKfZCelwIsjvcUd6IUMormguH+cvmWvk98hhn8szjNQs7jpmIyGqMze478Rgb7A1jyA8EwYFA8BN1D+elA5AFCiI6uxeqC3p5CbAW9D/tsmK6K42Iz69H0pZ2WyErStc6yKFhzKUevXgls5xv7Ph1XK54zjU05zW8EwDXAEYtNk+ME1X9gv/p74KO/ColO9Fb2YcG9kYIev1ISUXYRRENr3PMI6Nxj1SQ3TBT2qf87sv43jy6fwqrBQp49eL5vteWrP23iA1RI8PsYuXa5UJuze3qbjqdbjcZ3AwQnqIsOm3QyEQULPBsZFVg0DlpLxY0MWS+P/LmN5kVWXxk7FRzA43F3+QbUgLWuoBp40br/9m3/Akm55M9iR+6krbaNBoyJLueDReYM8xzyxt+ijBspJmZJWZ9z8e5p5J+Za74dzby5lLQes48RjnU6FtBVTvaJg6JN9NGMmt7jntOSs+M78CJPfWR1KAt9TD1snwYqW5ybNSuoGWpwx5fySrFtRfIre8qxTbH4oFT4eJO2W79lSM5U/VLBkUlfn0f2UGQQeOfS4pfr8X21kygMjMYNXn+cpI0t7xYOgwI+PZleWaXP+YWdYVTWd0BT9qw6hAGmis+U+59MtSrufuMX8Fh5O/tBZfp0nNi0/M5HqrNU7f4MV0ng/zRcHHZizMLRvJQk+/c7qDNqIMEZ+MqflG41rDj9WEJj1cL8zj+DahVtiLLgDScNaJv2c6mBMK+oZsuM7cJ9osYDDv4mEfV1Ud5B7y4jsvluQ+mbX70Y4gi+m5oAh2w9a2YcEngKjneLnhECIVss1shDcw1quBDPjOb9rwVNJBoWbxt5zfjz/G2zyMnVePV2mDQW7wc0/Tz9r8tu3ABNbDuGW+Ex8as3cI6wsHjQUGRW2nB47M5mLIXU/Ls5bFPgu/Ske+kNWZSC6AF49b6rJWFk+Q9KJ//n9iKdiU5owwtCiGAOrC16F8tjW7Szo3Y0myBDg871M/6qm6dBQZdra7jh3DKeSsFwW1dCtCF1PP2GhnIfBKETt9jkbfkDP2PjN59Hmz+zKyrS6rl/6j0uu22xeul527Y3CvIldx1HOs/87fSa9JCONZswlKRmhSbmVPYYuCMM/4FBoSYAFm5DtakrxpmZ+CXUzBdHa+D18dT+RTTVQiP7s0/A5Fb/amneTaJoR/Hjo+dOZwj2yXZsaGjZu+pyRGje8J1Yy0YlbxPpPo+Otqoratxi8QLVGYOcP04VHT2He1MyZdi7Crs8Tpco3L68OlduxSebsecXfi3KpZOCUNzeJc+iNh3sH+NZyJsvP5e5c0Z4Bsv/Lx+6QyVe/XpygEs5pmpFoqdM2u2sbZDfbDcRlqvN38m4C+Nw0hZn76otd/4JDMXFGM2fWZZjJyhbDFoTJGjYFSrJJiACfUbp+2QW3f8mxiMAvNGjR7LKaT9d6OJKrvc5AvjVowUCvNCjpEfmThtNt/ZVPN9Jls8nhqBDUioHxxihBwc9pGdgTuzgr9sf+2xHHTdblWc/QezkdlYSjXxEWhGXZ7/N1G1eMY8pWziUXCwTOR7xK+K8onOwQULaqlCCvcNwB/8IxL62GPVFMH7Fjwvw6tuiByrjApNKAkkIqXwj83BjH4e1lJB/7Je+RXrODT8lv+UnvCAjx3l2ulayEg5TWLaGhjMPjaPnH3myTnU927/PLNQUTOTED4oUvMYktpS2eeyjAjJAbSODlyZ9xulRV87HkevRJWJly6oWt3WrJXJlVoLjLxhz6/yyAu2/q+RBaoNQm/oB3vuucWbsTzRG0igHUM7Obus5yi6SEY6SYao3aKMIotFsTC4qFSbqpPT0CW0l4xt9sfFouWDOWLFLjJHKyHwdT1XtJklb2mODXI5Z6Ux/a2fF8+NVcc+r3cPBGQm9bfJdO2eTfCA+/kDKcGCrcnpnqH7KvtWjL6ENTwi4OgkV6QJF+T8huS6ftRl04XKWOdyN6WjW/Dm/kV6rUB1hLhsWSQa31297ykqtWoXh0uSYkVAw8Wnpg8gICRPl4neVf/eGy2eBlgAGtG3BFSPRiyFzNMRXrdBkxZBUKXAynSiaSpDr5b6MUNnvLeGArffeSth0m0v/o3ZlpCs5t95sdxrm4fbndq4Xz0w9srl9hAx+AL4+n1FT16BqW/BymCTn6d9vCCiBOpCjp+emuye2d/ZGLaspLHhrjmajAiNYVXwzQKHzsfzC7SOs3cdLio3W2620vIiVO+qPDbmCkuIvSU6mXorjYupY1uh1NJWABu9XSnws3ctt1tzP1MPkV/V0/5i8gFP1LptC17UMli1Sfcc2ADQ5Ow0sFXRtVj1aLiereAJxVmc8TzJ+ymSKkzwupR9q5D87bWmnkqd/XOAQlv5Tefe5G1KdrZ9Ht/JNqe/X5Wnb6JhcBwiIM7r8VC1sxIqu9AzegaH6ldbtXZvZKjaHd/fGLKrcgwz+/zLk/DerW6pJTV/33zDTiD3zVIvFc3XEvPFvpDf8tHgVWqATsnnSDrt+i+LSpcI04Tqwolq9np2EtACag4ZB1TR7wjMviY2rOMxeRVuKDajs4lIpKw8KG8Y21YvQzQGVU2v6RgWhHMXIhnyYX/sYQNP5Mb6Yp7FE6vgrMKdS5R/+Fm3+Ie7FTp2pZvTIkIzc/hjs/7ajyLtD36a0egOp32hfVm9jdkAShijcoyHlRyf3qBW1vWdotKff7Qj3vWTCRqxkfRC4+jL6z/c+C+b8QniDF238Owl6nwaCOlI4KQzC0GB3ih5ycPP8cz4gla+lvz0phTSb4JKIF2EbhWVJXG45YgcR/ec8k3RgCnhtmodk9V68tDchVyfZLb35GEoPk/aUsLx+YYG4/Y13bCU/w0NzB+vXA3YqNlVYcDn5yz6pqGhIwUyYPK0faMRG8sIx8VCcObbp5nH6xIeYu/dPwnU4dGJbjT4xRlpGNGP7NXwV9zKJ2PDXQlkvlL+Jp2oeCbsNrdYIQ+8Ky322+ekGdaMu9gvnCxlzu3P+YYbBRJM1ZIIo51DnU4kfkH3nr3KY/SFDpy+//ys+pdmXC2Niayg5VGtV/40rGA//TixoQA8FAoNwl3eYuls6kUqk6xmEH8nAoEs/nWqILmrXppWrmY94l58KkKBZPdtNQSHpaBrJkRGtsbY6dH5tU9TYuyAQpDy6DMOWlxvn7QaFWZY2Md79Z8TP6k9jAKSt2ps7ejB3vUQK7blu5ez57jUbX158A/wH0h1ftSQIeYY/rjE7/GCEcdi3mFIe5TARRjhYRrkWQeWoiI2K/8+BSdcaBsGILp7w/ZYuxhIlFuLWhzhYtEnnaBe95ORZ4/jOJZ2sHa03eeKz3oB7rL+aTTtV7fFzbPqwtGk7lkr+TbfYCllBNOIo+QKf/0PveDsLn1YhBVFQKREL8GcHiHwRoQWrrBKXIPzzK8OypRjzfPlHC7oYnvdzY1LSw/zZ7xkYi9LI8FzTPC3E+s9HnCDmcVse3vs5/d3hIeckUiSv+7AByUX6+0rDJofzvAJPFaFLc+OzPTOfYW+Gc8vqzAoTzzwcQiC9s4icz2Ka9S+X8IESqOFIdeCbSM975BG3151C5CGYk2QSt9jfakmoKk4/WaQi+4xw6W8sXjN+FCCYugM76SIYzvA7tECndkMQW10VlBrI+I9Q6IWjyO7GXNGwfzwL4y9Q7kYYyIOVBYGrnt5d08vw8fC6I6+fGZU9eOrEsapebD3C+UW72Zc85kTTNYEbQAqaSFZprnktvTt4en/DuE/JyYy+hEQsGMlPDSleAYQpfyamp5hiLvw3axCqd6GqIiXfzgtPbd5k/dHYz1SkoqSuOa7nmMNQSwo6Dp6GWvnFavSb3n3ob+xqNutmxeBnoayv7yqAM/Y/71nzteYvUN/vWHDb6bEpP6EsfDrR8kNi9UPK5u03ok++aIHDorw7CrFqqyggPdz31MZg2YqT4BDEhvvne0EWzraGubzPmM9LHRD1JBjQy6imjmxffO8y0sYmiWm9b+mrnov5YE1aQrYjtGQ3o8iYaYqsHNMzZ8HicXOuzWrMOaJ4xkzs6F7HlgS8UfyScKmQWsTjT9XJr4BOLb8Qksz5zrTsnQzSN/R7rDb+amEHw+zkCIVloPcjxamkDV/QK+uT6VY3wN5RgW9xKxYq0BCNMxYwis9RpimwWUERVTHK5iwb27xPtXFXaXCig02Wq7gHnItnA5na9ZATpErFXRsfunJuLZqAMVIWZgsPAva3Rhfyv3jegZiq+HImcH7Ug1ZssMkdaKC3K8+fcidSYF8UTvhx4zz7YLXcsoGfeOz3p59dKyp/8fy76fF2UsuUOQ7Z6LFgGBbqJQc+GkhjHfW2DPMZ25RlOOVPx02xTNz2OO6mo/rBPtC/ZB22o0oZMjhon974Gl5U+t3BFxsZWjo6cfkb2pjtA+dB4zvG2ZU7/Ahs0SHB6duJGhL5sfleps91gEJpk4EWNY/sfiaokLSZjf5e6x72hPZPihAQm0MLJZePATvip0qQ31CEbUmpgQ1w8VvmM05adJNYokX913HxAoVraX7RkS4K3D4lm2B694+eAmQY59dF5XLHUemSNWLgUq6AnUzscgDDVJG3t7P9zx8O4rlSR313bZlcJLv2Xim0Y8sNEUDnFbZ5hrzrIUr4q6YThAVnmatAacAF+yUQ/GReNU3cZlreGxcBuCe7PIABWZu4SYTWYVKxdaKev9TbnJho6aO96ow+SZjAfwlOeCq7eFZh6N/gXuzL5fru8/bGuPSFIZE6zfTwnnyF0xdcAevzt9SyNWn9ydXmPUrcu/X51zeyhINCeHirUPcfvei8ss16O7ZrqM0ab1GxYKL3NJl4eFNwOiiL95f01hvN4iFNl1ZJdHxaXwF4Gy56MZ3evW5hv/4tIR0bkVpmzJTyHgZqfHeo0nsyR6zfvxgxeuWaM9pZWX5YVNhnK6XbzEl3y6xIYH3EPL2IG2H+dtvn0191V0ei1mjluduUCiUKXOS2iP+A+J0bRJhhM+CIuKoSV4yejAdML1TNMZ0X5RqOnxU80xbe32vCHvRkJXfsHlR+rzKshbNOI9VsvMPdFjuQy0kjWb/j9dtGpy7xe8YSn9v1+YfCWgAA808uV5eMUqEtw6frwyGmXkJi8jfuDw3iZ71KCN/F+RL/SzGdbufsiRcu55hCT3+gQmBVKtQrqTIxQ6Fr//0wzGIPjsRn8U4tnbPcfSX02PEXUeH4BNPd1I5+ZOdRJqVg+389VHunEL6O/4ssqJZ/6v+3GEn9F/+9gjGYAgqMbWsc8gpZy4x1QG+gcA8VSXvxlMeGfP3/OnezMf+wuL/i80eE9kGgT+9Q07eBq7v1e1/9d6utpVwTID8FfgDPKdrfiFwgqGtA9AvogXE7AaE3YUTr/Ok1vu4k/9DUHTgNfHDIG28sHFE5eedwEi5xmPivklJZ/7nxcgoCiRHuGOfR9IKMiUiDaKiw2iy6NNKio5n9kmNHe++YGphcYCrE4IKh0nnrA5QKH4DftNaaRaV+GhyH/7MXqwFKEACp5oAIAmF65ySOBzOYJtWI7y1yPHqFXIKRKoAZ/uFQCLuSqVa1KvRqsWMwVxqVZrVk5OuQ45sbgOnVpmWtZDqGBaJLFs+pwubeqGVC4Kh7Aj+M5QWM9R/Ky74FHTWkmzTDZpwzpJNad1a8F0JG26NFBvxNU9CXwNwO9IwmgVRJyhQtvSg0qqdAzJHMF5xKAJm3vQuc4YVB9RNcyeQpVRJAoCmn6DAgAA); }
+      @font-face { font-family: Comic Shanns; src: url(data:font/woff2;base64,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); }</style></defs><rect x="0" y="0" width="1162.7099609375" height="654.745849609375" fill="#ffffff"></rect><g stroke-linecap="round" transform="translate(68.21875 154.823974609375) rotate(0 57.140625 41.75)"><path d="M20.88 0 C40.07 -3.44, 67.81 3.23, 93.41 0 C108.58 -1.7, 113.64 4.43, 114.28 20.88 C110.37 31.89, 114.48 43.19, 114.28 62.63 C111.97 77.06, 110.19 79.94, 93.41 83.5 C76.29 85.88, 58.8 83.04, 20.88 83.5 C5.01 86.19, 3.57 75.81, 0 62.63 C2.8 49.69, 3.12 33.02, 0 20.88 C0.67 5.24, 5.02 3.06, 20.88 0" stroke="none" stroke-width="0" fill="#ffec99"></path><path d="M20.88 0 C38.48 1.33, 55.66 1.28, 93.41 0 M20.88 0 C44.6 -0.2, 69.08 0.17, 93.41 0 M93.41 0 C108.93 -0.66, 114.81 6.61, 114.28 20.88 M93.41 0 C108.53 1.09, 112.71 7.42, 114.28 20.88 M114.28 20.88 C112.83 36.64, 115.76 49.99, 114.28 62.63 M114.28 20.88 C113.33 33.37, 113.92 45.86, 114.28 62.63 M114.28 62.63 C115.09 77.36, 107.86 81.53, 93.41 83.5 M114.28 62.63 C116.05 77.36, 107.29 85.79, 93.41 83.5 M93.41 83.5 C67.37 84.88, 43.52 83.69, 20.88 83.5 M93.41 83.5 C64.39 82.39, 36.31 83.79, 20.88 83.5 M20.88 83.5 C7.14 83.77, 0.22 76.33, 0 62.63 M20.88 83.5 C7.36 81.6, 0.6 75.33, 0 62.63 M0 62.63 C-1.85 48.15, 1.08 32.11, 0 20.88 M0 62.63 C0.19 51.66, -0.9 39.69, 0 20.88 M0 20.88 C1.08 6.53, 5.03 -0.9, 20.88 0 M0 20.88 C0.95 6.51, 4.8 2.2, 20.88 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g stroke-linecap="round" transform="translate(85.1171875 141.370849609375) rotate(0 57.140625 41.75)"><path d="M20.88 0 C36.65 0.88, 53.33 -3.33, 93.41 0 C106.92 -1.99, 112.95 8.68, 114.28 20.88 C113.65 31.24, 112.8 40.44, 114.28 62.63 C112.86 74.18, 104.02 84.03, 93.41 83.5 C75.64 78.75, 55.15 82.05, 20.88 83.5 C6.55 81.54, 0.98 74.7, 0 62.63 C-1.9 48.94, -3.45 40.75, 0 20.88 C2.95 9.1, 6.34 -1.4, 20.88 0" stroke="none" stroke-width="0" fill="#ffec99"></path><path d="M20.88 0 C44.26 1.44, 63.6 0.29, 93.41 0 M20.88 0 C40.78 -0.21, 59.6 0.09, 93.41 0 M93.41 0 C105.83 0.69, 115.59 5.93, 114.28 20.88 M93.41 0 C107.36 -0.58, 116.13 6.78, 114.28 20.88 M114.28 20.88 C115.72 29.87, 113.43 41.74, 114.28 62.63 M114.28 20.88 C115.3 30.82, 114.91 42.41, 114.28 62.63 M114.28 62.63 C112.36 76.73, 105.74 83.18, 93.41 83.5 M114.28 62.63 C112.48 74.85, 108.46 83.79, 93.41 83.5 M93.41 83.5 C67.59 85.09, 44.24 83.88, 20.88 83.5 M93.41 83.5 C77.17 82.58, 58.4 83.6, 20.88 83.5 M20.88 83.5 C8.45 84.11, 0.55 76.75, 0 62.63 M20.88 83.5 C7.06 81.8, 0.99 74.25, 0 62.63 M0 62.63 C-1.18 51.77, 0.62 41.51, 0 20.88 M0 62.63 C0.34 46.95, -0.32 30.63, 0 20.88 M0 20.88 C-0.1 6.15, 6.07 -1.37, 20.88 0 M0 20.88 C0 7.01, 8.25 -0.1, 20.88 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g stroke-linecap="round" transform="translate(316.1015625 509.745849609375) rotate(0 186.5 67.5)"><path d="M32 0 C140.02 -4.99, 249.26 -6.46, 341 0 C361.27 3.21, 371.54 8.64, 373 32 C374.4 45.04, 373.03 60.55, 373 103 C370.4 126.18, 365.21 132.91, 341 135 C225.99 138.51, 106.01 138.75, 32 135 C11.12 135.2, 3.06 121.49, 0 103 C2.24 85.97, -1.84 69.24, 0 32 C-0.72 14.27, 9.6 1.86, 32 0" stroke="none" stroke-width="0" fill="#b2f2bb"></path><path d="M32 0 C147.2 2.31, 263.84 0.13, 341 0 M32 0 C152.79 -1.4, 273.68 -0.26, 341 0 M341 0 C363.24 1.89, 371.63 8.68, 373 32 M341 0 C361.89 1.32, 374.96 8.55, 373 32 M373 32 C373.51 49.51, 371.4 69.4, 373 103 M373 32 C371.89 53.55, 372.75 74.94, 373 103 M373 103 C372.91 124.05, 363.84 135.32, 341 135 M373 103 C371.37 125.1, 364.41 133.43, 341 135 M341 135 C243.35 136, 143.9 136.22, 32 135 M341 135 C252.05 134.58, 161.61 134.64, 32 135 M32 135 C9.49 136.67, -1.21 123.37, 0 103 M32 135 C12 134.37, -0.77 125.37, 0 103 M0 103 C0.14 78.38, -1.66 53.05, 0 32 M0 103 C-1 85.17, -0.34 65.21, 0 32 M0 32 C0.75 11.29, 10.4 -0.03, 32 0 M0 32 C-2.27 12.93, 10.36 -0.31, 32 0" stroke="#2f9e44" stroke-width="2" fill="none"></path></g><g stroke-linecap="round" transform="translate(330.0703124999999 496.929443359375) rotate(0 186.5 67.5)"><path d="M32 0 C99.75 -0.07, 161.54 3.63, 341 0 C363.88 -2.2, 374.83 7.14, 373 32 C369.67 56.51, 369.73 80.69, 373 103 C371.86 121.04, 365.88 135.99, 341 135 C256.53 132.69, 168.68 133, 32 135 C10.03 134.3, -0.87 127.4, 0 103 C1.64 86.22, 3 67.78, 0 32 C1.84 9.2, 14.11 0.61, 32 0" stroke="none" stroke-width="0" fill="#b2f2bb"></path><path d="M32 0 C115.52 1.4, 198.1 0.3, 341 0 M32 0 C146.69 2.05, 260.35 1.75, 341 0 M341 0 C364.02 1.02, 374.31 9.03, 373 32 M341 0 C363.28 1.65, 374.07 10.28, 373 32 M373 32 C373.05 49.43, 374.13 67.61, 373 103 M373 32 C373.56 53.48, 373.1 74.79, 373 103 M373 103 C371.81 123.87, 362.02 136.69, 341 135 M373 103 C371.99 126.23, 362.36 135.56, 341 135 M341 135 C247.91 132.51, 156.62 132.69, 32 135 M341 135 C261.96 134.72, 182.4 134.98, 32 135 M32 135 C11.59 136.42, 0.19 124.28, 0 103 M32 135 C8.96 137.09, -1.24 125.29, 0 103 M0 103 C0.44 84.06, -1.82 68.4, 0 32 M0 103 C1.27 79.48, 0.98 56.36, 0 32 M0 32 C0.16 12.48, 10.16 0.85, 32 0 M0 32 C-0.57 10.58, 9.84 0.71, 32 0" stroke="#2f9e44" stroke-width="2" fill="none"></path></g><g stroke-linecap="round" transform="translate(477.3994140625 247.83984375) rotate(0 110.28125 47.6328125)"><path d="M23.82 0 C71.25 1.44, 121.04 -1.23, 196.75 0 C215.34 2.43, 217.56 10.86, 220.56 23.82 C220.43 39.4, 220.37 62.4, 220.56 71.45 C220.84 86.46, 210.56 97.66, 196.75 95.27 C137.78 100.62, 81.78 96.46, 23.82 95.27 C10.36 97.47, -2.73 87.07, 0 71.45 C-2.96 52.81, 0.19 35.84, 0 23.82 C0.08 10.72, 6.94 1.73, 23.82 0" stroke="none" stroke-width="0" fill="#b2f2bb"></path><path d="M23.82 0 C67.79 -0.23, 115.28 2.19, 196.75 0 M23.82 0 C72.95 0.25, 121.65 -0.72, 196.75 0 M196.75 0 C211.99 -0.05, 222.44 6.28, 220.56 23.82 M196.75 0 C213.5 0.36, 222.09 8.09, 220.56 23.82 M220.56 23.82 C221.31 37.36, 220.25 56.1, 220.56 71.45 M220.56 23.82 C219.9 38.62, 220.14 51.22, 220.56 71.45 M220.56 71.45 C219.03 87.42, 210.82 93.29, 196.75 95.27 M220.56 71.45 C219.84 88.77, 212.6 93.46, 196.75 95.27 M196.75 95.27 C140.64 96.38, 87.94 95, 23.82 95.27 M196.75 95.27 C160.68 94.58, 125.89 94.95, 23.82 95.27 M23.82 95.27 C8.02 95.61, -0.4 87.6, 0 71.45 M23.82 95.27 C6.83 96.97, 0.75 88.96, 0 71.45 M0 71.45 C0.08 56.74, -0.66 41.56, 0 23.82 M0 71.45 C-0.02 54.9, -0.79 39.32, 0 23.82 M0 23.82 C-1.09 9.87, 7.36 -1.79, 23.82 0 M0 23.82 C-0.48 8.17, 9.74 0.58, 23.82 0" stroke="#2f9e44" stroke-width="2" fill="none"></path></g><g transform="translate(511.02071380615234 270.47265625) rotate(0 76.65995025634766 25)"><text x="76.65995025634766" y="17.619999999999997" font-family="Excalifont, Xiaolai, sans-serif, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Endpoint Picker</text><text x="76.65995025634766" y="42.62" font-family="Excalifont, Xiaolai, sans-serif, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Service</text></g><g stroke-linecap="round" transform="translate(102.2177734375 127.552734375) rotate(0 57.140625 41.75)"><path d="M20.88 0 C46.28 -0.94, 80.79 0.72, 93.41 0 C104.19 2.4, 117.1 10.26, 114.28 20.88 C117.53 35.09, 113.39 42.67, 114.28 62.63 C113.78 79.14, 109.16 85.65, 93.41 83.5 C76.92 81.02, 54.36 82.46, 20.88 83.5 C4.7 83.19, 3 78.05, 0 62.63 C1.68 42.54, -0.05 30.88, 0 20.88 C-3.48 6.36, 5.12 0.21, 20.88 0" stroke="none" stroke-width="0" fill="#ffec99"></path><path d="M20.88 0 C46.71 1.43, 72.02 0.45, 93.41 0 M20.88 0 C39.7 -0.76, 56.01 0.02, 93.41 0 M93.41 0 C107.38 -0.04, 112.83 5.4, 114.28 20.88 M93.41 0 C105.18 -1.7, 112.43 9.16, 114.28 20.88 M114.28 20.88 C114.06 31.68, 115.46 44.3, 114.28 62.63 M114.28 20.88 C114.08 36.13, 114.93 52.01, 114.28 62.63 M114.28 62.63 C114.53 77.24, 106.51 82.14, 93.41 83.5 M114.28 62.63 C113.73 75.85, 107.43 85.02, 93.41 83.5 M93.41 83.5 C73.07 83.17, 56.48 82.82, 20.88 83.5 M93.41 83.5 C73.98 83.5, 55.11 83.83, 20.88 83.5 M20.88 83.5 C8.61 83.03, 0.17 77.43, 0 62.63 M20.88 83.5 C7.32 83.09, -1.65 74.76, 0 62.63 M0 62.63 C1.3 47.78, -0.48 30.94, 0 20.88 M0 62.63 C-0.89 52.85, -0.46 41.69, 0 20.88 M0 20.88 C-1.45 5.25, 8.55 1.64, 20.88 0 M0 20.88 C0.61 4.94, 6.82 -1.54, 20.88 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(128.9084243774414 144.302734375) rotate(0 30.449974060058594 25)"><text x="30.449974060058594" y="17.619999999999997" font-family="Excalifont, Xiaolai, sans-serif, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Model</text><text x="30.449974060058594" y="42.62" font-family="Excalifont, Xiaolai, sans-serif, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Server</text></g><g stroke-linecap="round" transform="translate(470.3876953125 10) rotate(0 110.28125 47.6328125)"><path d="M23.82 0 C69.04 -0.44, 115.41 -2.92, 196.75 0 C211.63 1.35, 222.48 11.39, 220.56 23.82 C220.18 31.29, 219.35 45.04, 220.56 71.45 C222.5 85.21, 210.82 94.98, 196.75 95.27 C148.05 99.11, 107.88 97.98, 23.82 95.27 C8.15 91.93, -0.33 86.03, 0 71.45 C-0.17 62.04, 1.9 51.19, 0 23.82 C-1.35 11.01, 11.48 -1.99, 23.82 0" stroke="none" stroke-width="0" fill="#ffec99"></path><path d="M23.82 0 C80.54 1.26, 135.33 -1.37, 196.75 0 M23.82 0 C83.27 0.83, 144.24 0.1, 196.75 0 M196.75 0 C212.38 -1.16, 222.02 7.56, 220.56 23.82 M196.75 0 C210.97 -0.21, 218.68 7.7, 220.56 23.82 M220.56 23.82 C220.3 39.34, 220.95 54.89, 220.56 71.45 M220.56 23.82 C221.75 40.07, 221.52 55.58, 220.56 71.45 M220.56 71.45 C219.87 87.55, 213.15 94.55, 196.75 95.27 M220.56 71.45 C220.64 87.7, 212.04 93.53, 196.75 95.27 M196.75 95.27 C150.02 97.34, 100.19 98.1, 23.82 95.27 M196.75 95.27 C159.18 95.87, 122.12 97.55, 23.82 95.27 M23.82 95.27 C7.17 96.38, 0 86.34, 0 71.45 M23.82 95.27 C9.37 95.14, -1.77 87.34, 0 71.45 M0 71.45 C1.78 54.35, -0.91 36.58, 0 23.82 M0 71.45 C0.11 52.85, -0.74 36.39, 0 23.82 M0 23.82 C1.23 8.88, 8.75 -0.46, 23.82 0 M0 23.82 C-2.1 6.39, 6.03 -2.19, 23.82 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(481.6190081834793 45.1328125) rotate(0 99.04993712902069 12.5)"><text x="99.04993712902069" y="17.619999999999997" font-family="Excalifont, Xiaolai, sans-serif, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">L7 Proxy / Gateway</text></g><g stroke-linecap="round"><g transform="translate(583.2613405725397 110.44140625) rotate(0 -0.07744763001983301 69.37890625)"><path d="M-1.19 0.76 C-0.89 23.95, 0.52 115.91, 0.88 139.07" stroke="#2f9e44" stroke-width="2.5" fill="none" stroke-dasharray="8 10"></path></g><g transform="translate(583.2613405725397 110.44140625) rotate(0 -0.07744763001983301 69.37890625)"><path d="M-8.03 115.71 C-4.77 122.76, -3.52 128.17, 0.88 139.07" stroke="#2f9e44" stroke-width="2.5" fill="none"></path></g><g transform="translate(583.2613405725397 110.44140625) rotate(0 -0.07744763001983301 69.37890625)"><path d="M9.07 115.45 C8.49 122.39, 5.9 127.85, 0.88 139.07" stroke="#2f9e44" stroke-width="2.5" fill="none"></path></g></g><mask></mask><g stroke-linecap="round" transform="translate(768.5498046874999 490.203125) rotate(0 192.08007812500006 67.5)"><path d="M32 0 C158.04 4.59, 289.17 2.11, 352.16 0 C374.5 2.14, 385.78 14.17, 384.16 32 C380.34 58.45, 384.72 90.14, 384.16 103 C384.95 121.39, 372.03 134.63, 352.16 135 C283.11 135.67, 217.71 136.84, 32 135 C10.4 134.18, -0.97 122.58, 0 103 C-2.31 73.54, 2.48 47.77, 0 32 C-0.77 8.01, 9.96 -0.29, 32 0" stroke="none" stroke-width="0" fill="#b2f2bb"></path><path d="M32 0 C125.72 -0.2, 220.61 0.88, 352.16 0 M32 0 C100.58 -2.23, 168.62 -2.12, 352.16 0 M352.16 0 C371.8 -0.78, 382.64 12.44, 384.16 32 M352.16 0 C373.2 1.21, 384.15 9.66, 384.16 32 M384.16 32 C383.15 60.37, 385.37 87.56, 384.16 103 M384.16 32 C384.71 58, 384.05 83.35, 384.16 103 M384.16 103 C384.41 125.28, 373.49 136.81, 352.16 135 M384.16 103 C385.42 122.08, 373.35 135.39, 352.16 135 M352.16 135 C252.85 132.7, 152.26 134.2, 32 135 M352.16 135 C277.01 137.27, 202.72 136.84, 32 135 M32 135 C9.75 134.61, 0.37 123.55, 0 103 M32 135 C10.58 134.83, 0.13 123.49, 0 103 M0 103 C-0.39 76.36, -0.28 46.02, 0 32 M0 103 C0.19 85.91, -1.05 68.06, 0 32 M0 32 C1.64 10.1, 11.49 -1.64, 32 0 M0 32 C-0.34 12.02, 8.7 -1.11, 32 0" stroke="#2f9e44" stroke-width="2" fill="none"></path></g><g transform="translate(773.5498046874999 507.703125) rotate(0 186.12994003295904 50)"><text x="0" y="17.619999999999997" font-family="Excalifont, Xiaolai, sans-serif, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="start" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">            InferencePool API</text><text x="0" y="42.62" font-family="Excalifont, Xiaolai, sans-serif, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="start" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic"> Selects</text><text x="0" y="67.62" font-family="Excalifont, Xiaolai, sans-serif, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="start" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic"> - the model servers (the endpoints)</text><text x="0" y="92.62" font-family="Excalifont, Xiaolai, sans-serif, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="start" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic"> - the endpoint picker service</text></g><g stroke-linecap="round"><g transform="translate(462.5791015625 281.07421875) rotate(0 -121.759765625 -29.005859375)"><path d="M-0.98 0.09 C-24.45 -1.97, -100.69 -2.65, -141.04 -12.38 C-181.39 -22.1, -225.85 -50.8, -243.06 -58.27" stroke="#2f9e44" stroke-width="2.5" fill="none" stroke-dasharray="8 10"></path></g><g transform="translate(462.5791015625 281.07421875) rotate(0 -121.759765625 -29.005859375)"><path d="M-218.27 -55.08 C-225.22 -56.5, -232.35 -56.35, -243.06 -58.27" stroke="#2f9e44" stroke-width="2.5" fill="none"></path></g><g transform="translate(462.5791015625 281.07421875) rotate(0 -121.759765625 -29.005859375)"><path d="M-226.12 -39.89 C-230.82 -45.59, -235.69 -49.8, -243.06 -58.27" stroke="#2f9e44" stroke-width="2.5" fill="none"></path></g></g><mask></mask><g transform="translate(273.1737523901456 211.21875) rotate(0 68.55846812991925 25)"><text x="68.55846812991923" y="17.5" font-family="Comic Shanns, monospace, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Model Server</text><text x="68.55846812991923" y="42.5" font-family="Comic Shanns, monospace, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Protocol</text></g><g stroke-linecap="round"><g transform="translate(443.85546875 58.15234375) rotate(0 -112.228515625 29.22265625)"><path d="M-0.68 -1.1 C-20.79 -0.89, -83.63 -8.3, -120.94 1.71 C-158.25 11.72, -207.44 49.33, -224.56 58.94 M1.16 0.93 C-18.54 1.29, -80.92 -6.18, -118.67 3.14 C-156.43 12.46, -208 47.83, -225.37 56.86" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(443.85546875 58.15234375) rotate(0 -112.228515625 29.22265625)"><path d="M-209.44 37.6 C-215.6 41.42, -218.51 47.98, -225.37 56.86 M-209.44 37.6 C-215.11 44.17, -220.1 49.91, -225.37 56.86" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(443.85546875 58.15234375) rotate(0 -112.228515625 29.22265625)"><path d="M-200.78 52.35 C-209.39 52.05, -214.69 54.54, -225.37 56.86 M-200.78 52.35 C-209.52 53.95, -217.46 54.65, -225.37 56.86" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g></g><mask></mask><g transform="translate(275.7103710609954 18.6875) rotate(0 51.191972689004615 12.5)"><text x="51.19197268900463" y="17.619999999999997" font-family="Excalifont, Xiaolai, sans-serif, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Traffic</text></g><g transform="translate(468.03412875362244 156.51953125) rotate(0 55.69806259269109 25)"><text x="55.698062592691095" y="17.5" font-family="Comic Shanns, monospace, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Extension</text><text x="55.698062592691095" y="42.5" font-family="Comic Shanns, monospace, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Protocol</text></g><g stroke-linecap="round" transform="translate(822.63671875 250.1328125) rotate(0 110.28125 47.6328125)"><path d="M23.82 0 C61.47 -0.69, 93.52 4.98, 196.75 0 C216.1 2.95, 223.17 4.92, 220.56 23.82 C224.42 39.65, 219.59 49.22, 220.56 71.45 C219.08 90.46, 214.22 93.4, 196.75 95.27 C147.6 97.33, 98.46 99.1, 23.82 95.27 C7.29 95.04, 2.09 89.95, 0 71.45 C2.45 56.24, 2.75 44.41, 0 23.82 C0.67 10.72, 4.9 -3.22, 23.82 0" stroke="none" stroke-width="0" fill="#ffec99"></path><path d="M23.82 0 C73.46 0.23, 122.54 1.22, 196.75 0 M23.82 0 C70 0.09, 116.01 0.21, 196.75 0 M196.75 0 C213.09 -1.96, 219.85 9.16, 220.56 23.82 M196.75 0 C213.11 1.41, 220.05 7.44, 220.56 23.82 M220.56 23.82 C219.35 39.84, 220.74 55.1, 220.56 71.45 M220.56 23.82 C221.36 41.8, 220.53 62.25, 220.56 71.45 M220.56 71.45 C220.81 86.59, 213.06 93.69, 196.75 95.27 M220.56 71.45 C221.05 85.71, 210.41 93.9, 196.75 95.27 M196.75 95.27 C158.77 95.3, 116.48 95.21, 23.82 95.27 M196.75 95.27 C151.77 95.73, 105.1 95.39, 23.82 95.27 M23.82 95.27 C8.09 97.01, -1.6 86.27, 0 71.45 M23.82 95.27 C6.69 97.13, -1.41 85.29, 0 71.45 M0 71.45 C0.19 59.05, 0.6 44.44, 0 23.82 M0 71.45 C0.06 53.44, -0.92 36.28, 0 23.82 M0 23.82 C0.36 7.78, 8.38 -1.5, 23.82 0 M0 23.82 C-0.1 8.68, 5.78 -2.16, 23.82 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(839.5780334472656 285.265625) rotate(0 93.33993530273438 12.5)"><text x="93.33993530273438" y="17.619999999999997" font-family="Excalifont, Xiaolai, sans-serif, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Gateway Controller</text></g><g stroke-linecap="round" transform="translate(939.5 12.625) rotate(0 81.77734375 41.41015625)"><path d="M20.71 0 C56.95 1.65, 89.18 -0.68, 142.85 0 C159.8 -0.58, 166.6 10.18, 163.55 20.71 C161.08 33.25, 165.55 40.16, 163.55 62.12 C166.23 78.86, 156.24 80.86, 142.85 82.82 C99.65 80.64, 52.44 83.77, 20.71 82.82 C7.49 80.52, 1.3 75.62, 0 62.12 C-0.76 50.89, 2.19 39.45, 0 20.71 C2.33 4.4, 3.71 -0.81, 20.71 0" stroke="none" stroke-width="0" fill="#ffec99"></path><path d="M20.71 0 C65.19 -0.08, 112.71 -1.26, 142.85 0 M20.71 0 C46.04 0.33, 70.7 0.37, 142.85 0 M142.85 0 C157.33 0.63, 162.82 8.21, 163.55 20.71 M142.85 0 C157.68 0.45, 161.53 7.71, 163.55 20.71 M163.55 20.71 C165.74 33.72, 162.01 49.31, 163.55 62.12 M163.55 20.71 C163.68 31.27, 163.54 43.83, 163.55 62.12 M163.55 62.12 C164.24 75.7, 157.52 81.56, 142.85 82.82 M163.55 62.12 C164.79 76.17, 156.97 81.05, 142.85 82.82 M142.85 82.82 C99.61 85.16, 56.9 82.6, 20.71 82.82 M142.85 82.82 C111.28 81.63, 80.2 81.85, 20.71 82.82 M20.71 82.82 C7.12 82.37, 0.01 77.24, 0 62.12 M20.71 82.82 C5.96 81.25, 0.02 77.13, 0 62.12 M0 62.12 C0.89 47.15, -0.73 31.99, 0 20.71 M0 62.12 C0.69 46.92, -0.55 31.39, 0 20.71 M0 20.71 C1.74 6.85, 8.29 1.3, 20.71 0 M0 20.71 C-0.27 8.52, 8.72 -1.06, 20.71 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(994.1373672485352 41.53515625) rotate(0 27.139976501464844 12.5)"><text x="27.139976501464844" y="17.619999999999997" font-family="Excalifont, Xiaolai, sans-serif, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Client</text></g><g stroke-linecap="round"><g transform="translate(922.86328125 52.800949860671494) rotate(0 -105.361328125 -0.8692249303357471)"><path d="M0.05 -1.15 C-35.27 -1.48, -175.62 -1.12, -210.8 -1.08 M-1.38 0.86 C-36.97 0.11, -176.69 -2.25, -211.78 -2.85" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(922.86328125 52.800949860671494) rotate(0 -105.361328125 -0.8692249303357471)"><path d="M-188.15 -11 C-199.38 -7.88, -205.73 -5.01, -211.78 -2.85 M-188.15 -11 C-196.2 -7.3, -205.19 -5.52, -211.78 -2.85" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(922.86328125 52.800949860671494) rotate(0 -105.361328125 -0.8692249303357471)"><path d="M-188.44 6.1 C-199.68 2.44, -205.91 -1.47, -211.78 -2.85 M-188.44 6.1 C-196.43 3.45, -205.31 -1.13, -211.78 -2.85" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g></g><mask></mask><g transform="translate(769.3978710609954 17.177734375) rotate(0 51.191972689004615 12.5)"><text x="51.19197268900463" y="17.619999999999997" font-family="Excalifont, Xiaolai, sans-serif, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Traffic</text></g><g stroke-linecap="round"><g transform="translate(928.5772506621181 219.29633228183508) rotate(188.5660498991342 -120.40162861425495 -46.92349377479326)"><path d="M0.36 0.29 C-18.72 -4.9, -73.42 -14.9, -113.8 -30.55 C-154.19 -46.2, -220.65 -83.14, -241.95 -93.61" stroke="#1e1e1e" stroke-width="2.5" fill="none" stroke-dasharray="8 10"></path></g><g transform="translate(928.5772506621181 219.29633228183508) rotate(188.5660498991342 -120.40162861425495 -46.92349377479326)"><path d="M-24.48 3.06 C-15.16 2.08, -6.74 -0.91, 0.36 0.29" stroke="#1e1e1e" stroke-width="2.5" fill="none"></path></g><g transform="translate(928.5772506621181 219.29633228183508) rotate(188.5660498991342 -120.40162861425495 -46.92349377479326)"><path d="M-20.45 -13.56 C-12.49 -8.61, -5.51 -5.67, 0.36 0.29" stroke="#1e1e1e" stroke-width="2.5" fill="none"></path></g></g><mask></mask><g transform="translate(808.2207168425398 138.22265625) rotate(0 65.25584565746021 12.5)"><text x="65.25584565746026" y="17.619999999999997" font-family="Excalifont, Xiaolai, sans-serif, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Configures</text></g><g stroke-linecap="round"><g transform="translate(936.1958922859567 362.769287109375) rotate(0 -23.21419036734494 58.019165039062386)"><path d="M-1.13 -0.25 C-2.06 8.87, 1.28 36.06, -6.23 55.34 C-13.74 74.61, -39.48 105.14, -46.19 115.41" stroke="#1e1e1e" stroke-width="2.5" fill="none" stroke-dasharray="8 10"></path></g><g transform="translate(936.1958922859567 362.769287109375) rotate(0 -23.21419036734494 58.019165039062386)"><path d="M-39.18 91.41 C-41.21 95.6, -42.88 103.65, -46.19 115.41" stroke="#1e1e1e" stroke-width="2.5" fill="none"></path></g><g transform="translate(936.1958922859567 362.769287109375) rotate(0 -23.21419036734494 58.019165039062386)"><path d="M-25.4 101.53 C-30.9 103.08, -35.99 108.61, -46.19 115.41" stroke="#1e1e1e" stroke-width="2.5" fill="none"></path></g></g><mask></mask><g transform="translate(916.1386855925398 411.0198168925692) rotate(0 65.25584565746021 12.5)"><text x="65.25584565746026" y="17.619999999999997" font-family="Excalifont, Xiaolai, sans-serif, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Watches</text></g><g stroke-linecap="round"><g transform="translate(588.5429687499998 351.429443359375) rotate(0 122.8481522518822 57.28979177205491)"><path d="M0.47 -0.11 C22.8 4.97, 94.27 11.32, 135.12 30.3 C175.96 49.28, 227.09 99.84, 245.55 113.78" stroke="#1e1e1e" stroke-width="2.5" fill="none" stroke-dasharray="8 10"></path></g><g transform="translate(588.5429687499998 351.429443359375) rotate(0 122.8481522518822 57.28979177205491)"><path d="M222.1 105.1 C231.12 108.37, 241.01 111.58, 245.55 113.78" stroke="#1e1e1e" stroke-width="2.5" fill="none"></path></g><g transform="translate(588.5429687499998 351.429443359375) rotate(0 122.8481522518822 57.28979177205491)"><path d="M233.16 92.06 C237.82 100.5, 243.37 108.82, 245.55 113.78" stroke="#1e1e1e" stroke-width="2.5" fill="none"></path></g></g><mask></mask><g transform="translate(548.2324355925398 380.9690356425692) rotate(0 65.25584565746027 12.5)"><text x="65.25584565746026" y="17.619999999999997" font-family="Excalifont, Xiaolai, sans-serif, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Watches</text></g><g stroke-linecap="round"><g transform="translate(576.5078124999999 352.515380859375) rotate(0 -44.48890245947399 58.01171875)"><path d="M0.29 0.13 C-8.58 7.05, -38.57 21.75, -53.43 41.23 C-68.3 60.7, -83.15 104.69, -88.91 116.98" stroke="#1e1e1e" stroke-width="2.5" fill="none" stroke-dasharray="8 10"></path></g><g transform="translate(576.5078124999999 352.515380859375) rotate(0 -44.48890245947399 58.01171875)"><path d="M-87.94 91.99 C-88.07 99.24, -86.69 106.09, -88.91 116.98" stroke="#1e1e1e" stroke-width="2.5" fill="none"></path></g><g transform="translate(576.5078124999999 352.515380859375) rotate(0 -44.48890245947399 58.01171875)"><path d="M-72.11 98.46 C-76.65 103.94, -79.69 108.97, -88.91 116.98" stroke="#1e1e1e" stroke-width="2.5" fill="none"></path></g></g><mask></mask><g stroke-linecap="round" transform="translate(345.9375000000001 482.374755859375) rotate(0 192.640625 67.5)"><path d="M32 0 C124.8 2.14, 219.69 1.16, 353.28 0 C373.53 -2.23, 388.32 9.95, 385.28 32 C385.01 47.4, 383.1 64.23, 385.28 103 C383.05 124.97, 371.76 134.65, 353.28 135 C254.19 135.34, 159.26 135.32, 32 135 C12.11 132, 1.72 125.61, 0 103 C1.89 83.85, 1.87 72.43, 0 32 C-3.44 11.92, 9.2 -1.19, 32 0" stroke="none" stroke-width="0" fill="#b2f2bb"></path><path d="M32 0 C104.31 -1.26, 178.52 0.55, 353.28 0 M32 0 C102.8 -0.83, 174.05 -0.62, 353.28 0 M353.28 0 C376.58 -1.79, 386.27 10.59, 385.28 32 M353.28 0 C373.19 -0.61, 383.09 11.87, 385.28 32 M385.28 32 C384.58 50.05, 387.68 68.55, 385.28 103 M385.28 32 C385.16 60.8, 385.86 88.87, 385.28 103 M385.28 103 C386.65 124, 373.36 136.9, 353.28 135 M385.28 103 C383.65 122.77, 375.36 133.82, 353.28 135 M353.28 135 C263.61 135.48, 172.06 134.17, 32 135 M353.28 135 C287.69 133.75, 221.64 133.19, 32 135 M32 135 C11.51 134.85, 0.4 125.7, 0 103 M32 135 C8.6 136.46, 1.03 122.73, 0 103 M0 103 C-0.97 75.24, 1.04 47.9, 0 32 M0 103 C-0.29 85.46, 1.51 67.2, 0 32 M0 32 C1.75 11.96, 11.27 0.67, 32 0 M0 32 C0.96 9.77, 10.61 1.16, 32 0" stroke="#2f9e44" stroke-width="2" fill="none"></path></g><g transform="translate(350.9375000000001 499.874755859375) rotate(0 167.35987854003906 50)"><text x="0" y="17.619999999999997" font-family="Excalifont, Xiaolai, sans-serif, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="start" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">         InferenceObjective API</text><text x="0" y="42.62" font-family="Excalifont, Xiaolai, sans-serif, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="start" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic"> Defines</text><text x="0" y="67.62" font-family="Excalifont, Xiaolai, sans-serif, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="start" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic"> - serving objectives for matching </text><text x="0" y="92.62" font-family="Excalifont, Xiaolai, sans-serif, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="start" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">   requests</text></g><g stroke-linecap="round"><g transform="translate(466.70349253341556 319.4214301116765) rotate(0 -133.21484375 45.662109375)"><path d="M0.85 -1.12 C-25.83 1.76, -116.7 1.03, -161.23 16.39 C-205.76 31.75, -248.8 78.51, -266.33 91.04" stroke="#2f9e44" stroke-width="2.5" fill="none" stroke-dasharray="8 10"></path></g><g transform="translate(466.70349253341556 319.4214301116765) rotate(0 -133.21484375 45.662109375)"><path d="M-22.02 8.97 C-19.1 7.6, -11.91 4.8, 0.85 -1.12" stroke="#2f9e44" stroke-width="2.5" fill="none"></path></g><g transform="translate(466.70349253341556 319.4214301116765) rotate(0 -133.21484375 45.662109375)"><path d="M-23.16 -8.09 C-20.13 -5.95, -12.71 -5.23, 0.85 -1.12" stroke="#2f9e44" stroke-width="2.5" fill="none"></path></g></g><mask></mask><g transform="translate(277.3282506200807 346.804443359375) rotate(0 72.95104625491925 25)"><text x="72.95104625491925" y="17.5" font-family="Comic Shanns, monospace, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Observability</text><text x="72.95104625491925" y="42.5" font-family="Comic Shanns, monospace, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Protocol</text></g><g stroke-linecap="round" transform="translate(10 400.050537109375) rotate(0 85.671875 55)"><path d="M27.5 0 C57.96 0.23, 92.07 -2.16, 143.84 0 C161.98 -1.62, 171.53 10.07, 171.34 27.5 C172.01 46.69, 172.38 68.01, 171.34 82.5 C169.13 104.28, 159.03 113.05, 143.84 110 C96.78 106.99, 54.06 111.19, 27.5 110 C8.1 113.16, -3.25 101.52, 0 82.5 C3.07 64.43, 1.44 46.39, 0 27.5 C-1.67 6.06, 12.67 3.19, 27.5 0" stroke="none" stroke-width="0" fill="#ffec99"></path><path d="M27.5 0 C58.62 0.1, 86.75 -0.75, 143.84 0 M27.5 0 C66.17 1.24, 103.86 0.14, 143.84 0 M143.84 0 C160.73 1.75, 169.79 10.1, 171.34 27.5 M143.84 0 C162.38 2.15, 171.96 8.78, 171.34 27.5 M171.34 27.5 C170.44 50.01, 172.38 71.02, 171.34 82.5 M171.34 27.5 C172.51 49.03, 171.57 70.72, 171.34 82.5 M171.34 82.5 C171.08 100.74, 161.79 108.79, 143.84 110 M171.34 82.5 C169.18 99.21, 163.59 112.09, 143.84 110 M143.84 110 C100.17 110.08, 56.23 110.56, 27.5 110 M143.84 110 C97.23 108.17, 51.87 108.41, 27.5 110 M27.5 110 C8.79 111.81, -1.3 100.22, 0 82.5 M27.5 110 C11.27 110.65, -0.82 102.29, 0 82.5 M0 82.5 C1.49 66.6, -0.48 54.73, 0 27.5 M0 82.5 C-0.44 69.52, 0.7 54.3, 0 27.5 M0 27.5 C-1.19 9.05, 11.1 -1.12, 27.5 0 M0 27.5 C-1.28 8.1, 10.63 1.93, 27.5 0" stroke="#1e1e1e" stroke-width="2" fill="none"></path></g><g transform="translate(33.09192307293415 430.050537109375) rotate(0 62.57995192706585 25)"><text x="62.57995192706585" y="17.619999999999997" font-family="Excalifont, Xiaolai, sans-serif, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Observability</text><text x="62.57995192706585" y="42.62" font-family="Excalifont, Xiaolai, sans-serif, Segoe UI Emoji" font-size="20px" fill="#1e1e1e" text-anchor="middle" style="white-space: pre;" direction="ltr" dominant-baseline="alphabetic">Dashboards</text></g></svg>
\ No newline at end of file
diff --git a/docs/scheduler-flowchart.png b/docs/scheduler-flowchart.png
deleted file mode 100644
index 4459ef1..0000000
Binary files a/docs/scheduler-flowchart.png and /dev/null differ
diff --git a/pkg/epp/README.md b/pkg/epp/README.md
index df5c213..966aed5 100644
--- a/pkg/epp/README.md
+++ b/pkg/epp/README.md
@@ -20,9 +20,4 @@ An EPP instance handles a single `InferencePool` (and so for each `InferencePool
   - The EPP generates metrics to enhance observability.
   - It reports InferenceObjective-level metrics, further broken down by target model.
   - Detailed information regarding metrics can be found on the [website](https://gateway-api-inference-extension.sigs.k8s.io/guides/metrics/).
-
-
-## Scheduling Algorithm 
-The scheduling package implements request scheduling algorithms for load balancing requests across backend pods in an inference gateway. The scheduler ensures efficient resource utilization while maintaining low latency and prioritizing critical requests. It applies a series of filters based on metrics and heuristics to select the best pod for a given request. The following flow chart summarizes the current scheduling algorithm
-
-<img src="../../docs/scheduler-flowchart.png" alt="Scheduling Algorithm" width="400" />
+  
\ No newline at end of file
diff --git a/site-src/api-types/inferencemodel.md b/site-src/api-types/inferencemodel.md
index 54fe573..fbf27ec 100644
--- a/site-src/api-types/inferencemodel.md
+++ b/site-src/api-types/inferencemodel.md
@@ -16,4 +16,4 @@ An InferenceModel allows the Inference Workload Owner to define:
 
 ## Spec
 
-The full spec of the InferenceModel is defined [here](/reference/spec/#inferencemodel).
\ No newline at end of file
+The full spec of the InferenceModel is defined [here](/reference/x-spec/#inferencemodel).
\ No newline at end of file
diff --git a/site-src/gieps/overview.md b/site-src/gieps/overview.md
index 438a0ff..df28fae 100644
--- a/site-src/gieps/overview.md
+++ b/site-src/gieps/overview.md
@@ -1,7 +1,7 @@
 # Gateway Inference Enhancement Proposal (GIEP)
 
 Gateway Inference Enhancement Proposals (GIEPs) serve a similar purpose to the
-[GIEP](https://gateway-api.sigs.k8s.io/GIEPs/overview/) process for the main
+[GEP](https://gateway-api.sigs.k8s.io/GEPs/overview/) process for the main
 Gateway API project:
 
 1. Ensure that changes to the API follow a known process and discussion in the
@@ -107,17 +107,17 @@ Before creating a GIEP, share your high level idea with the community. There are
 several places this may be done:
 
 - A [new GitHub
-  Discussion](https://github.com/kubernetes-sigs/gateway-api/discussions/new)
-- On our [Slack Channel](https://kubernetes.slack.com/archives/CR0H13KGA)
+  Discussion](https://github.com/kubernetes-sigs/gateway-api-inference-extension/discussions/new)
+- On our [Slack Channel](https://kubernetes.slack.com/archives/C08E3RZMT2P)
 - On one of our [community
-  meetings](https://gateway-api.sigs.k8s.io/contributing/?h=meetings#meetings)
+  meetings](https://gateway-api-inference-extension.sigs.k8s.io/contributing/?h=meetings#meetings)
 
 Please default to GitHub discussions: they work a lot like GitHub issues which
 makes them easy to search.
 
 ### 2. Create an Issue
 [Create a GIEP
-issue](https://github.com/kubernetes-sigs/gateway-api/issues/new?assignees=&labels=kind%2Ffeature&template=enhancement.md)
+issue](https://github.com/kubernetes-sigs/gateway-api-inference-extension/issues/new)
 in the repo describing your change. At this point, you should copy the outcome
 of any other conversations or documents into this document.
 



Test patch:
diff --git a/pkg/epp/scheduling/framework/plugins/multi/prefix/plugin_test.go b/pkg/epp/scheduling/framework/plugins/multi/prefix/plugin_test.go
index 9f9893b..df2eae6 100644
--- a/pkg/epp/scheduling/framework/plugins/multi/prefix/plugin_test.go
+++ b/pkg/epp/scheduling/framework/plugins/multi/prefix/plugin_test.go
@@ -276,6 +276,7 @@ func TestPrefixPluginChatCompletionsGrowth(t *testing.T) {
 		},
 	}
 	plugin.PreRequest(context.Background(), req1, schedulingResult, 0)
+	plugin.wg.Wait()
 
 	// Second request adds assistant response and new user message (conversation grows)
 	req2 := &types.LLMRequest{
@@ -308,6 +309,7 @@ func TestPrefixPluginChatCompletionsGrowth(t *testing.T) {
 
 	// Simulate pod1 was picked again
 	plugin.PreRequest(context.Background(), req2, schedulingResult, 0)
+	plugin.wg.Wait()
 
 	// Third request continues the conversation even further
 	req3 := &types.LLMRequest{