summaryrefslogtreecommitdiffstats
path: root/documentation/overview-manual
diff options
context:
space:
mode:
Diffstat (limited to 'documentation/overview-manual')
-rw-r--r--documentation/overview-manual/concepts.rst1126
-rw-r--r--documentation/overview-manual/development-environment.rst187
-rw-r--r--documentation/overview-manual/figures/analysis-for-package-splitting.pngbin68434 -> 0 bytes
-rw-r--r--documentation/overview-manual/figures/configuration-compile-autoreconf.pngbin70877 -> 0 bytes
-rw-r--r--documentation/overview-manual/figures/git-workflow.pngbin26586 -> 0 bytes
-rwxr-xr-xdocumentation/overview-manual/figures/index-downloads.pngbin18142 -> 0 bytes
-rw-r--r--documentation/overview-manual/figures/patching.pngbin57414 -> 0 bytes
-rw-r--r--documentation/overview-manual/figures/source-fetching.pngbin46896 -> 0 bytes
-rw-r--r--documentation/overview-manual/figures/source-repos.pngbin298757 -> 775796 bytes
-rw-r--r--documentation/overview-manual/figures/yp-download.pngbin82939 -> 518257 bytes
-rw-r--r--documentation/overview-manual/history.rst28
-rw-r--r--documentation/overview-manual/index.rst1
-rw-r--r--documentation/overview-manual/intro.rst17
-rw-r--r--documentation/overview-manual/svg/analysis-for-package-splitting.svg1862
-rw-r--r--documentation/overview-manual/svg/bitbake_tasks_map.svg4
-rw-r--r--documentation/overview-manual/svg/configuration-compile-autoreconf.svg1497
-rw-r--r--documentation/overview-manual/svg/git-workflow.svg1205
-rw-r--r--documentation/overview-manual/svg/patching.svg1224
-rw-r--r--documentation/overview-manual/svg/source-fetching.svg1094
-rw-r--r--documentation/overview-manual/yp-intro.rst308
20 files changed, 7825 insertions, 728 deletions
diff --git a/documentation/overview-manual/concepts.rst b/documentation/overview-manual/concepts.rst
index 257de44ec8..e8569e4f53 100644
--- a/documentation/overview-manual/concepts.rst
+++ b/documentation/overview-manual/concepts.rst
@@ -34,10 +34,10 @@ itself is of various types:
34 34
35BitBake knows how to combine multiple data sources together and refers 35BitBake knows how to combine multiple data sources together and refers
36to each data source as a layer. For information on layers, see the 36to each data source as a layer. For information on layers, see the
37":ref:`dev-manual/common-tasks:understanding and creating layers`" 37":ref:`dev-manual/layers:understanding and creating layers`"
38section of the Yocto Project Development Tasks Manual. 38section of the Yocto Project Development Tasks Manual.
39 39
40Following are some brief details on these core components. For 40Here are some brief details on these core components. For
41additional information on how these components interact during a build, 41additional information on how these components interact during a build,
42see the 42see the
43":ref:`overview-manual/concepts:openembedded build system concepts`" 43":ref:`overview-manual/concepts:openembedded build system concepts`"
@@ -55,8 +55,7 @@ This section briefly introduces BitBake. If you want more information on
55BitBake, see the :doc:`BitBake User Manual <bitbake:index>`. 55BitBake, see the :doc:`BitBake User Manual <bitbake:index>`.
56 56
57To see a list of the options BitBake supports, use either of the 57To see a list of the options BitBake supports, use either of the
58following commands: 58following commands::
59::
60 59
61 $ bitbake -h 60 $ bitbake -h
62 $ bitbake --help 61 $ bitbake --help
@@ -66,17 +65,14 @@ The most common usage for BitBake is ``bitbake recipename``, where
66to as the "target"). The target often equates to the first part of a 65to as the "target"). The target often equates to the first part of a
67recipe's filename (e.g. "foo" for a recipe named ``foo_1.3.0-r0.bb``). 66recipe's filename (e.g. "foo" for a recipe named ``foo_1.3.0-r0.bb``).
68So, to process the ``matchbox-desktop_1.2.3.bb`` recipe file, you might 67So, to process the ``matchbox-desktop_1.2.3.bb`` recipe file, you might
69type the following: 68type the following::
70::
71 69
72 $ bitbake matchbox-desktop 70 $ bitbake matchbox-desktop
73 71
74Several different 72Several different versions of ``matchbox-desktop`` might exist. BitBake chooses
75versions of ``matchbox-desktop`` might exist. BitBake chooses the one 73the one selected by the distribution configuration. You can get more details
76selected by the distribution configuration. You can get more details 74about how BitBake chooses between different target versions and providers in the
77about how BitBake chooses between different target versions and 75":ref:`bitbake-user-manual/bitbake-user-manual-execution:preferences`" section
78providers in the
79":ref:`Preferences <bitbake:bitbake-user-manual/bitbake-user-manual-execution:preferences>`" section
80of the BitBake User Manual. 76of the BitBake User Manual.
81 77
82BitBake also tries to execute any dependent tasks first. So for example, 78BitBake also tries to execute any dependent tasks first. So for example,
@@ -102,19 +98,18 @@ files, and how to package the compiled output.
102 98
103The term "package" is sometimes used to refer to recipes. However, since 99The term "package" is sometimes used to refer to recipes. However, since
104the word "package" is used for the packaged output from the OpenEmbedded 100the word "package" is used for the packaged output from the OpenEmbedded
105build system (i.e. ``.ipk`` or ``.deb`` files), this document avoids 101build system (i.e. ``.ipk``, ``.deb`` or ``.rpm`` files), this document avoids
106using the term "package" when referring to recipes. 102using the term "package" when referring to recipes.
107 103
108Classes 104Classes
109------- 105-------
110 106
111Class files (``.bbclass``) contain information that is useful to share 107Class files (``.bbclass``) contain information that is useful to share
112between recipes files. An example is the 108between recipes files. An example is the :ref:`ref-classes-autotools` class,
113:ref:`autotools <ref-classes-autotools>` class, 109which contains common settings for any application that is built with
114which contains common settings for any application that Autotools uses. 110the :wikipedia:`GNU Autotools <GNU_Autotools>`.
115The ":ref:`ref-manual/classes:Classes`" chapter in the 111The ":ref:`ref-manual/classes:Classes`" chapter in the Yocto Project
116Yocto Project Reference Manual provides details about classes and how to 112Reference Manual provides details about classes and how to use them.
117use them.
118 113
119Configurations 114Configurations
120-------------- 115--------------
@@ -132,7 +127,7 @@ Layers
132 127
133Layers are repositories that contain related metadata (i.e. sets of 128Layers are repositories that contain related metadata (i.e. sets of
134instructions) that tell the OpenEmbedded build system how to build a 129instructions) that tell the OpenEmbedded build system how to build a
135target. Yocto Project's `layer model <#the-yocto-project-layer-model>`__ 130target. :ref:`overview-manual/yp-intro:the yocto project layer model`
136facilitates collaboration, sharing, customization, and reuse within the 131facilitates collaboration, sharing, customization, and reuse within the
137Yocto Project development environment. Layers logically separate 132Yocto Project development environment. Layers logically separate
138information for your project. For example, you can use a layer to hold 133information for your project. For example, you can use a layer to hold
@@ -141,8 +136,8 @@ hardware-specific configurations allows you to share other metadata by
141using a different layer where that metadata might be common across 136using a different layer where that metadata might be common across
142several pieces of hardware. 137several pieces of hardware.
143 138
144Many layers exist that work in the Yocto Project development environment. The 139There are many layers working in the Yocto Project development environment. The
145:yocto_home:`Yocto Project Curated Layer Index </software-overview/layers/>` 140:yocto_home:`Yocto Project Compatible Layer Index </software-overview/layers/>`
146and :oe_layerindex:`OpenEmbedded Layer Index <>` both contain layers from 141and :oe_layerindex:`OpenEmbedded Layer Index <>` both contain layers from
147which you can use or leverage. 142which you can use or leverage.
148 143
@@ -151,7 +146,7 @@ Conforming to a known structure allows BitBake to make assumptions
151during builds on where to find types of metadata. You can find 146during builds on where to find types of metadata. You can find
152procedures and learn about tools (i.e. ``bitbake-layers``) for creating 147procedures and learn about tools (i.e. ``bitbake-layers``) for creating
153layers suitable for the Yocto Project in the 148layers suitable for the Yocto Project in the
154":ref:`dev-manual/common-tasks:understanding and creating layers`" 149":ref:`dev-manual/layers:understanding and creating layers`"
155section of the Yocto Project Development Tasks Manual. 150section of the Yocto Project Development Tasks Manual.
156 151
157OpenEmbedded Build System Concepts 152OpenEmbedded Build System Concepts
@@ -168,7 +163,7 @@ remainder of this section expands on the fundamental input, output,
168process, and metadata logical blocks that make up the workflow. 163process, and metadata logical blocks that make up the workflow.
169 164
170.. image:: figures/YP-flow-diagram.png 165.. image:: figures/YP-flow-diagram.png
171 :align: center 166 :width: 100%
172 167
173In general, the build's workflow consists of several functional areas: 168In general, the build's workflow consists of several functional areas:
174 169
@@ -207,11 +202,11 @@ you can tell BitBake the target architecture for which you are building
207the image, where to store downloaded source, and other build properties. 202the image, where to store downloaded source, and other build properties.
208 203
209The following figure shows an expanded representation of the "User 204The following figure shows an expanded representation of the "User
210Configuration" box of the `general workflow 205Configuration" box of the :ref:`general workflow
211figure <#general-workflow-figure>`__: 206figure <overview-manual/concepts:openembedded build system concepts>`:
212 207
213.. image:: figures/user-configuration.png 208.. image:: figures/user-configuration.png
214 :align: center 209 :width: 100%
215 210
216BitBake needs some basic configuration files in order to complete a 211BitBake needs some basic configuration files in order to complete a
217build. These files are ``*.conf`` files. The minimally necessary ones 212build. These files are ``*.conf`` files. The minimally necessary ones
@@ -235,13 +230,12 @@ for creating actual configuration files when you source
235:ref:`structure-core-script`, which is the 230:ref:`structure-core-script`, which is the
236build environment script. 231build environment script.
237 232
238Sourcing the build environment script creates a 233Sourcing the build environment script creates a :term:`Build Directory`
239:term:`Build Directory` if one does not 234if one does not already exist. BitBake uses the :term:`Build Directory`
240already exist. BitBake uses the Build Directory for all its work during 235for all its work during builds. The Build Directory has a ``conf`` directory
241builds. The Build Directory has a ``conf`` directory that contains 236that contains default versions of your ``local.conf`` and ``bblayers.conf``
242default versions of your ``local.conf`` and ``bblayers.conf``
243configuration files. These default configuration files are created only 237configuration files. These default configuration files are created only
244if versions do not already exist in the Build Directory at the time you 238if versions do not already exist in the :term:`Build Directory` at the time you
245source the build environment setup script. 239source the build environment setup script.
246 240
247Because the Poky repository is fundamentally an aggregation of existing 241Because the Poky repository is fundamentally an aggregation of existing
@@ -253,16 +247,16 @@ assumes the script is executed from within a cloned or unpacked version
253of Poky. 247of Poky.
254 248
255Depending on where the script is sourced, different sub-scripts are 249Depending on where the script is sourced, different sub-scripts are
256called to set up the Build Directory (Yocto or OpenEmbedded). 250called to set up the :term:`Build Directory` (Yocto or OpenEmbedded).
257Specifically, the script ``scripts/oe-setup-builddir`` inside the poky 251Specifically, the script ``scripts/oe-setup-builddir`` inside the poky
258directory sets up the Build Directory and seeds the directory (if 252directory sets up the :term:`Build Directory` and seeds the directory (if
259necessary) with configuration files appropriate for the Yocto Project 253necessary) with configuration files appropriate for the Yocto Project
260development environment. 254development environment.
261 255
262.. note:: 256.. note::
263 257
264 The 258 The
265 scripts/oe-setup-builddir 259 ``scripts/oe-setup-builddir``
266 script uses the 260 script uses the
267 ``$TEMPLATECONF`` 261 ``$TEMPLATECONF``
268 variable to determine which sample configuration files to locate. 262 variable to determine which sample configuration files to locate.
@@ -271,7 +265,7 @@ The ``local.conf`` file provides many basic variables that define a
271build environment. Here is a list of a few. To see the default 265build environment. Here is a list of a few. To see the default
272configurations in a ``local.conf`` file created by the build environment 266configurations in a ``local.conf`` file created by the build environment
273script, see the 267script, see the
274:yocto_git:`local.conf.sample </poky/tree/meta-poky/conf/local.conf.sample>` 268:yocto_git:`local.conf.sample </poky/tree/meta-poky/conf/templates/default/local.conf.sample>`
275in the ``meta-poky`` layer: 269in the ``meta-poky`` layer:
276 270
277- *Target Machine Selection:* Controlled by the 271- *Target Machine Selection:* Controlled by the
@@ -283,6 +277,9 @@ in the ``meta-poky`` layer:
283- *Shared State Directory:* Controlled by the 277- *Shared State Directory:* Controlled by the
284 :term:`SSTATE_DIR` variable. 278 :term:`SSTATE_DIR` variable.
285 279
280- *Persistent Data Directory:* Controlled by the
281 :term:`PERSISTENT_DIR` variable.
282
286- *Build Output:* Controlled by the 283- *Build Output:* Controlled by the
287 :term:`TMPDIR` variable. 284 :term:`TMPDIR` variable.
288 285
@@ -302,25 +299,20 @@ in the ``meta-poky`` layer:
302 299
303.. note:: 300.. note::
304 301
305 Configurations set in the 302 Configurations set in the ``conf/local.conf`` file can also be set
306 conf/local.conf 303 in the ``conf/site.conf`` and ``conf/auto.conf`` configuration files.
307 file can also be set in the
308 conf/site.conf
309 and
310 conf/auto.conf
311 configuration files.
312 304
313The ``bblayers.conf`` file tells BitBake what layers you want considered 305The ``bblayers.conf`` file tells BitBake what layers you want considered
314during the build. By default, the layers listed in this file include 306during the build. By default, the layers listed in this file include
315layers minimally needed by the build system. However, you must manually 307layers minimally needed by the build system. However, you must manually
316add any custom layers you have created. You can find more information on 308add any custom layers you have created. You can find more information on
317working with the ``bblayers.conf`` file in the 309working with the ``bblayers.conf`` file in the
318":ref:`dev-manual/common-tasks:enabling your layer`" 310":ref:`dev-manual/layers:enabling your layer`"
319section in the Yocto Project Development Tasks Manual. 311section in the Yocto Project Development Tasks Manual.
320 312
321The files ``site.conf`` and ``auto.conf`` are not created by the 313The files ``site.conf`` and ``auto.conf`` are not created by the
322environment initialization script. If you want the ``site.conf`` file, 314environment initialization script. If you want the ``site.conf`` file,
323you need to create that yourself. The ``auto.conf`` file is typically 315you need to create it yourself. The ``auto.conf`` file is typically
324created by an autobuilder: 316created by an autobuilder:
325 317
326- *site.conf:* You can use the ``conf/site.conf`` configuration 318- *site.conf:* You can use the ``conf/site.conf`` configuration
@@ -328,17 +320,7 @@ created by an autobuilder:
328 you had several build environments and they shared some common 320 you had several build environments and they shared some common
329 features. You can set these default build properties here. A good 321 features. You can set these default build properties here. A good
330 example is perhaps the packaging format to use through the 322 example is perhaps the packaging format to use through the
331 :term:`PACKAGE_CLASSES` 323 :term:`PACKAGE_CLASSES` variable.
332 variable.
333
334 One useful scenario for using the ``conf/site.conf`` file is to
335 extend your :term:`BBPATH` variable
336 to include the path to a ``conf/site.conf``. Then, when BitBake looks
337 for Metadata using ``BBPATH``, it finds the ``conf/site.conf`` file
338 and applies your common configurations found in the file. To override
339 configurations in a particular build directory, alter the similar
340 configurations within that build directory's ``conf/local.conf``
341 file.
342 324
343- *auto.conf:* The file is usually created and written to by an 325- *auto.conf:* The file is usually created and written to by an
344 autobuilder. The settings put into the file are typically the same as 326 autobuilder. The settings put into the file are typically the same as
@@ -372,9 +354,9 @@ BitBake's global behavior. This section takes a closer look at the
372layers the build system uses to further control the build. These layers 354layers the build system uses to further control the build. These layers
373provide Metadata for the software, machine, and policies. 355provide Metadata for the software, machine, and policies.
374 356
375In general, three types of layer input exists. You can see them below 357In general, there are three types of layer input. You can see them below
376the "User Configuration" box in the `general workflow 358the "User Configuration" box in the :ref:`general workflow
377figure <#general-workflow-figure>`__: 359figure <overview-manual/concepts:openembedded build system concepts>`:
378 360
379- *Metadata (.bb + Patches):* Software layers containing 361- *Metadata (.bb + Patches):* Software layers containing
380 user-supplied recipe files, patches, and append files. A good example 362 user-supplied recipe files, patches, and append files. A good example
@@ -387,8 +369,8 @@ figure <#general-workflow-figure>`__:
387- *Machine BSP Configuration:* Board Support Package (BSP) layers (i.e. 369- *Machine BSP Configuration:* Board Support Package (BSP) layers (i.e.
388 "BSP Layer" in the following figure) providing machine-specific 370 "BSP Layer" in the following figure) providing machine-specific
389 configurations. This type of information is specific to a particular 371 configurations. This type of information is specific to a particular
390 target architecture. A good example of a BSP layer from the `Poky 372 target architecture. A good example of a BSP layer from the
391 Reference Distribution <#gs-reference-distribution-poky>`__ is the 373 :ref:`overview-manual/yp-intro:reference distribution (poky)` is the
392 :yocto_git:`meta-yocto-bsp </poky/tree/meta-yocto-bsp>` 374 :yocto_git:`meta-yocto-bsp </poky/tree/meta-yocto-bsp>`
393 layer. 375 layer.
394 376
@@ -403,10 +385,12 @@ figure <#general-workflow-figure>`__:
403 that contain many policy configurations for the Poky distribution. 385 that contain many policy configurations for the Poky distribution.
404 386
405The following figure shows an expanded representation of these three 387The following figure shows an expanded representation of these three
406layers from the `general workflow figure <#general-workflow-figure>`__: 388layers from the :ref:`general workflow figure
389<overview-manual/concepts:openembedded build system concepts>`:
407 390
408.. image:: figures/layer-input.png 391.. image:: figures/layer-input.png
409 :align: center 392 :align: center
393 :width: 70%
410 394
411In general, all layers have a similar structure. They all contain a 395In general, all layers have a similar structure. They all contain a
412licensing file (e.g. ``COPYING.MIT``) if the layer is to be distributed, 396licensing file (e.g. ``COPYING.MIT``) if the layer is to be distributed,
@@ -414,13 +398,13 @@ a ``README`` file as good practice and especially if the layer is to be
414distributed, a configuration directory, and recipe directories. You can 398distributed, a configuration directory, and recipe directories. You can
415learn about the general structure for layers used with the Yocto Project 399learn about the general structure for layers used with the Yocto Project
416in the 400in the
417":ref:`dev-manual/common-tasks:creating your own layer`" 401":ref:`dev-manual/layers:creating your own layer`"
418section in the 402section in the
419Yocto Project Development Tasks Manual. For a general discussion on 403Yocto Project Development Tasks Manual. For a general discussion on
420layers and the many layers from which you can draw, see the 404layers and the many layers from which you can draw, see the
421"`Layers <#overview-layers>`__" and "`The Yocto Project Layer 405":ref:`overview-manual/concepts:layers`" and
422Model <#the-yocto-project-layer-model>`__" sections both earlier in this 406":ref:`overview-manual/yp-intro:the yocto project layer model`" sections both
423manual. 407earlier in this manual.
424 408
425If you explored the previous links, you discovered some areas where many 409If you explored the previous links, you discovered some areas where many
426layers that work with the Yocto Project exist. The :yocto_git:`Source 410layers that work with the Yocto Project exist. The :yocto_git:`Source
@@ -428,8 +412,8 @@ Repositories <>` also shows layers categorized under "Yocto Metadata Layers."
428 412
429.. note:: 413.. note::
430 414
431 Layers exist in the Yocto Project Source Repositories that cannot be 415 There are layers in the Yocto Project Source Repositories that cannot be
432 found in the OpenEmbedded Layer Index. These layers are either 416 found in the OpenEmbedded Layer Index. Such layers are either
433 deprecated or experimental in nature. 417 deprecated or experimental in nature.
434 418
435BitBake uses the ``conf/bblayers.conf`` file, which is part of the user 419BitBake uses the ``conf/bblayers.conf`` file, which is part of the user
@@ -439,14 +423,14 @@ build.
439Distro Layer 423Distro Layer
440~~~~~~~~~~~~ 424~~~~~~~~~~~~
441 425
442The distribution layer provides policy configurations for your 426A distribution layer provides policy configurations for your
443distribution. Best practices dictate that you isolate these types of 427distribution. Best practices dictate that you isolate these types of
444configurations into their own layer. Settings you provide in 428configurations into their own layer. Settings you provide in
445``conf/distro/distro.conf`` override similar settings that BitBake finds 429``conf/distro/distro.conf`` override similar settings that BitBake finds
446in your ``conf/local.conf`` file in the Build Directory. 430in your ``conf/local.conf`` file in the :term:`Build Directory`.
447 431
448The following list provides some explanation and references for what you 432The following list provides some explanation and references for what you
449typically find in the distribution layer: 433typically find in a distribution layer:
450 434
451- *classes:* Class files (``.bbclass``) hold common functionality that 435- *classes:* Class files (``.bbclass``) hold common functionality that
452 can be shared among recipes in the distribution. When your recipes 436 can be shared among recipes in the distribution. When your recipes
@@ -473,7 +457,7 @@ typically find in the distribution layer:
473BSP Layer 457BSP Layer
474~~~~~~~~~ 458~~~~~~~~~
475 459
476The BSP Layer provides machine configurations that target specific 460A BSP layer provides machine configurations that target specific
477hardware. Everything in this layer is specific to the machine for which 461hardware. Everything in this layer is specific to the machine for which
478you are building the image or the SDK. A common structure or form is 462you are building the image or the SDK. A common structure or form is
479defined for BSP layers. You can learn more about this structure in the 463defined for BSP layers. You can learn more about this structure in the
@@ -484,41 +468,42 @@ defined for BSP layers. You can learn more about this structure in the
484 In order for a BSP layer to be considered compliant with the Yocto 468 In order for a BSP layer to be considered compliant with the Yocto
485 Project, it must meet some structural requirements. 469 Project, it must meet some structural requirements.
486 470
487The BSP Layer's configuration directory contains configuration files for 471A BSP layer's configuration directory contains configuration files for
488the machine (``conf/machine/machine.conf``) and, of course, the layer 472the machine (``conf/machine/machine.conf``) and, of course, the layer
489(``conf/layer.conf``). 473(``conf/layer.conf``).
490 474
491The remainder of the layer is dedicated to specific recipes by function: 475The remainder of the layer is dedicated to specific recipes by function:
492``recipes-bsp``, ``recipes-core``, ``recipes-graphics``, 476``recipes-bsp``, ``recipes-core``, ``recipes-graphics``,
493``recipes-kernel``, and so forth. Metadata can exist for multiple 477``recipes-kernel``, and so forth. There can be metadata for multiple
494formfactors, graphics support systems, and so forth. 478formfactors, graphics support systems, and so forth.
495 479
496.. note:: 480.. note::
497 481
498 While the figure shows several 482 While the figure shows several
499 recipes-\* 483 ``recipes-*``
500 directories, not all these directories appear in all BSP layers. 484 directories, not all these directories appear in all BSP layers.
501 485
502Software Layer 486Software Layer
503~~~~~~~~~~~~~~ 487~~~~~~~~~~~~~~
504 488
505The software layer provides the Metadata for additional software 489A software layer provides the Metadata for additional software
506packages used during the build. This layer does not include Metadata 490packages used during the build. This layer does not include Metadata
507that is specific to the distribution or the machine, which are found in 491that is specific to the distribution or the machine, which are found in
508their respective layers. 492their respective layers.
509 493
510This layer contains any recipes, append files, and patches, that your 494This layer contains any recipes, append files, and patches that your
511project needs. 495project needs.
512 496
513Sources 497Sources
514------- 498-------
515 499
516In order for the OpenEmbedded build system to create an image or any 500In order for the OpenEmbedded build system to create an image or any
517target, it must be able to access source files. The `general workflow 501target, it must be able to access source files. The :ref:`general workflow
518figure <#general-workflow-figure>`__ represents source files using the 502figure <overview-manual/concepts:openembedded build system concepts>`
519"Upstream Project Releases", "Local Projects", and "SCMs (optional)" 503represents source files using the "Upstream Project Releases", "Local
520boxes. The figure represents mirrors, which also play a role in locating 504Projects", and "SCMs (optional)" boxes. The figure represents mirrors,
521source files, with the "Source Materials" box. 505which also play a role in locating source files, with the "Source
506Materials" box.
522 507
523The method by which source files are ultimately organized is a function 508The method by which source files are ultimately organized is a function
524of the project. For example, for released software, projects tend to use 509of the project. For example, for released software, projects tend to use
@@ -528,13 +513,11 @@ project that is more dynamic or experimental in nature, a project might
528keep source files in a repository controlled by a Source Control Manager 513keep source files in a repository controlled by a Source Control Manager
529(SCM) such as Git. Pulling source from a repository allows you to 514(SCM) such as Git. Pulling source from a repository allows you to
530control the point in the repository (the revision) from which you want 515control the point in the repository (the revision) from which you want
531to build software. Finally, a combination of the two might exist, which 516to build software. A combination of the two is also possible.
532would give the consumer a choice when deciding where to get source
533files.
534 517
535BitBake uses the :term:`SRC_URI` 518BitBake uses the :term:`SRC_URI`
536variable to point to source files regardless of their location. Each 519variable to point to source files regardless of their location. Each
537recipe must have a ``SRC_URI`` variable that points to the source. 520recipe must have a :term:`SRC_URI` variable that points to the source.
538 521
539Another area that plays a significant role in where source files come 522Another area that plays a significant role in where source files come
540from is pointed to by the 523from is pointed to by the
@@ -542,22 +525,24 @@ from is pointed to by the
542a cache that can hold previously downloaded source. You can also 525a cache that can hold previously downloaded source. You can also
543instruct the OpenEmbedded build system to create tarballs from Git 526instruct the OpenEmbedded build system to create tarballs from Git
544repositories, which is not the default behavior, and store them in the 527repositories, which is not the default behavior, and store them in the
545``DL_DIR`` by using the 528:term:`DL_DIR` by using the
546:term:`BB_GENERATE_MIRROR_TARBALLS` 529:term:`BB_GENERATE_MIRROR_TARBALLS`
547variable. 530variable.
548 531
549Judicious use of a ``DL_DIR`` directory can save the build system a trip 532Judicious use of a :term:`DL_DIR` directory can save the build system a trip
550across the Internet when looking for files. A good method for using a 533across the Internet when looking for files. A good method for using a download
551download directory is to have ``DL_DIR`` point to an area outside of 534directory is to have :term:`DL_DIR` point to an area outside of your
552your Build Directory. Doing so allows you to safely delete the Build 535:term:`Build Directory`. Doing so allows you to safely delete the
553Directory if needed without fear of removing any downloaded source file. 536:term:`Build Directory` if needed without fear of removing any downloaded
537source file.
554 538
555The remainder of this section provides a deeper look into the source 539The remainder of this section provides a deeper look into the source
556files and the mirrors. Here is a more detailed look at the source file 540files and the mirrors. Here is a more detailed look at the source file
557area of the `general workflow figure <#general-workflow-figure>`__: 541area of the :ref:`general workflow figure <overview-manual/concepts:openembedded build system concepts>`:
558 542
559.. image:: figures/source-input.png 543.. image:: figures/source-input.png
560 :align: center 544 :align: center
545 :width: 70%
561 546
562Upstream Project Releases 547Upstream Project Releases
563~~~~~~~~~~~~~~~~~~~~~~~~~ 548~~~~~~~~~~~~~~~~~~~~~~~~~
@@ -572,33 +557,29 @@ Local Projects
572~~~~~~~~~~~~~~ 557~~~~~~~~~~~~~~
573 558
574Local projects are custom bits of software the user provides. These bits 559Local projects are custom bits of software the user provides. These bits
575reside somewhere local to a project - perhaps a directory into which the 560reside somewhere local to a project --- perhaps a directory into which the
576user checks in items (e.g. a local directory containing a development 561user checks in items (e.g. a local directory containing a development
577source tree used by the group). 562source tree used by the group).
578 563
579The canonical method through which to include a local project is to use 564The canonical method through which to include a local project is to use the
580the :ref:`externalsrc <ref-classes-externalsrc>` 565:ref:`ref-classes-externalsrc` class to include that local project. You use
581class to include that local project. You use either the ``local.conf`` 566either ``local.conf`` or a recipe's append file to override or set the
582or a recipe's append file to override or set the recipe to point to the 567recipe to point to the local directory from which to fetch the source.
583local directory on your disk to pull in the whole source tree.
584 568
585Source Control Managers (Optional) 569Source Control Managers (Optional)
586~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 570~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
587 571
588Another place from which the build system can get source files is with 572Another place from which the build system can get source files is with
589:ref:`fetchers <bitbake:bitbake-user-manual/bitbake-user-manual-fetching:fetchers>` employing various Source 573:ref:`bitbake-user-manual/bitbake-user-manual-fetching:fetchers` employing
590Control Managers (SCMs) such as Git or Subversion. In such cases, a 574various Source Control Managers (SCMs) such as Git or Subversion. In such
591repository is cloned or checked out. The 575cases, a repository is cloned or checked out. The :ref:`ref-tasks-fetch` task
592:ref:`ref-tasks-fetch` task inside 576inside BitBake uses the :term:`SRC_URI` variable and the argument's prefix to
593BitBake uses the :term:`SRC_URI` 577determine the correct fetcher module.
594variable and the argument's prefix to determine the correct fetcher
595module.
596 578
597.. note:: 579.. note::
598 580
599 For information on how to have the OpenEmbedded build system generate 581 For information on how to have the OpenEmbedded build system generate
600 tarballs for Git repositories and place them in the 582 tarballs for Git repositories and place them in the :term:`DL_DIR`
601 DL_DIR
602 directory, see the :term:`BB_GENERATE_MIRROR_TARBALLS` 583 directory, see the :term:`BB_GENERATE_MIRROR_TARBALLS`
603 variable in the Yocto Project Reference Manual. 584 variable in the Yocto Project Reference Manual.
604 585
@@ -609,7 +590,7 @@ the specific revision from which to build.
609Source Mirror(s) 590Source Mirror(s)
610~~~~~~~~~~~~~~~~ 591~~~~~~~~~~~~~~~~
611 592
612Two kinds of mirrors exist: pre-mirrors and regular mirrors. The 593There are two kinds of mirrors: pre-mirrors and regular mirrors. The
613:term:`PREMIRRORS` and 594:term:`PREMIRRORS` and
614:term:`MIRRORS` variables point to 595:term:`MIRRORS` variables point to
615these, respectively. BitBake checks pre-mirrors before looking upstream 596these, respectively. BitBake checks pre-mirrors before looking upstream
@@ -628,15 +609,15 @@ Package Feeds
628 609
629When the OpenEmbedded build system generates an image or an SDK, it gets 610When the OpenEmbedded build system generates an image or an SDK, it gets
630the packages from a package feed area located in the 611the packages from a package feed area located in the
631:term:`Build Directory`. The `general 612:term:`Build Directory`. The :ref:`general workflow figure
632workflow figure <#general-workflow-figure>`__ shows this package feeds 613<overview-manual/concepts:openembedded build system concepts>`
633area in the upper-right corner. 614shows this package feeds area in the upper-right corner.
634 615
635This section looks a little closer into the package feeds area used by 616This section looks a little closer into the package feeds area used by
636the build system. Here is a more detailed look at the area: 617the build system. Here is a more detailed look at the area:
637 618
638.. image:: figures/package-feeds.png 619.. image:: figures/package-feeds.png
639 :align: center 620 :width: 100%
640 621
641Package feeds are an intermediary step in the build process. The 622Package feeds are an intermediary step in the build process. The
642OpenEmbedded build system provides classes to generate different package 623OpenEmbedded build system provides classes to generate different package
@@ -644,31 +625,28 @@ types, and you specify which classes to enable through the
644:term:`PACKAGE_CLASSES` 625:term:`PACKAGE_CLASSES`
645variable. Before placing the packages into package feeds, the build 626variable. Before placing the packages into package feeds, the build
646process validates them with generated output quality assurance checks 627process validates them with generated output quality assurance checks
647through the :ref:`insane <ref-classes-insane>` 628through the :ref:`ref-classes-insane` class.
648class.
649 629
650The package feed area resides in the Build Directory. The directory the 630The package feed area resides in the :term:`Build Directory`. The directory the
651build system uses to temporarily store packages is determined by a 631build system uses to temporarily store packages is determined by a
652combination of variables and the particular package manager in use. See 632combination of variables and the particular package manager in use. See
653the "Package Feeds" box in the illustration and note the information to 633the "Package Feeds" box in the illustration and note the information to
654the right of that area. In particular, the following defines where 634the right of that area. In particular, the following defines where
655package files are kept: 635package files are kept:
656 636
657- :term:`DEPLOY_DIR`: Defined as 637- :term:`DEPLOY_DIR`: Defined as ``tmp/deploy`` in the :term:`Build Directory`.
658 ``tmp/deploy`` in the Build Directory.
659 638
660- ``DEPLOY_DIR_*``: Depending on the package manager used, the package 639- ``DEPLOY_DIR_*``: Depending on the package manager used, the package
661 type sub-folder. Given RPM, IPK, or DEB packaging and tarball 640 type sub-folder. Given RPM, IPK, or DEB packaging and tarball
662 creation, the 641 creation, the
663 :term:`DEPLOY_DIR_RPM`, 642 :term:`DEPLOY_DIR_RPM`,
664 :term:`DEPLOY_DIR_IPK`, 643 :term:`DEPLOY_DIR_IPK`, or
665 :term:`DEPLOY_DIR_DEB`, or 644 :term:`DEPLOY_DIR_DEB`
666 :term:`DEPLOY_DIR_TAR`,
667 variables are used, respectively. 645 variables are used, respectively.
668 646
669- :term:`PACKAGE_ARCH`: Defines 647- :term:`PACKAGE_ARCH`: Defines
670 architecture-specific sub-folders. For example, packages could exist 648 architecture-specific sub-folders. For example, packages could be
671 for the i586 or qemux86 architectures. 649 available for the i586 or qemux86 architectures.
672 650
673BitBake uses the 651BitBake uses the
674:ref:`do_package_write_* <ref-tasks-package_write_deb>` 652:ref:`do_package_write_* <ref-tasks-package_write_deb>`
@@ -676,13 +654,12 @@ tasks to generate packages and place them into the package holding area
676(e.g. ``do_package_write_ipk`` for IPK packages). See the 654(e.g. ``do_package_write_ipk`` for IPK packages). See the
677":ref:`ref-tasks-package_write_deb`", 655":ref:`ref-tasks-package_write_deb`",
678":ref:`ref-tasks-package_write_ipk`", 656":ref:`ref-tasks-package_write_ipk`",
679":ref:`ref-tasks-package_write_rpm`",
680and 657and
681":ref:`ref-tasks-package_write_tar`" 658":ref:`ref-tasks-package_write_rpm`"
682sections in the Yocto Project Reference Manual for additional 659sections in the Yocto Project Reference Manual for additional
683information. As an example, consider a scenario where an IPK packaging 660information. As an example, consider a scenario where an IPK packaging
684manager is being used and package architecture support for both i586 and 661manager is being used and there is package architecture support for both
685qemux86 exist. Packages for the i586 architecture are placed in 662i586 and qemux86. Packages for the i586 architecture are placed in
686``build/tmp/deploy/ipk/i586``, while packages for the qemux86 663``build/tmp/deploy/ipk/i586``, while packages for the qemux86
687architecture are placed in ``build/tmp/deploy/ipk/qemux86``. 664architecture are placed in ``build/tmp/deploy/ipk/qemux86``.
688 665
@@ -691,15 +668,15 @@ BitBake Tool
691 668
692The OpenEmbedded build system uses 669The OpenEmbedded build system uses
693:term:`BitBake` to produce images and 670:term:`BitBake` to produce images and
694Software Development Kits (SDKs). You can see from the `general workflow 671Software Development Kits (SDKs). You can see from the :ref:`general workflow
695figure <#general-workflow-figure>`__, the BitBake area consists of 672figure <overview-manual/concepts:openembedded build system concepts>`,
696several functional areas. This section takes a closer look at each of 673the BitBake area consists of several functional areas. This section takes a
697those areas. 674closer look at each of those areas.
698 675
699.. note:: 676.. note::
700 677
701 Separate documentation exists for the BitBake tool. See the 678 Documentation for the BitBake tool is available separately. See the
702 BitBake User Manual 679 :doc:`BitBake User Manual <bitbake:index>`
703 for reference material on BitBake. 680 for reference material on BitBake.
704 681
705Source Fetching 682Source Fetching
@@ -708,38 +685,31 @@ Source Fetching
708The first stages of building a recipe are to fetch and unpack the source 685The first stages of building a recipe are to fetch and unpack the source
709code: 686code:
710 687
711.. image:: figures/source-fetching.png 688.. image:: svg/source-fetching.*
712 :align: center 689 :width: 100%
713 690
714The :ref:`ref-tasks-fetch` and 691The :ref:`ref-tasks-fetch` and :ref:`ref-tasks-unpack` tasks fetch
715:ref:`ref-tasks-unpack` tasks fetch 692the source files and unpack them into the :term:`Build Directory`.
716the source files and unpack them into the
717:term:`Build Directory`.
718 693
719.. note:: 694.. note::
720 695
721 For every local file (e.g. 696 For every local file (e.g. ``file://``) that is part of a recipe's
722 file:// 697 :term:`SRC_URI` statement, the OpenEmbedded build system takes a
723 ) that is part of a recipe's 698 checksum of the file for the recipe and inserts the checksum into
724 SRC_URI 699 the signature for the :ref:`ref-tasks-fetch` task. If any local
725 statement, the OpenEmbedded build system takes a checksum of the file 700 file has been modified, the :ref:`ref-tasks-fetch` task and all
726 for the recipe and inserts the checksum into the signature for the 701 tasks that depend on it are re-executed.
727 do_fetch 702
728 task. If any local file has been modified, the 703By default, everything is accomplished in the :term:`Build Directory`, which has
729 do_fetch 704a defined structure. For additional general information on the
730 task and all tasks that depend on it are re-executed. 705:term:`Build Directory`, see the ":ref:`structure-core-build`" section in
731
732By default, everything is accomplished in the Build Directory, which has
733a defined structure. For additional general information on the Build
734Directory, see the ":ref:`structure-core-build`" section in
735the Yocto Project Reference Manual. 706the Yocto Project Reference Manual.
736 707
737Each recipe has an area in the Build Directory where the unpacked source 708Each recipe has an area in the :term:`Build Directory` where the unpacked
738code resides. The :term:`S` variable points 709source code resides. The :term:`UNPACKDIR` variable points to this area for a
739to this area for a recipe's unpacked source code. The name of that 710recipe's unpacked source code, and has the default ``sources`` name. The
740directory for any given recipe is defined from several different 711preceding figure and the following list describe the :term:`Build Directory`'s
741variables. The preceding figure and the following list describe the 712hierarchy:
742Build Directory's hierarchy:
743 713
744- :term:`TMPDIR`: The base directory 714- :term:`TMPDIR`: The base directory
745 where the OpenEmbedded build system performs all its work during the 715 where the OpenEmbedded build system performs all its work during the
@@ -749,7 +719,7 @@ Build Directory's hierarchy:
749 architecture of the built package or packages. Depending on the 719 architecture of the built package or packages. Depending on the
750 eventual destination of the package or packages (i.e. machine 720 eventual destination of the package or packages (i.e. machine
751 architecture, :term:`Build Host`, SDK, or 721 architecture, :term:`Build Host`, SDK, or
752 specific machine), ``PACKAGE_ARCH`` varies. See the variable's 722 specific machine), :term:`PACKAGE_ARCH` varies. See the variable's
753 description for details. 723 description for details.
754 724
755- :term:`TARGET_OS`: The operating 725- :term:`TARGET_OS`: The operating
@@ -758,7 +728,7 @@ Build Directory's hierarchy:
758 728
759- :term:`PN`: The name of the recipe used 729- :term:`PN`: The name of the recipe used
760 to build the package. This variable can have multiple meanings. 730 to build the package. This variable can have multiple meanings.
761 However, when used in the context of input files, ``PN`` represents 731 However, when used in the context of input files, :term:`PN` represents
762 the name of the recipe. 732 the name of the recipe.
763 733
764- :term:`WORKDIR`: The location 734- :term:`WORKDIR`: The location
@@ -768,27 +738,25 @@ Build Directory's hierarchy:
768 - :term:`PV`: The version of the 738 - :term:`PV`: The version of the
769 recipe used to build the package. 739 recipe used to build the package.
770 740
771 - :term:`PR`: The revision of the 741- :term:`UNPACKDIR`: Contains the unpacked source files for a given recipe.
772 recipe used to build the package.
773 742
774- :term:`S`: Contains the unpacked source 743- :term:`S`: Contains the final location of the source code.
775 files for a given recipe. 744
745 The default value for :term:`BP` is ``${BPN}-${PV}`` where:
776 746
777 - :term:`BPN`: The name of the recipe 747 - :term:`BPN`: The name of the recipe
778 used to build the package. The ``BPN`` variable is a version of 748 used to build the package. The :term:`BPN` variable is a version of
779 the ``PN`` variable but with common prefixes and suffixes removed. 749 the :term:`PN` variable but with common prefixes and suffixes removed.
780 750
781 - :term:`PV`: The version of the 751 - :term:`PV`: The version of the
782 recipe used to build the package. 752 recipe used to build the package.
783 753
784.. note:: 754.. note::
785 755
786 In the previous figure, notice that two sample hierarchies exist: one 756 In the previous figure, notice that there are two sample hierarchies:
787 based on package architecture (i.e. 757 one based on package architecture (i.e. :term:`PACKAGE_ARCH`)
788 PACKAGE_ARCH 758 and one based on a machine (i.e. :term:`MACHINE`).
789 ) and one based on a machine (i.e. 759 The underlying structures are identical. The differentiator being
790 MACHINE
791 ). The underlying structures are identical. The differentiator being
792 what the OpenEmbedded build system is using as a build target (e.g. 760 what the OpenEmbedded build system is using as a build target (e.g.
793 general architecture, a build host, an SDK, or a specific machine). 761 general architecture, a build host, an SDK, or a specific machine).
794 762
@@ -798,8 +766,8 @@ Patching
798Once source code is fetched and unpacked, BitBake locates patch files 766Once source code is fetched and unpacked, BitBake locates patch files
799and applies them to the source files: 767and applies them to the source files:
800 768
801.. image:: figures/patching.png 769.. image:: svg/patching.*
802 :align: center 770 :width: 100%
803 771
804The :ref:`ref-tasks-patch` task uses a 772The :ref:`ref-tasks-patch` task uses a
805recipe's :term:`SRC_URI` statements 773recipe's :term:`SRC_URI` statements
@@ -807,26 +775,26 @@ and the :term:`FILESPATH` variable
807to locate applicable patch files. 775to locate applicable patch files.
808 776
809Default processing for patch files assumes the files have either 777Default processing for patch files assumes the files have either
810``*.patch`` or ``*.diff`` file types. You can use ``SRC_URI`` parameters 778``*.patch`` or ``*.diff`` file types. You can use :term:`SRC_URI` parameters
811to change the way the build system recognizes patch files. See the 779to change the way the build system recognizes patch files. See the
812:ref:`ref-tasks-patch` task for more 780:ref:`ref-tasks-patch` task for more
813information. 781information.
814 782
815BitBake finds and applies multiple patches for a single recipe in the 783BitBake finds and applies multiple patches for a single recipe in the
816order in which it locates the patches. The ``FILESPATH`` variable 784order in which it locates the patches. The :term:`FILESPATH` variable
817defines the default set of directories that the build system uses to 785defines the default set of directories that the build system uses to
818search for patch files. Once found, patches are applied to the recipe's 786search for patch files. Once found, patches are applied to the recipe's
819source files, which are located in the 787source files, which are located in the
820:term:`S` directory. 788:term:`S` directory.
821 789
822For more information on how the source directories are created, see the 790For more information on how the source directories are created, see the
823"`Source Fetching <#source-fetching-dev-environment>`__" section. For 791":ref:`overview-manual/concepts:source fetching`" section. For
824more information on how to create patches and how the build system 792more information on how to create patches and how the build system
825processes patches, see the 793processes patches, see the
826":ref:`dev-manual/common-tasks:patching code`" 794":ref:`dev-manual/new-recipe:patching code`"
827section in the 795section in the
828Yocto Project Development Tasks Manual. You can also see the 796Yocto Project Development Tasks Manual. You can also see the
829":ref:`sdk-manual/extensible:use \`\`devtool modify\`\` to modify the source of an existing component`" 797":ref:`dev-manual/devtool:use \`\`devtool modify\`\` to modify the source of an existing component`"
830section in the Yocto Project Application Development and the Extensible 798section in the Yocto Project Application Development and the Extensible
831Software Development Kit (SDK) manual and the 799Software Development Kit (SDK) manual and the
832":ref:`kernel-dev/common:using traditional kernel development to patch the kernel`" 800":ref:`kernel-dev/common:using traditional kernel development to patch the kernel`"
@@ -839,8 +807,8 @@ After source code is patched, BitBake executes tasks that configure and
839compile the source code. Once compilation occurs, the files are copied 807compile the source code. Once compilation occurs, the files are copied
840to a holding area (staged) in preparation for packaging: 808to a holding area (staged) in preparation for packaging:
841 809
842.. image:: figures/configuration-compile-autoreconf.png 810.. image:: svg/configuration-compile-autoreconf.*
843 :align: center 811 :width: 100%
844 812
845This step in the build process consists of the following tasks: 813This step in the build process consists of the following tasks:
846 814
@@ -866,27 +834,25 @@ This step in the build process consists of the following tasks:
866 are specific to configurations for the source code being built by the 834 are specific to configurations for the source code being built by the
867 recipe. 835 recipe.
868 836
869 If you are using the 837 If you are using the :ref:`ref-classes-autotools` class,
870 :ref:`autotools <ref-classes-autotools>` class,
871 you can add additional configuration options by using the 838 you can add additional configuration options by using the
872 :term:`EXTRA_OECONF` or 839 :term:`EXTRA_OECONF` or
873 :term:`PACKAGECONFIG_CONFARGS` 840 :term:`PACKAGECONFIG_CONFARGS`
874 variables. For information on how this variable works within that 841 variables. For information on how this variable works within that
875 class, see the 842 class, see the :ref:`ref-classes-autotools` class
876 :ref:`autotools <ref-classes-autotools>` class 843 :yocto_git:`here </poky/tree/meta/classes-recipe/autotools.bbclass>`.
877 :yocto_git:`here </poky/tree/meta/classes/autotools.bbclass>`.
878 844
879- *do_compile*: Once a configuration task has been satisfied, 845- *do_compile*: Once a configuration task has been satisfied,
880 BitBake compiles the source using the 846 BitBake compiles the source using the
881 :ref:`ref-tasks-compile` task. 847 :ref:`ref-tasks-compile` task.
882 Compilation occurs in the directory pointed to by the 848 Compilation occurs in the directory pointed to by the
883 :term:`B` variable. Realize that the 849 :term:`B` variable. Realize that the
884 ``B`` directory is, by default, the same as the 850 :term:`B` directory is, by default, the same as the
885 :term:`S` directory. 851 :term:`S` directory.
886 852
887- *do_install*: After compilation completes, BitBake executes the 853- *do_install*: After compilation completes, BitBake executes the
888 :ref:`ref-tasks-install` task. 854 :ref:`ref-tasks-install` task.
889 This task copies files from the ``B`` directory and places them in a 855 This task copies files from the :term:`B` directory and places them in a
890 holding area pointed to by the :term:`D` 856 holding area pointed to by the :term:`D`
891 variable. Packaging occurs later using files from this holding 857 variable. Packaging occurs later using files from this holding
892 directory. 858 directory.
@@ -897,8 +863,8 @@ Package Splitting
897After source code is configured, compiled, and staged, the build system 863After source code is configured, compiled, and staged, the build system
898analyzes the results and splits the output into packages: 864analyzes the results and splits the output into packages:
899 865
900.. image:: figures/analysis-for-package-splitting.png 866.. image:: svg/analysis-for-package-splitting.*
901 :align: center 867 :width: 100%
902 868
903The :ref:`ref-tasks-package` and 869The :ref:`ref-tasks-package` and
904:ref:`ref-tasks-packagedata` 870:ref:`ref-tasks-packagedata`
@@ -909,7 +875,7 @@ following as well as other items: splitting out debugging symbols,
909looking at shared library dependencies between packages, and looking at 875looking at shared library dependencies between packages, and looking at
910package relationships. 876package relationships.
911 877
912The ``do_packagedata`` task creates package metadata based on the 878The :ref:`ref-tasks-packagedata` task creates package metadata based on the
913analysis such that the build system can generate the final packages. The 879analysis such that the build system can generate the final packages. The
914:ref:`ref-tasks-populate_sysroot` 880:ref:`ref-tasks-populate_sysroot`
915task stages (copies) a subset of the files installed by the 881task stages (copies) a subset of the files installed by the
@@ -922,7 +888,7 @@ the analysis and package splitting process use several areas:
922 individual packages. 888 individual packages.
923 889
924- :term:`PKGDESTWORK`: A 890- :term:`PKGDESTWORK`: A
925 temporary work area (i.e. ``pkgdata``) used by the ``do_package`` 891 temporary work area (i.e. ``pkgdata``) used by the :ref:`ref-tasks-package`
926 task to save package metadata. 892 task to save package metadata.
927 893
928- :term:`PKGDEST`: The parent 894- :term:`PKGDEST`: The parent
@@ -932,7 +898,7 @@ the analysis and package splitting process use several areas:
932- :term:`PKGDATA_DIR`: A shared, 898- :term:`PKGDATA_DIR`: A shared,
933 global-state directory that holds packaging metadata generated during 899 global-state directory that holds packaging metadata generated during
934 the packaging process. The packaging process copies metadata from 900 the packaging process. The packaging process copies metadata from
935 ``PKGDESTWORK`` to the ``PKGDATA_DIR`` area where it becomes globally 901 :term:`PKGDESTWORK` to the :term:`PKGDATA_DIR` area where it becomes globally
936 available. 902 available.
937 903
938- :term:`STAGING_DIR_HOST`: 904- :term:`STAGING_DIR_HOST`:
@@ -946,25 +912,75 @@ the analysis and package splitting process use several areas:
946- :term:`STAGING_DIR_TARGET`: 912- :term:`STAGING_DIR_TARGET`:
947 The path for the sysroot used when a component that is built to 913 The path for the sysroot used when a component that is built to
948 execute on a system and it generates code for yet another machine 914 execute on a system and it generates code for yet another machine
949 (e.g. cross-canadian recipes). 915 (e.g. :ref:`ref-classes-cross-canadian` recipes).
916
917Packages for a recipe are listed in the :term:`PACKAGES` variable. The
918:oe_git:`bitbake.conf </openembedded-core/tree/meta/conf/bitbake.conf>`
919configuration file defines the following default list of packages::
920
921 PACKAGES = "${PN}-src ${PN}-dbg ${PN}-staticdev ${PN}-dev ${PN}-doc ${PN}-locale ${PACKAGE_BEFORE_PN} ${PN}"
922
923Each of these packages contains a default list of files defined with the
924:term:`FILES` variable. For example, the package ``${PN}-dev`` represents files
925useful to the development of applications depending on ``${PN}``. The default
926list of files for ``${PN}-dev``, also defined in :oe_git:`bitbake.conf
927</openembedded-core/tree/meta/conf/bitbake.conf>`, is defined as follows::
928
929 FILES:${PN}-dev = "${includedir} ${FILES_SOLIBSDEV} ${libdir}/*.la \
930 ${libdir}/*.o ${libdir}/pkgconfig ${datadir}/pkgconfig \
931 ${datadir}/aclocal ${base_libdir}/*.o \
932 ${libdir}/${BPN}/*.la ${base_libdir}/*.la \
933 ${libdir}/cmake ${datadir}/cmake"
934
935The paths in this list must be *absolute* paths from the point of view of the
936root filesystem on the target, and must *not* make a reference to the variable
937:term:`D` or any :term:`WORKDIR` related variable. A correct example would be::
938
939 ${sysconfdir}/foo.conf
940
941.. note::
942
943 The list of files for a package is defined using the override syntax by
944 separating :term:`FILES` and the package name by a semi-colon (``:``).
945
946A given file can only ever be in one package. By iterating from the leftmost to
947rightmost package in :term:`PACKAGES`, each file matching one of the patterns
948defined in the corresponding :term:`FILES` definition is included in the
949package.
950
951.. note::
952
953 To find out which package installs a file, the ``oe-pkgdata-util``
954 command-line utility can be used::
955
956 $ oe-pkgdata-util find-path '/etc/fstab'
957 base-files: /etc/fstab
958
959 For more information on the ``oe-pkgdata-util`` utility, see the section
960 :ref:`dev-manual/debugging:Viewing Package Information with
961 ``oe-pkgdata-util``` of the Yocto Project Development Tasks Manual.
962
963To add a custom package variant of the ``${PN}`` recipe named
964``${PN}-extra`` (name is arbitrary), one can add it to the
965:term:`PACKAGE_BEFORE_PN` variable::
950 966
951The :term:`FILES` variable defines the 967 PACKAGE_BEFORE_PN += "${PN}-extra"
952files that go into each package in 968
953:term:`PACKAGES`. If you want 969Alternatively, a custom package can be added by adding it to the
954details on how this is accomplished, you can look at 970:term:`PACKAGES` variable using the prepend operator (``=+``)::
955:yocto_git:`package.bbclass </poky/tree/meta/classes/package.bbclass>`. 971
972 PACKAGES =+ "${PN}-extra"
956 973
957Depending on the type of packages being created (RPM, DEB, or IPK), the 974Depending on the type of packages being created (RPM, DEB, or IPK), the
958:ref:`do_package_write_* <ref-tasks-package_write_deb>` 975:ref:`do_package_write_* <ref-tasks-package_write_deb>`
959task creates the actual packages and places them in the Package Feed 976task creates the actual packages and places them in the Package Feed
960area, which is ``${TMPDIR}/deploy``. You can see the "`Package 977area, which is ``${TMPDIR}/deploy``. You can see the
961Feeds <#package-feeds-dev-environment>`__" section for more detail on 978":ref:`overview-manual/concepts:package feeds`" section for more detail on
962that part of the build process. 979that part of the build process.
963 980
964.. note:: 981.. note::
965 982
966 Support for creating feeds directly from the 983 Support for creating feeds directly from the ``deploy/*``
967 deploy/\*
968 directories does not exist. Creating such feeds usually requires some 984 directories does not exist. Creating such feeds usually requires some
969 kind of feed maintenance mechanism that would upload the new packages 985 kind of feed maintenance mechanism that would upload the new packages
970 into an official package feed (e.g. the Ångström distribution). This 986 into an official package feed (e.g. the Ångström distribution). This
@@ -978,7 +994,7 @@ Once packages are split and stored in the Package Feeds area, the build
978system uses BitBake to generate the root filesystem image: 994system uses BitBake to generate the root filesystem image:
979 995
980.. image:: figures/image-generation.png 996.. image:: figures/image-generation.png
981 :align: center 997 :width: 100%
982 998
983The image generation process consists of several stages and depends on 999The image generation process consists of several stages and depends on
984several tasks and variables. The 1000several tasks and variables. The
@@ -1013,7 +1029,7 @@ actually install:
1013 1029
1014With :term:`IMAGE_ROOTFS` 1030With :term:`IMAGE_ROOTFS`
1015pointing to the location of the filesystem under construction and the 1031pointing to the location of the filesystem under construction and the
1016``PACKAGE_INSTALL`` variable providing the final list of packages to 1032:term:`PACKAGE_INSTALL` variable providing the final list of packages to
1017install, the root file system is created. 1033install, the root file system is created.
1018 1034
1019Package installation is under control of the package manager (e.g. 1035Package installation is under control of the package manager (e.g.
@@ -1024,29 +1040,25 @@ data files are deleted from the root filesystem. As part of the final
1024stage of package installation, post installation scripts that are part 1040stage of package installation, post installation scripts that are part
1025of the packages are run. Any scripts that fail to run on the build host 1041of the packages are run. Any scripts that fail to run on the build host
1026are run on the target when the target system is first booted. If you are 1042are run on the target when the target system is first booted. If you are
1027using a 1043using a
1028:ref:`read-only root filesystem <dev-manual/common-tasks:creating a read-only root filesystem>`, 1044:ref:`read-only root filesystem <dev-manual/read-only-rootfs:creating a read-only root filesystem>`,
1029all the post installation scripts must succeed on the build host during 1045all the post installation scripts must succeed on the build host during
1030the package installation phase since the root filesystem on the target 1046the package installation phase since the root filesystem on the target
1031is read-only. 1047is read-only.
1032 1048
1033The final stages of the ``do_rootfs`` task handle post processing. Post 1049The final stages of the :ref:`ref-tasks-rootfs` task handle post processing. Post
1034processing includes creation of a manifest file and optimizations. 1050processing includes creation of a manifest file and optimizations.
1035 1051
1036The manifest file (``.manifest``) resides in the same directory as the 1052The manifest file (``.manifest``) resides in the same directory as the root
1037root filesystem image. This file lists out, line-by-line, the installed 1053filesystem image. This file lists out, line-by-line, the installed packages.
1038packages. The manifest file is useful for the 1054The manifest file is useful for the :ref:`ref-classes-testimage` class,
1039:ref:`testimage <ref-classes-testimage*>` class,
1040for example, to determine whether or not to run specific tests. See the 1055for example, to determine whether or not to run specific tests. See the
1041:term:`IMAGE_MANIFEST` 1056:term:`IMAGE_MANIFEST` variable for additional information.
1042variable for additional information.
1043 1057
1044Optimizing processes that are run across the image include ``mklibs``, 1058Optimizing processes that are run across the image include ``mklibs``
1045``prelink``, and any other post-processing commands as defined by the 1059and any other post-processing commands as defined by the
1046:term:`ROOTFS_POSTPROCESS_COMMAND` 1060:term:`ROOTFS_POSTPROCESS_COMMAND`
1047variable. The ``mklibs`` process optimizes the size of the libraries, 1061variable. The ``mklibs`` process optimizes the size of the libraries.
1048while the ``prelink`` process optimizes the dynamic linking of shared
1049libraries to reduce start up time of executables.
1050 1062
1051After the root filesystem is built, processing begins on the image 1063After the root filesystem is built, processing begins on the image
1052through the :ref:`ref-tasks-image` 1064through the :ref:`ref-tasks-image`
@@ -1056,25 +1068,23 @@ the
1056variable. This variable specifies a list of functions to call before the 1068variable. This variable specifies a list of functions to call before the
1057build system creates the final image output files. 1069build system creates the final image output files.
1058 1070
1059The build system dynamically creates ``do_image_*`` tasks as needed, 1071The build system dynamically creates :ref:`do_image_* <ref-tasks-image>` tasks as needed,
1060based on the image types specified in the 1072based on the image types specified in the
1061:term:`IMAGE_FSTYPES` variable. 1073:term:`IMAGE_FSTYPES` variable.
1062The process turns everything into an image file or a set of image files 1074The process turns everything into an image file or a set of image files
1063and can compress the root filesystem image to reduce the overall size of 1075and can compress the root filesystem image to reduce the overall size of
1064the image. The formats used for the root filesystem depend on the 1076the image. The formats used for the root filesystem depend on the
1065``IMAGE_FSTYPES`` variable. Compression depends on whether the formats 1077:term:`IMAGE_FSTYPES` variable. Compression depends on whether the formats
1066support compression. 1078support compression.
1067 1079
1068As an example, a dynamically created task when creating a particular 1080As an example, a dynamically created task when creating a particular
1069image type would take the following form: 1081image type would take the following form::
1070::
1071 1082
1072 do_image_type 1083 do_image_type
1073 1084
1074So, if the type 1085So, if the type
1075as specified by the ``IMAGE_FSTYPES`` were ``ext4``, the dynamically 1086as specified by the :term:`IMAGE_FSTYPES` were ``ext4``, the dynamically
1076generated task would be as follows: 1087generated task would be as follows::
1077::
1078 1088
1079 do_image_ext4 1089 do_image_ext4
1080 1090
@@ -1100,14 +1110,14 @@ Development Kit (SDK) installer scripts for both the standard SDK and
1100the extensible SDK (eSDK): 1110the extensible SDK (eSDK):
1101 1111
1102.. image:: figures/sdk-generation.png 1112.. image:: figures/sdk-generation.png
1103 :align: center 1113 :width: 100%
1104 1114
1105.. note:: 1115.. note::
1106 1116
1107 For more information on the cross-development toolchain generation, 1117 For more information on the cross-development toolchain generation,
1108 see the ":ref:`overview-manual/concepts:cross-development toolchain generation`" 1118 see the ":ref:`overview-manual/concepts:cross-development toolchain generation`"
1109 section. For information on advantages gained when building a 1119 section. For information on advantages gained when building a
1110 cross-development toolchain using the do_populate_sdk task, see the 1120 cross-development toolchain using the :ref:`ref-tasks-populate_sdk` task, see the
1111 ":ref:`sdk-manual/appendix-obtain:building an sdk installer`" section in 1121 ":ref:`sdk-manual/appendix-obtain:building an sdk installer`" section in
1112 the Yocto Project Application Development and the Extensible Software 1122 the Yocto Project Application Development and the Extensible Software
1113 Development Kit (eSDK) manual. 1123 Development Kit (eSDK) manual.
@@ -1119,16 +1129,16 @@ and
1119:ref:`ref-tasks-populate_sdk_ext` 1129:ref:`ref-tasks-populate_sdk_ext`
1120tasks use these key variables to help create the list of packages to 1130tasks use these key variables to help create the list of packages to
1121actually install. For information on the variables listed in the figure, 1131actually install. For information on the variables listed in the figure,
1122see the "`Application Development SDK <#sdk-dev-environment>`__" 1132see the ":ref:`overview-manual/concepts:application development sdk`"
1123section. 1133section.
1124 1134
1125The ``do_populate_sdk`` task helps create the standard SDK and handles 1135The :ref:`ref-tasks-populate_sdk` task helps create the standard SDK and handles
1126two parts: a target part and a host part. The target part is the part 1136two parts: a target part and a host part. The target part is the part
1127built for the target hardware and includes libraries and headers. The 1137built for the target hardware and includes libraries and headers. The
1128host part is the part of the SDK that runs on the 1138host part is the part of the SDK that runs on the
1129:term:`SDKMACHINE`. 1139:term:`SDKMACHINE`.
1130 1140
1131The ``do_populate_sdk_ext`` task helps create the extensible SDK and 1141The :ref:`ref-tasks-populate_sdk_ext` task helps create the extensible SDK and
1132handles host and target parts differently than its counter part does for 1142handles host and target parts differently than its counter part does for
1133the standard SDK. For the extensible SDK, the task encapsulates the 1143the standard SDK. For the extensible SDK, the task encapsulates the
1134build system, which includes everything needed (host and target) for the 1144build system, which includes everything needed (host and target) for the
@@ -1147,28 +1157,27 @@ For each task that completes successfully, BitBake writes a stamp file
1147into the :term:`STAMPS_DIR` 1157into the :term:`STAMPS_DIR`
1148directory. The beginning of the stamp file's filename is determined by 1158directory. The beginning of the stamp file's filename is determined by
1149the :term:`STAMP` variable, and the end 1159the :term:`STAMP` variable, and the end
1150of the name consists of the task's name and current `input 1160of the name consists of the task's name and current :ref:`input
1151checksum <#overview-checksums>`__. 1161checksum <overview-manual/concepts:checksums (signatures)>`.
1152 1162
1153.. note:: 1163.. note::
1154 1164
1155 This naming scheme assumes that 1165 This naming scheme assumes that :term:`BB_SIGNATURE_HANDLER`
1156 BB_SIGNATURE_HANDLER
1157 is "OEBasicHash", which is almost always the case in current 1166 is "OEBasicHash", which is almost always the case in current
1158 OpenEmbedded. 1167 OpenEmbedded.
1159 1168
1160To determine if a task needs to be rerun, BitBake checks if a stamp file 1169To determine if a task needs to be rerun, BitBake checks if a stamp file
1161with a matching input checksum exists for the task. If such a stamp file 1170with a matching input checksum exists for the task. In this case,
1162exists, the task's output is assumed to exist and still be valid. If the 1171the task's output is assumed to exist and still be valid. Otherwise,
1163file does not exist, the task is rerun. 1172the task is rerun.
1164 1173
1165.. note:: 1174.. note::
1166 1175
1167 The stamp mechanism is more general than the shared state (sstate) 1176 The stamp mechanism is more general than the shared state (sstate)
1168 cache mechanism described in the "`Setscene Tasks and Shared 1177 cache mechanism described in the
1169 State <#setscene-tasks-and-shared-state>`__" section. BitBake avoids 1178 ":ref:`overview-manual/concepts:setscene tasks and shared state`" section.
1170 rerunning any task that has a valid stamp file, not just tasks that 1179 BitBake avoids rerunning any task that has a valid stamp file, not just
1171 can be accelerated through the sstate cache. 1180 tasks that can be accelerated through the sstate cache.
1172 1181
1173 However, you should realize that stamp files only serve as a marker 1182 However, you should realize that stamp files only serve as a marker
1174 that some work has been done and that these files do not record task 1183 that some work has been done and that these files do not record task
@@ -1178,17 +1187,17 @@ file does not exist, the task is rerun.
1178 the sstate cache mechanism adds is a way to cache task output that 1187 the sstate cache mechanism adds is a way to cache task output that
1179 can then be shared between build machines. 1188 can then be shared between build machines.
1180 1189
1181Since ``STAMPS_DIR`` is usually a subdirectory of ``TMPDIR``, removing 1190Since :term:`STAMPS_DIR` is usually a subdirectory of :term:`TMPDIR`, removing
1182``TMPDIR`` will also remove ``STAMPS_DIR``, which means tasks will 1191:term:`TMPDIR` will also remove :term:`STAMPS_DIR`, which means tasks will
1183properly be rerun to repopulate ``TMPDIR``. 1192properly be rerun to repopulate :term:`TMPDIR`.
1184 1193
1185If you want some task to always be considered "out of date", you can 1194If you want some task to always be considered "out of date", you can
1186mark it with the :ref:`nostamp <bitbake:bitbake-user-manual/bitbake-user-manual-metadata:variable flags>` 1195mark it with the :ref:`nostamp <bitbake-user-manual/bitbake-user-manual-metadata:variable flags>`
1187varflag. If some other task depends on such a task, then that task will 1196varflag. If some other task depends on such a task, then that task will
1188also always be considered out of date, which might not be what you want. 1197also always be considered out of date, which might not be what you want.
1189 1198
1190For details on how to view information about a task's signature, see the 1199For details on how to view information about a task's signature, see the
1191":ref:`dev-manual/common-tasks:viewing task variable dependencies`" 1200":ref:`dev-manual/debugging:viewing task variable dependencies`"
1192section in the Yocto Project Development Tasks Manual. 1201section in the Yocto Project Development Tasks Manual.
1193 1202
1194Setscene Tasks and Shared State 1203Setscene Tasks and Shared State
@@ -1207,7 +1216,7 @@ usually made available in the form of a shared state (sstate) cache.
1207 :term:`SSTATE_MIRRORS` 1216 :term:`SSTATE_MIRRORS`
1208 variables. 1217 variables.
1209 1218
1210The idea of a setscene task (i.e ``do_``\ taskname\ ``_setscene``) is a 1219The idea of a setscene task (i.e ``do_taskname_setscene``) is a
1211version of the task where instead of building something, BitBake can 1220version of the task where instead of building something, BitBake can
1212skip to the end result and simply place a set of files into specific 1221skip to the end result and simply place a set of files into specific
1213locations as needed. In some cases, it makes sense to have a setscene 1222locations as needed. In some cases, it makes sense to have a setscene
@@ -1220,7 +1229,7 @@ the work involved would be equal to or greater than the underlying task.
1220 1229
1221In the build system, the common tasks that have setscene variants are 1230In the build system, the common tasks that have setscene variants are
1222:ref:`ref-tasks-package`, 1231:ref:`ref-tasks-package`,
1223``do_package_write_*``, 1232:ref:`do_package_write_* <ref-tasks-package_write_deb>`,
1224:ref:`ref-tasks-deploy`, 1233:ref:`ref-tasks-deploy`,
1225:ref:`ref-tasks-packagedata`, and 1234:ref:`ref-tasks-packagedata`, and
1226:ref:`ref-tasks-populate_sysroot`. 1235:ref:`ref-tasks-populate_sysroot`.
@@ -1230,20 +1239,20 @@ end result.
1230The build system has knowledge of the relationship between these tasks 1239The build system has knowledge of the relationship between these tasks
1231and other preceding tasks. For example, if BitBake runs 1240and other preceding tasks. For example, if BitBake runs
1232``do_populate_sysroot_setscene`` for something, it does not make sense 1241``do_populate_sysroot_setscene`` for something, it does not make sense
1233to run any of the ``do_fetch``, ``do_unpack``, ``do_patch``, 1242to run any of the :ref:`ref-tasks-fetch`, :ref:`ref-tasks-unpack`, :ref:`ref-tasks-patch`,
1234``do_configure``, ``do_compile``, and ``do_install`` tasks. However, if 1243:ref:`ref-tasks-configure`, :ref:`ref-tasks-compile`, and :ref:`ref-tasks-install` tasks. However, if
1235``do_package`` needs to be run, BitBake needs to run those other tasks. 1244:ref:`ref-tasks-package` needs to be run, BitBake needs to run those other tasks.
1236 1245
1237It becomes more complicated if everything can come from an sstate cache 1246It becomes more complicated if everything can come from an sstate cache
1238because some objects are simply not required at all. For example, you do 1247because some objects are simply not required at all. For example, you do
1239not need a compiler or native tools, such as quilt, if nothing exists to 1248not need a compiler or native tools, such as quilt, if there isn't anything
1240compile or patch. If the ``do_package_write_*`` packages are available 1249to compile or patch. If the :ref:`do_package_write_* <ref-tasks-package_write_deb>` packages are available
1241from sstate, BitBake does not need the ``do_package`` task data. 1250from sstate, BitBake does not need the :ref:`ref-tasks-package` task data.
1242 1251
1243To handle all these complexities, BitBake runs in two phases. The first 1252To handle all these complexities, BitBake runs in two phases. The first
1244is the "setscene" stage. During this stage, BitBake first checks the 1253is the "setscene" stage. During this stage, BitBake first checks the
1245sstate cache for any targets it is planning to build. BitBake does a 1254sstate cache for any targets it is planning to build. BitBake does a
1246fast check to see if the object exists rather than a complete download. 1255fast check to see if the object exists rather than doing a complete download.
1247If nothing exists, the second phase, which is the setscene stage, 1256If nothing exists, the second phase, which is the setscene stage,
1248completes and the main build proceeds. 1257completes and the main build proceeds.
1249 1258
@@ -1257,11 +1266,9 @@ download or setscene task fails, the build system then tries to install
1257dependencies, such as the compiler, from the cache. 1266dependencies, such as the compiler, from the cache.
1258 1267
1259The availability of objects in the sstate cache is handled by the 1268The availability of objects in the sstate cache is handled by the
1260function specified by the 1269function specified by the :term:`BB_HASHCHECK_FUNCTION`
1261:term:`bitbake:BB_HASHCHECK_FUNCTION`
1262variable and returns a list of available objects. The function specified 1270variable and returns a list of available objects. The function specified
1263by the 1271by the :term:`BB_SETSCENE_DEPVALID`
1264:term:`bitbake:BB_SETSCENE_DEPVALID`
1265variable is the function that determines whether a given dependency 1272variable is the function that determines whether a given dependency
1266needs to be followed, and whether for any given relationship the 1273needs to be followed, and whether for any given relationship the
1267function needs to be passed. The function returns a True or False value. 1274function needs to be passed. The function returns a True or False value.
@@ -1271,12 +1278,14 @@ Images
1271 1278
1272The images produced by the build system are compressed forms of the root 1279The images produced by the build system are compressed forms of the root
1273filesystem and are ready to boot on a target device. You can see from 1280filesystem and are ready to boot on a target device. You can see from
1274the `general workflow figure <#general-workflow-figure>`__ that BitBake 1281the :ref:`general workflow figure
1282<overview-manual/concepts:openembedded build system concepts>` that BitBake
1275output, in part, consists of images. This section takes a closer look at 1283output, in part, consists of images. This section takes a closer look at
1276this output: 1284this output:
1277 1285
1278.. image:: figures/images.png 1286.. image:: figures/images.png
1279 :align: center 1287 :align: center
1288 :width: 75%
1280 1289
1281.. note:: 1290.. note::
1282 1291
@@ -1284,15 +1293,12 @@ this output:
1284 ":doc:`/ref-manual/images`" chapter in the Yocto Project Reference 1293 ":doc:`/ref-manual/images`" chapter in the Yocto Project Reference
1285 Manual. 1294 Manual.
1286 1295
1287The build process writes images out to the :term:`Build Directory` 1296The build process writes images out to the :term:`Build Directory` inside
1288inside the 1297the ``tmp/deploy/images/machine/`` folder as shown in the figure. This
1289``tmp/deploy/images/machine/`` folder as shown in the figure. This
1290folder contains any files expected to be loaded on the target device. 1298folder contains any files expected to be loaded on the target device.
1291The :term:`DEPLOY_DIR` variable 1299The :term:`DEPLOY_DIR` variable points to the ``deploy`` directory, while the
1292points to the ``deploy`` directory, while the 1300:term:`DEPLOY_DIR_IMAGE` variable points to the appropriate directory
1293:term:`DEPLOY_DIR_IMAGE` 1301containing images for the current configuration.
1294variable points to the appropriate directory containing images for the
1295current configuration.
1296 1302
1297- kernel-image: A kernel binary file. The 1303- kernel-image: A kernel binary file. The
1298 :term:`KERNEL_IMAGETYPE` 1304 :term:`KERNEL_IMAGETYPE`
@@ -1327,7 +1333,8 @@ current configuration.
1327Application Development SDK 1333Application Development SDK
1328--------------------------- 1334---------------------------
1329 1335
1330In the `general workflow figure <#general-workflow-figure>`__, the 1336In the :ref:`general workflow figure
1337<overview-manual/concepts:openembedded build system concepts>`, the
1331output labeled "Application Development SDK" represents an SDK. The SDK 1338output labeled "Application Development SDK" represents an SDK. The SDK
1332generation process differs depending on whether you build an extensible 1339generation process differs depending on whether you build an extensible
1333SDK (e.g. ``bitbake -c populate_sdk_ext`` imagename) or a standard SDK 1340SDK (e.g. ``bitbake -c populate_sdk_ext`` imagename) or a standard SDK
@@ -1335,7 +1342,7 @@ SDK (e.g. ``bitbake -c populate_sdk_ext`` imagename) or a standard SDK
1335closer look at this output: 1342closer look at this output:
1336 1343
1337.. image:: figures/sdk.png 1344.. image:: figures/sdk.png
1338 :align: center 1345 :width: 100%
1339 1346
1340The specific form of this output is a set of files that includes a 1347The specific form of this output is a set of files that includes a
1341self-extracting SDK installer (``*.sh``), host and target manifest 1348self-extracting SDK installer (``*.sh``), host and target manifest
@@ -1357,18 +1364,17 @@ can initialize the environment before using the tools.
1357 your own SDK installer. 1364 your own SDK installer.
1358 1365
1359 - For background information on cross-development toolchains in the 1366 - For background information on cross-development toolchains in the
1360 Yocto Project development environment, see the "`Cross-Development 1367 Yocto Project development environment, see the
1361 Toolchain Generation <#cross-development-toolchain-generation>`__" 1368 ":ref:`overview-manual/concepts:cross-development toolchain generation`"
1362 section. 1369 section.
1363 1370
1364 - For information on setting up a cross-development environment, see 1371 - For information on setting up a cross-development environment, see
1365 the :doc:`/sdk-manual/index` manual. 1372 the :doc:`/sdk-manual/index` manual.
1366 1373
1367All the output files for an SDK are written to the ``deploy/sdk`` folder 1374All the output files for an SDK are written to the ``deploy/sdk`` folder
1368inside the :term:`Build Directory` as 1375inside the :term:`Build Directory` as shown in the previous figure. Depending
1369shown in the previous figure. Depending on the type of SDK, several 1376on the type of SDK, there are several variables to configure these files.
1370variables exist that help configure these files. The following list 1377The variables associated with an extensible SDK are:
1371shows the variables associated with an extensible SDK:
1372 1378
1373- :term:`DEPLOY_DIR`: Points to 1379- :term:`DEPLOY_DIR`: Points to
1374 the ``deploy`` directory. 1380 the ``deploy`` directory.
@@ -1386,15 +1392,15 @@ shows the variables associated with an extensible SDK:
1386 Specifies whether or not the toolchain is included when building the 1392 Specifies whether or not the toolchain is included when building the
1387 extensible SDK. 1393 extensible SDK.
1388 1394
1389- :term:`SDK_LOCAL_CONF_WHITELIST`: 1395- :term:`ESDK_LOCALCONF_ALLOW`:
1390 A list of variables allowed through from the build system 1396 A list of variables allowed through from the build system
1391 configuration into the extensible SDK configuration. 1397 configuration into the extensible SDK configuration.
1392 1398
1393- :term:`SDK_LOCAL_CONF_BLACKLIST`: 1399- :term:`ESDK_LOCALCONF_REMOVE`:
1394 A list of variables not allowed through from the build system 1400 A list of variables not allowed through from the build system
1395 configuration into the extensible SDK configuration. 1401 configuration into the extensible SDK configuration.
1396 1402
1397- :term:`SDK_INHERIT_BLACKLIST`: 1403- :term:`ESDK_CLASS_INHERIT_DISABLE`:
1398 A list of classes to remove from the 1404 A list of classes to remove from the
1399 :term:`INHERIT` value globally 1405 :term:`INHERIT` value globally
1400 within the extensible SDK configuration. 1406 within the extensible SDK configuration.
@@ -1413,7 +1419,7 @@ This next list, shows the variables associated with a standard SDK:
1413 1419
1414- :term:`TOOLCHAIN_HOST_TASK`: 1420- :term:`TOOLCHAIN_HOST_TASK`:
1415 Lists packages that make up the host part of the SDK (i.e. the part 1421 Lists packages that make up the host part of the SDK (i.e. the part
1416 that runs on the ``SDKMACHINE``). When you use 1422 that runs on the :term:`SDKMACHINE`). When you use
1417 ``bitbake -c populate_sdk imagename`` to create the SDK, a set of 1423 ``bitbake -c populate_sdk imagename`` to create the SDK, a set of
1418 default packages apply. This variable allows you to add more 1424 default packages apply. This variable allows you to add more
1419 packages. 1425 packages.
@@ -1422,7 +1428,7 @@ This next list, shows the variables associated with a standard SDK:
1422 Lists packages that make up the target part of the SDK (i.e. the part 1428 Lists packages that make up the target part of the SDK (i.e. the part
1423 built for the target hardware). 1429 built for the target hardware).
1424 1430
1425- :term:`SDKPATH`: Defines the 1431- :term:`SDKPATHINSTALL`: Defines the
1426 default SDK installation path offered by the installation script. 1432 default SDK installation path offered by the installation script.
1427 1433
1428- :term:`SDK_HOST_MANIFEST`: 1434- :term:`SDK_HOST_MANIFEST`:
@@ -1453,10 +1459,10 @@ The following figure shows a high-level build environment regarding
1453toolchain construction and use. 1459toolchain construction and use.
1454 1460
1455.. image:: figures/cross-development-toolchains.png 1461.. image:: figures/cross-development-toolchains.png
1456 :align: center 1462 :width: 100%
1457 1463
1458Most of the work occurs on the Build Host. This is the machine used to 1464Most of the work occurs on the Build Host. This is the machine used to
1459build images and generally work within the the Yocto Project 1465build images and generally work within the Yocto Project
1460environment. When you run 1466environment. When you run
1461:term:`BitBake` to create an image, the 1467:term:`BitBake` to create an image, the
1462OpenEmbedded build system uses the host ``gcc`` compiler to bootstrap a 1468OpenEmbedded build system uses the host ``gcc`` compiler to bootstrap a
@@ -1467,15 +1473,11 @@ cross-compiler that is used internally within BitBake only.
1467 1473
1468.. note:: 1474.. note::
1469 1475
1470 The extensible SDK does not use 1476 The extensible SDK does not use ``gcc-cross-canadian``
1471 gcc-cross-canadian
1472 since this SDK ships a copy of the OpenEmbedded build system and the 1477 since this SDK ships a copy of the OpenEmbedded build system and the
1473 sysroot within it contains 1478 sysroot within it contains ``gcc-cross``.
1474 gcc-cross
1475 .
1476 1479
1477The chain of events that occurs when the standard toolchain is bootstrapped: 1480The chain of events that occurs when the standard toolchain is bootstrapped::
1478::
1479 1481
1480 binutils-cross -> linux-libc-headers -> gcc-cross -> libgcc-initial -> glibc -> libgcc -> gcc-runtime 1482 binutils-cross -> linux-libc-headers -> gcc-cross -> libgcc-initial -> glibc -> libgcc -> gcc-runtime
1481 1483
@@ -1511,12 +1513,11 @@ relocatable SDK used to develop applications. When you run the
1511installer, it installs the toolchain, which contains the development 1513installer, it installs the toolchain, which contains the development
1512tools (e.g., ``gcc-cross-canadian``, ``binutils-cross-canadian``, and 1514tools (e.g., ``gcc-cross-canadian``, ``binutils-cross-canadian``, and
1513other ``nativesdk-*`` tools), which are tools native to the SDK (i.e. 1515other ``nativesdk-*`` tools), which are tools native to the SDK (i.e.
1514native to :term:`SDK_ARCH`), you 1516native to :term:`SDK_ARCH`), you need to cross-compile and test your
1515need to cross-compile and test your software. The figure shows the 1517software. The figure shows the commands you use to easily build out
1516commands you use to easily build out this toolchain. This 1518this toolchain. This cross-development toolchain is built to execute on the
1517cross-development toolchain is built to execute on the 1519:term:`SDKMACHINE`, which might or might not be the same machine as
1518:term:`SDKMACHINE`, which might or 1520the Build Host.
1519might not be the same machine as the Build Host.
1520 1521
1521.. note:: 1522.. note::
1522 1523
@@ -1524,8 +1525,7 @@ might not be the same machine as the Build Host.
1524 can take advantage of pre-built images that ship with the Yocto 1525 can take advantage of pre-built images that ship with the Yocto
1525 Project and already contain cross-development toolchain installers. 1526 Project and already contain cross-development toolchain installers.
1526 1527
1527Here is the bootstrap process for the relocatable toolchain: 1528Here is the bootstrap process for the relocatable toolchain::
1528::
1529 1529
1530 gcc -> binutils-crosssdk -> gcc-crosssdk-initial -> linux-libc-headers -> glibc-initial -> nativesdk-glibc -> gcc-crosssdk -> gcc-cross-canadian 1530 gcc -> binutils-crosssdk -> gcc-crosssdk-initial -> linux-libc-headers -> glibc-initial -> nativesdk-glibc -> gcc-crosssdk -> gcc-cross-canadian
1531 1531
@@ -1579,10 +1579,10 @@ Shared State Cache
1579By design, the OpenEmbedded build system builds everything from scratch 1579By design, the OpenEmbedded build system builds everything from scratch
1580unless :term:`BitBake` can determine 1580unless :term:`BitBake` can determine
1581that parts do not need to be rebuilt. Fundamentally, building from 1581that parts do not need to be rebuilt. Fundamentally, building from
1582scratch is attractive as it means all parts are built fresh and no 1582scratch is attractive as it means all parts are built fresh and there is
1583possibility of stale data exists that can cause problems. When 1583no possibility of stale data that can cause problems. When
1584developers hit problems, they typically default back to building from 1584developers hit problems, they typically default back to building from
1585scratch so they have a know state from the start. 1585scratch so they have a known state from the start.
1586 1586
1587Building an image from scratch is both an advantage and a disadvantage 1587Building an image from scratch is both an advantage and a disadvantage
1588to the process. As mentioned in the previous paragraph, building from 1588to the process. As mentioned in the previous paragraph, building from
@@ -1619,18 +1619,18 @@ them if they are deemed to be valid.
1619 1619
1620 - The build system does not maintain 1620 - The build system does not maintain
1621 :term:`PR` information as part of 1621 :term:`PR` information as part of
1622 the shared state packages. Consequently, considerations exist that 1622 the shared state packages. Consequently, there are considerations that
1623 affect maintaining shared state feeds. For information on how the 1623 affect maintaining shared state feeds. For information on how the
1624 build system works with packages and can track incrementing ``PR`` 1624 build system works with packages and can track incrementing :term:`PR`
1625 information, see the ":ref:`dev-manual/common-tasks:automatically incrementing a package version number`" 1625 information, see the ":ref:`dev-manual/packages:automatically incrementing a package version number`"
1626 section in the Yocto Project Development Tasks Manual. 1626 section in the Yocto Project Development Tasks Manual.
1627 1627
1628 - The code in the build system that supports incremental builds is 1628 - The code in the build system that supports incremental builds is
1629 not simple code. For techniques that help you work around issues 1629 complex. For techniques that help you work around issues
1630 related to shared state code, see the 1630 related to shared state code, see the
1631 ":ref:`dev-manual/common-tasks:viewing metadata used to create the input signature of a shared state task`" 1631 ":ref:`dev-manual/debugging:viewing metadata used to create the input signature of a shared state task`"
1632 and 1632 and
1633 ":ref:`dev-manual/common-tasks:invalidating shared state to force a task to run`" 1633 ":ref:`dev-manual/debugging:invalidating shared state to force a task to run`"
1634 sections both in the Yocto Project Development Tasks Manual. 1634 sections both in the Yocto Project Development Tasks Manual.
1635 1635
1636The rest of this section goes into detail about the overall incremental 1636The rest of this section goes into detail about the overall incremental
@@ -1667,7 +1667,7 @@ you a good idea of when the task's data changes.
1667 1667
1668To complicate the problem, there are things that should not be included 1668To complicate the problem, there are things that should not be included
1669in the checksum. First, there is the actual specific build path of a 1669in the checksum. First, there is the actual specific build path of a
1670given task - the :term:`WORKDIR`. It 1670given task --- the :term:`WORKDIR`. It
1671does not matter if the work directory changes because it should not 1671does not matter if the work directory changes because it should not
1672affect the output for target packages. Also, the build process has the 1672affect the output for target packages. Also, the build process has the
1673objective of making native or cross packages relocatable. 1673objective of making native or cross packages relocatable.
@@ -1678,8 +1678,8 @@ objective of making native or cross packages relocatable.
1678 build host. However, cross packages generate output for the target 1678 build host. However, cross packages generate output for the target
1679 architecture. 1679 architecture.
1680 1680
1681The checksum therefore needs to exclude ``WORKDIR``. The simplistic 1681The checksum therefore needs to exclude :term:`WORKDIR`. The simplistic
1682approach for excluding the work directory is to set ``WORKDIR`` to some 1682approach for excluding the work directory is to set :term:`WORKDIR` to some
1683fixed value and create the checksum for the "run" script. 1683fixed value and create the checksum for the "run" script.
1684 1684
1685Another problem results from the "run" scripts containing functions that 1685Another problem results from the "run" scripts containing functions that
@@ -1689,7 +1689,7 @@ used to prune the "run" scripts down to the minimum set, thereby
1689alleviating this problem and making the "run" scripts much more readable 1689alleviating this problem and making the "run" scripts much more readable
1690as a bonus. 1690as a bonus.
1691 1691
1692So far, solutions for shell scripts exist. What about Python tasks? The 1692So far, there are solutions for shell scripts. What about Python tasks? The
1693same approach applies even though these tasks are more difficult. The 1693same approach applies even though these tasks are more difficult. The
1694process needs to figure out what variables a Python function accesses 1694process needs to figure out what variables a Python function accesses
1695and what functions it calls. Again, the incremental build solution 1695and what functions it calls. Again, the incremental build solution
@@ -1697,10 +1697,9 @@ contains code that first figures out the variable and function
1697dependencies, and then creates a checksum for the data used as the input 1697dependencies, and then creates a checksum for the data used as the input
1698to the task. 1698to the task.
1699 1699
1700Like the ``WORKDIR`` case, situations exist where dependencies should be 1700Like the :term:`WORKDIR` case, there can be situations where dependencies should be
1701ignored. For these situations, you can instruct the build process to 1701ignored. For these situations, you can instruct the build process to
1702ignore a dependency by using a line like the following: 1702ignore a dependency by using a line like the following::
1703::
1704 1703
1705 PACKAGE_ARCHS[vardepsexclude] = "MACHINE" 1704 PACKAGE_ARCHS[vardepsexclude] = "MACHINE"
1706 1705
@@ -1710,13 +1709,12 @@ reference it.
1710 1709
1711Equally, there are cases where you need to add dependencies BitBake is 1710Equally, there are cases where you need to add dependencies BitBake is
1712not able to find. You can accomplish this by using a line like the 1711not able to find. You can accomplish this by using a line like the
1713following: 1712following::
1714::
1715 1713
1716 PACKAGE_ARCHS[vardeps] = "MACHINE" 1714 PACKAGE_ARCHS[vardeps] = "MACHINE"
1717 1715
1718This example explicitly 1716This example explicitly
1719adds the ``MACHINE`` variable as a dependency for ``PACKAGE_ARCHS``. 1717adds the :term:`MACHINE` variable as a dependency for :term:`PACKAGE_ARCHS`.
1720 1718
1721As an example, consider a case with in-line Python where BitBake is not 1719As an example, consider a case with in-line Python where BitBake is not
1722able to figure out dependencies. When running in debug mode (i.e. using 1720able to figure out dependencies. When running in debug mode (i.e. using
@@ -1728,34 +1726,29 @@ need to fix this situation.
1728Thus far, this section has limited discussion to the direct inputs into 1726Thus far, this section has limited discussion to the direct inputs into
1729a task. Information based on direct inputs is referred to as the 1727a task. Information based on direct inputs is referred to as the
1730"basehash" in the code. However, the question of a task's indirect 1728"basehash" in the code. However, the question of a task's indirect
1731inputs still exits - items already built and present in the 1729inputs still exits --- items already built and present in the
1732:term:`Build Directory`. The checksum (or 1730:term:`Build Directory`. The checksum (or
1733signature) for a particular task needs to add the hashes of all the 1731signature) for a particular task needs to add the hashes of all the
1734tasks on which the particular task depends. Choosing which dependencies 1732tasks on which the particular task depends. Choosing which dependencies
1735to add is a policy decision. However, the effect is to generate a master 1733to add is a policy decision. However, the effect is to generate a
1736checksum that combines the basehash and the hashes of the task's 1734checksum that combines the basehash and the hashes of the task's
1737dependencies. 1735dependencies.
1738 1736
1739At the code level, a variety of ways exist by which both the basehash 1737At the code level, there are multiple ways by which both the basehash
1740and the dependent task hashes can be influenced. Within the BitBake 1738and the dependent task hashes can be influenced. Within the BitBake
1741configuration file, you can give BitBake some extra information to help 1739configuration file, you can give BitBake some extra information to help
1742it construct the basehash. The following statement effectively results 1740it construct the basehash. The following statement effectively results
1743in a list of global variable dependency excludes (i.e. variables never 1741in a list of global variable dependency excludes (i.e. variables never
1744included in any checksum): 1742included in any checksum)::
1745::
1746 1743
1747 BB_HASHBASE_WHITELIST ?= "TMPDIR FILE PATH PWD BB_TASKHASH BBPATH DL_DIR \\ 1744 BB_BASEHASH_IGNORE_VARS ?= "TMPDIR FILE PATH PWD BB_TASKHASH BBPATH DL_DIR \\
1748 SSTATE_DIR THISDIR FILESEXTRAPATHS FILE_DIRNAME HOME LOGNAME SHELL TERM \\ 1745 SSTATE_DIR THISDIR FILESEXTRAPATHS FILE_DIRNAME HOME LOGNAME SHELL TERM \\
1749 USER FILESPATH STAGING_DIR_HOST STAGING_DIR_TARGET COREBASE PRSERV_HOST \\ 1746 USER FILESPATH STAGING_DIR_HOST STAGING_DIR_TARGET COREBASE PRSERV_HOST \\
1750 PRSERV_DUMPDIR PRSERV_DUMPFILE PRSERV_LOCKDOWN PARALLEL_MAKE \\ 1747 PRSERV_DUMPDIR PRSERV_DUMPFILE PRSERV_LOCKDOWN PARALLEL_MAKE \\
1751 CCACHE_DIR EXTERNAL_TOOLCHAIN CCACHE CCACHE_DISABLE LICENSE_PATH SDKPKGSUFFIX" 1748 CCACHE_DIR EXTERNAL_TOOLCHAIN CCACHE CCACHE_DISABLE LICENSE_PATH SDKPKGSUFFIX"
1752 1749
1753The 1750The previous example does not include :term:`WORKDIR` since that variable is
1754previous example excludes 1751actually constructed as a path within :term:`TMPDIR`, which is included above.
1755:term:`WORKDIR` since that variable
1756is actually constructed as a path within
1757:term:`TMPDIR`, which is on the
1758whitelist.
1759 1752
1760The rules for deciding which hashes of dependent tasks to include 1753The rules for deciding which hashes of dependent tasks to include
1761through dependency chains are more complex and are generally 1754through dependency chains are more complex and are generally
@@ -1767,16 +1760,15 @@ desired. This file defines the two basic signature generators
1767"OEBasicHash". By default, a dummy "noop" signature handler is enabled 1760"OEBasicHash". By default, a dummy "noop" signature handler is enabled
1768in BitBake. This means that behavior is unchanged from previous 1761in BitBake. This means that behavior is unchanged from previous
1769versions. OE-Core uses the "OEBasicHash" signature handler by default 1762versions. OE-Core uses the "OEBasicHash" signature handler by default
1770through this setting in the ``bitbake.conf`` file: 1763through this setting in the ``bitbake.conf`` file::
1771::
1772 1764
1773 BB_SIGNATURE_HANDLER ?= "OEBasicHash" 1765 BB_SIGNATURE_HANDLER ?= "OEBasicHash"
1774 1766
1775The "OEBasicHash" ``BB_SIGNATURE_HANDLER`` is the same 1767The "OEBasicHash" :term:`BB_SIGNATURE_HANDLER` is the same
1776as the "OEBasic" version but adds the task hash to the `stamp 1768as the "OEBasic" version but adds the task hash to the :ref:`stamp
1777files <#stamp-files-and-the-rerunning-of-tasks>`__. This results in any 1769files <overview-manual/concepts:stamp files and the rerunning of tasks>`. This
1778metadata change that changes the task hash, automatically causing the 1770results in any metadata change that changes the task hash, automatically causing
1779task to be run again. This removes the need to bump 1771the task to be run again. This removes the need to bump
1780:term:`PR` values, and changes to metadata 1772:term:`PR` values, and changes to metadata
1781automatically ripple across the build. 1773automatically ripple across the build.
1782 1774
@@ -1784,16 +1776,13 @@ It is also worth noting that the end result of these signature
1784generators is to make some dependency and hash information available to 1776generators is to make some dependency and hash information available to
1785the build. This information includes: 1777the build. This information includes:
1786 1778
1787- ``BB_BASEHASH_task-``\ taskname: The base hashes for each task in the 1779- ``BB_BASEHASH:task-``\ taskname: The base hashes for each task in the
1788 recipe. 1780 recipe.
1789 1781
1790- ``BB_BASEHASH_``\ filename\ ``:``\ taskname: The base hashes for each 1782- ``BB_BASEHASH_``\ filename\ ``:``\ taskname: The base hashes for each
1791 dependent task. 1783 dependent task.
1792 1784
1793- ``BBHASHDEPS_``\ filename\ ``:``\ taskname: The task dependencies for 1785- :term:`BB_TASKHASH`: The hash of the currently running task.
1794 each task.
1795
1796- ``BB_TASKHASH``: The hash of the currently running task.
1797 1786
1798Shared State 1787Shared State
1799------------ 1788------------
@@ -1803,12 +1792,11 @@ half the problem of supporting a shared state. The other half of the
1803problem is being able to use checksum information during the build and 1792problem is being able to use checksum information during the build and
1804being able to reuse or rebuild specific components. 1793being able to reuse or rebuild specific components.
1805 1794
1806The :ref:`sstate <ref-classes-sstate>` class is a 1795The :ref:`ref-classes-sstate` class is a relatively generic implementation of
1807relatively generic implementation of how to "capture" a snapshot of a 1796how to "capture" a snapshot of a given task. The idea is that the build process
1808given task. The idea is that the build process does not care about the 1797does not care about the source of a task's output. Output could be freshly
1809source of a task's output. Output could be freshly built or it could be 1798built or it could be downloaded and unpacked from somewhere. In other words,
1810downloaded and unpacked from somewhere. In other words, the build 1799the build process does not need to worry about its origin.
1811process does not need to worry about its origin.
1812 1800
1813Two types of output exist. One type is just about creating a directory 1801Two types of output exist. One type is just about creating a directory
1814in :term:`WORKDIR`. A good example is 1802in :term:`WORKDIR`. A good example is
@@ -1819,11 +1807,9 @@ type of output occurs when a set of data is merged into a shared
1819directory tree such as the sysroot. 1807directory tree such as the sysroot.
1820 1808
1821The Yocto Project team has tried to keep the details of the 1809The Yocto Project team has tried to keep the details of the
1822implementation hidden in ``sstate`` class. From a user's perspective, 1810implementation hidden in the :ref:`ref-classes-sstate` class. From a user's perspective,
1823adding shared state wrapping to a task is as simple as this 1811adding shared state wrapping to a task is as simple as this
1824:ref:`ref-tasks-deploy` example taken 1812:ref:`ref-tasks-deploy` example taken from the :ref:`ref-classes-deploy` class::
1825from the :ref:`deploy <ref-classes-deploy>` class:
1826::
1827 1813
1828 DEPLOYDIR = "${WORKDIR}/deploy-${PN}" 1814 DEPLOYDIR = "${WORKDIR}/deploy-${PN}"
1829 SSTATETASKS += "do_deploy" 1815 SSTATETASKS += "do_deploy"
@@ -1839,14 +1825,12 @@ from the :ref:`deploy <ref-classes-deploy>` class:
1839 1825
1840The following list explains the previous example: 1826The following list explains the previous example:
1841 1827
1842- Adding "do_deploy" to ``SSTATETASKS`` adds some required 1828- Adding ``do_deploy`` to ``SSTATETASKS`` adds some required sstate-related
1843 sstate-related processing, which is implemented in the 1829 processing, which is implemented in the :ref:`ref-classes-sstate` class, to
1844 :ref:`sstate <ref-classes-sstate>` class, to 1830 before and after the :ref:`ref-tasks-deploy` task.
1845 before and after the
1846 :ref:`ref-tasks-deploy` task.
1847 1831
1848- The ``do_deploy[sstate-inputdirs] = "${DEPLOYDIR}"`` declares that 1832- The ``do_deploy[sstate-inputdirs] = "${DEPLOYDIR}"`` declares that
1849 ``do_deploy`` places its output in ``${DEPLOYDIR}`` when run normally 1833 :ref:`ref-tasks-deploy` places its output in ``${DEPLOYDIR}`` when run normally
1850 (i.e. when not using the sstate cache). This output becomes the input 1834 (i.e. when not using the sstate cache). This output becomes the input
1851 to the shared state cache. 1835 to the shared state cache.
1852 1836
@@ -1856,92 +1840,85 @@ The following list explains the previous example:
1856 1840
1857 .. note:: 1841 .. note::
1858 1842
1859 If ``do_deploy`` is not already in the shared state cache or if its input 1843 If :ref:`ref-tasks-deploy` is not already in the shared state cache or if its input
1860 checksum (signature) has changed from when the output was cached, the task 1844 checksum (signature) has changed from when the output was cached, the task
1861 runs to populate the shared state cache, after which the contents of the 1845 runs to populate the shared state cache, after which the contents of the
1862 shared state cache is copied to ${:term:`DEPLOY_DIR_IMAGE`}. If 1846 shared state cache is copied to ${:term:`DEPLOY_DIR_IMAGE`}. If
1863 ``do_deploy`` is in the shared state cache and its signature indicates 1847 :ref:`ref-tasks-deploy` is in the shared state cache and its signature indicates
1864 that the cached output is still valid (i.e. if no relevant task inputs 1848 that the cached output is still valid (i.e. if no relevant task inputs
1865 have changed), then the contents of the shared state cache copies 1849 have changed), then the contents of the shared state cache copies
1866 directly to ${``DEPLOY_DIR_IMAGE``} by the ``do_deploy_setscene`` task 1850 directly to ${:term:`DEPLOY_DIR_IMAGE`} by the ``do_deploy_setscene`` task
1867 instead, skipping the ``do_deploy`` task. 1851 instead, skipping the :ref:`ref-tasks-deploy` task.
1868 1852
1869- The following task definition is glue logic needed to make the 1853- The following task definition is glue logic needed to make the
1870 previous settings effective: 1854 previous settings effective::
1871 ::
1872 1855
1873 python do_deploy_setscene () { 1856 python do_deploy_setscene () {
1874 sstate_setscene(d) 1857 sstate_setscene(d)
1875 } 1858 }
1876 addtask do_deploy_setscene 1859 addtask do_deploy_setscene
1877 1860
1878 ``sstate_setscene()`` takes the flags above as input and accelerates the ``do_deploy`` task 1861 ``sstate_setscene()`` takes the flags above as input and accelerates the
1879 through the shared state cache if possible. If the task was 1862 :ref:`ref-tasks-deploy` task through the shared state cache if possible. If
1880 accelerated, ``sstate_setscene()`` returns True. Otherwise, it 1863 the task was accelerated, ``sstate_setscene()`` returns True. Otherwise, it
1881 returns False, and the normal ``do_deploy`` task runs. For more 1864 returns False, and the normal :ref:`ref-tasks-deploy` task runs. For more
1882 information, see the ":ref:`setscene <bitbake:bitbake-user-manual/bitbake-user-manual-execution:setscene>`" 1865 information, see the ":ref:`bitbake-user-manual/bitbake-user-manual-execution:setscene`"
1883 section in the BitBake User Manual. 1866 section in the BitBake User Manual.
1884 1867
1885- The ``do_deploy[dirs] = "${DEPLOYDIR} ${B}"`` line creates 1868- The ``do_deploy[dirs] = "${DEPLOYDIR} ${B}"`` line creates ``${DEPLOYDIR}``
1886 ``${DEPLOYDIR}`` and ``${B}`` before the ``do_deploy`` task runs, and 1869 and ``${B}`` before the :ref:`ref-tasks-deploy` task runs, and also sets the
1887 also sets the current working directory of ``do_deploy`` to ``${B}``. 1870 current working directory of :ref:`ref-tasks-deploy` to ``${B}``. For more
1888 For more information, see the ":ref:`bitbake:bitbake-user-manual/bitbake-user-manual-metadata:variable flags`" 1871 information, see the ":ref:`bitbake-user-manual/bitbake-user-manual-metadata:variable flags`"
1889 section in the BitBake 1872 section in the BitBake User Manual.
1890 User Manual.
1891 1873
1892 .. note:: 1874 .. note::
1893 1875
1894 In cases where ``sstate-inputdirs`` and ``sstate-outputdirs`` would be 1876 In cases where ``sstate-inputdirs`` and ``sstate-outputdirs`` would be
1895 the same, you can use ``sstate-plaindirs``. For example, to preserve the 1877 the same, you can use ``sstate-plaindirs``. For example, to preserve the
1896 ${:term:`PKGD`} and ${:term:`PKGDEST`} output from the ``do_package`` 1878 ${:term:`PKGD`} and ${:term:`PKGDEST`} output from the :ref:`ref-tasks-package`
1897 task, use the following: 1879 task, use the following::
1898 ::
1899 1880
1900 do_package[sstate-plaindirs] = "${PKGD} ${PKGDEST}" 1881 do_package[sstate-plaindirs] = "${PKGD} ${PKGDEST}"
1901 1882
1902 1883
1903- The ``do_deploy[stamp-extra-info] = "${MACHINE_ARCH}"`` line appends 1884- The ``do_deploy[stamp-extra-info] = "${MACHINE_ARCH}"`` line appends extra
1904 extra metadata to the `stamp 1885 metadata to the :ref:`stamp file <overview-manual/concepts:stamp files and the rerunning of tasks>`.
1905 file <#stamp-files-and-the-rerunning-of-tasks>`__. In this case, the 1886 In this case, the metadata makes the task specific to a machine's architecture.
1906 metadata makes the task specific to a machine's architecture. See 1887 See the ":ref:`bitbake-user-manual/bitbake-user-manual-execution:the task list`"
1907 ":ref:`bitbake:bitbake-user-manual/bitbake-user-manual-execution:the task list`"
1908 section in the BitBake User Manual for more information on the 1888 section in the BitBake User Manual for more information on the
1909 ``stamp-extra-info`` flag. 1889 ``stamp-extra-info`` flag.
1910 1890
1911- ``sstate-inputdirs`` and ``sstate-outputdirs`` can also be used with 1891- ``sstate-inputdirs`` and ``sstate-outputdirs`` can also be used with
1912 multiple directories. For example, the following declares 1892 multiple directories. For example, the following declares
1913 ``PKGDESTWORK`` and ``SHLIBWORK`` as shared state input directories, 1893 :term:`PKGDESTWORK` and ``SHLIBWORK`` as shared state input directories,
1914 which populates the shared state cache, and ``PKGDATA_DIR`` and 1894 which populates the shared state cache, and :term:`PKGDATA_DIR` and
1915 ``SHLIBSDIR`` as the corresponding shared state output directories: 1895 ``SHLIBSDIR`` as the corresponding shared state output directories::
1916 ::
1917 1896
1918 do_package[sstate-inputdirs] = "${PKGDESTWORK} ${SHLIBSWORKDIR}" 1897 do_package[sstate-inputdirs] = "${PKGDESTWORK} ${SHLIBSWORKDIR}"
1919 do_package[sstate-outputdirs] = "${PKGDATA_DIR} ${SHLIBSDIR}" 1898 do_package[sstate-outputdirs] = "${PKGDATA_DIR} ${SHLIBSDIR}"
1920 1899
1921- These methods also include the ability to take a lockfile when 1900- These methods also include the ability to take a lockfile when
1922 manipulating shared state directory structures, for cases where file 1901 manipulating shared state directory structures, for cases where file
1923 additions or removals are sensitive: 1902 additions or removals are sensitive::
1924 ::
1925 1903
1926 do_package[sstate-lockfile] = "${PACKAGELOCK}" 1904 do_package[sstate-lockfile] = "${PACKAGELOCK}"
1927 1905
1928Behind the scenes, the shared state code works by looking in 1906Behind the scenes, the shared state code works by looking in
1929:term:`SSTATE_DIR` and 1907:term:`SSTATE_DIR` and
1930:term:`SSTATE_MIRRORS` for 1908:term:`SSTATE_MIRRORS` for
1931shared state files. Here is an example: 1909shared state files. Here is an example::
1932::
1933 1910
1934 SSTATE_MIRRORS ?= "\ 1911 SSTATE_MIRRORS ?= "\
1935 file://.\* http://someserver.tld/share/sstate/PATH;downloadfilename=PATH \n \ 1912 file://.* https://someserver.tld/share/sstate/PATH;downloadfilename=PATH \
1936 file://.\* file:///some/local/dir/sstate/PATH" 1913 file://.* file:///some/local/dir/sstate/PATH"
1937 1914
1938.. note:: 1915.. note::
1939 1916
1940 The shared state directory (``SSTATE_DIR``) is organized into two-character 1917 The shared state directory (:term:`SSTATE_DIR`) is organized into two-character
1941 subdirectories, where the subdirectory names are based on the first two 1918 subdirectories, where the subdirectory names are based on the first two
1942 characters of the hash. 1919 characters of the hash.
1943 If the shared state directory structure for a mirror has the same structure 1920 If the shared state directory structure for a mirror has the same structure
1944 as ``SSTATE_DIR``, you must specify "PATH" as part of the URI to enable the build 1921 as :term:`SSTATE_DIR`, you must specify "PATH" as part of the URI to enable the build
1945 system to map to the appropriate subdirectory. 1922 system to map to the appropriate subdirectory.
1946 1923
1947The shared state package validity can be detected just by looking at the 1924The shared state package validity can be detected just by looking at the
@@ -1966,14 +1943,155 @@ another reason why a task-based approach is preferred over a
1966recipe-based approach, which would have to install the output from every 1943recipe-based approach, which would have to install the output from every
1967task. 1944task.
1968 1945
1946Hash Equivalence
1947----------------
1948
1949The above section explained how BitBake skips the execution of tasks
1950whose output can already be found in the Shared State cache.
1951
1952During a build, it may often be the case that the output / result of a task might
1953be unchanged despite changes in the task's input values. An example might be
1954whitespace changes in some input C code. In project terms, this is what we define
1955as "equivalence".
1956
1957To keep track of such equivalence, BitBake has to manage three hashes
1958for each task:
1959
1960- The *task hash* explained earlier: computed from the recipe metadata,
1961 the task code and the task hash values from its dependencies.
1962 When changes are made, these task hashes are therefore modified,
1963 causing the task to re-execute. The task hashes of tasks depending on this
1964 task are therefore modified too, causing the whole dependency
1965 chain to re-execute.
1966
1967- The *output hash*, a new hash computed from the output of Shared State tasks,
1968 tasks that save their resulting output to a Shared State tarball.
1969 The mapping between the task hash and its output hash is reported
1970 to a new *Hash Equivalence* server. This mapping is stored in a database
1971 by the server for future reference.
1972
1973- The *unihash*, a new hash, initially set to the task hash for the task.
1974 This is used to track the *unicity* of task output, and we will explain
1975 how its value is maintained.
1976
1977When Hash Equivalence is enabled, BitBake computes the task hash
1978for each task by using the unihash of its dependencies, instead
1979of their task hash.
1980
1981Now, imagine that a Shared State task is modified because of a change in
1982its code or metadata, or because of a change in its dependencies.
1983Since this modifies its task hash, this task will need re-executing.
1984Its output hash will therefore be computed again.
1985
1986Then, the new mapping between the new task hash and its output hash
1987will be reported to the Hash Equivalence server. The server will
1988let BitBake know whether this output hash is the same as a previously
1989reported output hash, for a different task hash.
1990
1991If the output hash is already known, BitBake will update the task's
1992unihash to match the original task hash that generated that output.
1993Thanks to this, the depending tasks will keep a previously recorded
1994task hash, and BitBake will be able to retrieve their output from
1995the Shared State cache, instead of re-executing them. Similarly, the
1996output of further downstream tasks can also be retrieved from Shared
1997State.
1998
1999If the output hash is unknown, a new entry will be created on the Hash
2000Equivalence server, matching the task hash to that output.
2001The depending tasks, still having a new task hash because of the
2002change, will need to re-execute as expected. The change propagates
2003to the depending tasks.
2004
2005To summarize, when Hash Equivalence is enabled, a change in one of the
2006tasks in BitBake's run queue doesn't have to propagate to all the
2007downstream tasks that depend on the output of this task, causing a
2008full rebuild of such tasks, and so on with the next depending tasks.
2009Instead, when the output of this task remains identical to previously
2010recorded output, BitBake can safely retrieve all the downstream
2011task output from the Shared State cache.
2012
2013.. note::
2014
2015 Having :doc:`/test-manual/reproducible-builds` is a key ingredient for
2016 the stability of the task's output hash. Therefore, the effectiveness
2017 of Hash Equivalence strongly depends on it.
2018
2019 Recipes that are not reproducible may have undesired behavior if hash
2020 equivalence is enabled, since the non-reproducible diverging output maybe be
2021 remapped to an older sstate object in the cache by the server. If a recipe
2022 is non-reproducible in trivial ways, such as different timestamps, this is
2023 likely not a problem. However recipes that have more dramatic changes (such
2024 as completely different file names) will likely outright fail since the
2025 downstream sstate objects are not actually equivalent to what was just
2026 built.
2027
2028This applies to multiple scenarios:
2029
2030- A "trivial" change to a recipe that doesn't impact its generated output,
2031 such as whitespace changes, modifications to unused code paths or
2032 in the ordering of variables.
2033
2034- Shared library updates, for example to fix a security vulnerability.
2035 For sure, the programs using such a library should be rebuilt, but
2036 their new binaries should remain identical. The corresponding tasks should
2037 have a different output hash because of the change in the hash of their
2038 library dependency, but thanks to their output being identical, Hash
2039 Equivalence will stop the propagation down the dependency chain.
2040
2041- Native tool updates. Though the depending tasks should be rebuilt,
2042 it's likely that they will generate the same output and be marked
2043 as equivalent.
2044
2045This mechanism is enabled by default in Poky, and is controlled by three
2046variables:
2047
2048- :term:`bitbake:BB_HASHSERVE`, specifying a local or remote Hash
2049 Equivalence server to use.
2050
2051- :term:`BB_HASHSERVE_UPSTREAM`, when ``BB_HASHSERVE = "auto"``,
2052 allowing to connect the local server to an upstream one.
2053
2054- :term:`bitbake:BB_SIGNATURE_HANDLER`, which must be set to ``OEEquivHash``.
2055
2056Therefore, the default configuration in Poky corresponds to the
2057below settings::
2058
2059 BB_HASHSERVE = "auto"
2060 BB_SIGNATURE_HANDLER = "OEEquivHash"
2061
2062Rather than starting a local server, another possibility is to rely
2063on a Hash Equivalence server on a network, by setting::
2064
2065 BB_HASHSERVE = "<HOSTNAME>:<PORT>"
2066
2067.. note::
2068
2069 The shared Hash Equivalence server needs to be maintained together with the
2070 Shared State cache. Otherwise, the server could report Shared State hashes
2071 that only exist on specific clients.
2072
2073 We therefore recommend that one Hash Equivalence server be set up to
2074 correspond with a given Shared State cache, and to start this server
2075 in *read-only mode*, so that it doesn't store equivalences for
2076 Shared State caches that are local to clients.
2077
2078 See the :term:`BB_HASHSERVE` reference for details about starting
2079 a Hash Equivalence server.
2080
2081See the `video <https://www.youtube.com/watch?v=zXEdqGS62Wc>`__
2082of Joshua Watt's `Hash Equivalence and Reproducible Builds
2083<https://elinux.org/images/3/37/Hash_Equivalence_and_Reproducible_Builds.pdf>`__
2084presentation at ELC 2020 for a very synthetic introduction to the
2085Hash Equivalence implementation in the Yocto Project.
2086
1969Automatically Added Runtime Dependencies 2087Automatically Added Runtime Dependencies
1970======================================== 2088========================================
1971 2089
1972The OpenEmbedded build system automatically adds common types of runtime 2090The OpenEmbedded build system automatically adds common types of runtime
1973dependencies between packages, which means that you do not need to 2091dependencies between packages, which means that you do not need to
1974explicitly declare the packages using 2092explicitly declare the packages using
1975:term:`RDEPENDS`. Three automatic 2093:term:`RDEPENDS`. There are three automatic
1976mechanisms exist (``shlibdeps``, ``pcdeps``, and ``depchains``) that 2094mechanisms (``shlibdeps``, ``pcdeps``, and ``depchains``) that
1977handle shared libraries, package configuration (pkg-config) modules, and 2095handle shared libraries, package configuration (pkg-config) modules, and
1978``-dev`` and ``-dbg`` packages, respectively. For other types of runtime 2096``-dev`` and ``-dbg`` packages, respectively. For other types of runtime
1979dependencies, you must manually declare the dependencies. 2097dependencies, you must manually declare the dependencies.
@@ -1984,7 +2102,7 @@ dependencies, you must manually declare the dependencies.
1984 located. For each shared library, the package that contains the 2102 located. For each shared library, the package that contains the
1985 shared library is registered as providing the shared library. More 2103 shared library is registered as providing the shared library. More
1986 specifically, the package is registered as providing the 2104 specifically, the package is registered as providing the
1987 `soname <https://en.wikipedia.org/wiki/Soname>`__ of the library. The 2105 :wikipedia:`soname <Soname>` of the library. The
1988 resulting shared-library-to-package mapping is saved globally in 2106 resulting shared-library-to-package mapping is saved globally in
1989 :term:`PKGDATA_DIR` by the 2107 :term:`PKGDATA_DIR` by the
1990 :ref:`ref-tasks-packagedata` 2108 :ref:`ref-tasks-packagedata`
@@ -1992,7 +2110,7 @@ dependencies, you must manually declare the dependencies.
1992 2110
1993 Simultaneously, all executables and shared libraries installed by the 2111 Simultaneously, all executables and shared libraries installed by the
1994 recipe are inspected to see what shared libraries they link against. 2112 recipe are inspected to see what shared libraries they link against.
1995 For each shared library dependency that is found, ``PKGDATA_DIR`` is 2113 For each shared library dependency that is found, :term:`PKGDATA_DIR` is
1996 queried to see if some package (likely from a different recipe) 2114 queried to see if some package (likely from a different recipe)
1997 contains the shared library. If such a package is found, a runtime 2115 contains the shared library. If such a package is found, a runtime
1998 dependency is added from the package that depends on the shared 2116 dependency is added from the package that depends on the shared
@@ -2001,7 +2119,7 @@ dependencies, you must manually declare the dependencies.
2001 The automatically added runtime dependency also includes a version 2119 The automatically added runtime dependency also includes a version
2002 restriction. This version restriction specifies that at least the 2120 restriction. This version restriction specifies that at least the
2003 current version of the package that provides the shared library must 2121 current version of the package that provides the shared library must
2004 be used, as if "package (>= version)" had been added to ``RDEPENDS``. 2122 be used, as if "package (>= version)" had been added to :term:`RDEPENDS`.
2005 This forces an upgrade of the package containing the shared library 2123 This forces an upgrade of the package containing the shared library
2006 when installing the package that depends on the library, if needed. 2124 when installing the package that depends on the library, if needed.
2007 2125
@@ -2011,18 +2129,18 @@ dependencies, you must manually declare the dependencies.
2011 :term:`PRIVATE_LIBS` inside 2129 :term:`PRIVATE_LIBS` inside
2012 the package's recipe. 2130 the package's recipe.
2013 2131
2014- ``pcdeps``: During the ``do_package`` task of each recipe, all 2132- ``pcdeps``: During the :ref:`ref-tasks-package` task of each recipe, all
2015 pkg-config modules (``*.pc`` files) installed by the recipe are 2133 pkg-config modules (``*.pc`` files) installed by the recipe are
2016 located. For each module, the package that contains the module is 2134 located. For each module, the package that contains the module is
2017 registered as providing the module. The resulting module-to-package 2135 registered as providing the module. The resulting module-to-package
2018 mapping is saved globally in ``PKGDATA_DIR`` by the 2136 mapping is saved globally in :term:`PKGDATA_DIR` by the
2019 ``do_packagedata`` task. 2137 :ref:`ref-tasks-packagedata` task.
2020 2138
2021 Simultaneously, all pkg-config modules installed by the recipe are 2139 Simultaneously, all pkg-config modules installed by the recipe are
2022 inspected to see what other pkg-config modules they depend on. A 2140 inspected to see what other pkg-config modules they depend on. A
2023 module is seen as depending on another module if it contains a 2141 module is seen as depending on another module if it contains a
2024 "Requires:" line that specifies the other module. For each module 2142 "Requires:" line that specifies the other module. For each module
2025 dependency, ``PKGDATA_DIR`` is queried to see if some package 2143 dependency, :term:`PKGDATA_DIR` is queried to see if some package
2026 contains the module. If such a package is found, a runtime dependency 2144 contains the module. If such a package is found, a runtime dependency
2027 is added from the package that depends on the module to the package 2145 is added from the package that depends on the module to the package
2028 that contains the module. 2146 that contains the module.
@@ -2047,9 +2165,9 @@ dependencies, you must manually declare the dependencies.
2047 2165
2048 .. note:: 2166 .. note::
2049 2167
2050 By default, ``foo-dev`` also has an ``RDEPENDS``-style dependency on 2168 By default, ``foo-dev`` also has an :term:`RDEPENDS`-style dependency on
2051 ``foo``, because the default value of ``RDEPENDS_${PN}-dev`` (set in 2169 ``foo``, because the default value of ``RDEPENDS:${PN}-dev`` (set in
2052 bitbake.conf) includes "${PN}". 2170 ``bitbake.conf``) includes "${PN}".
2053 2171
2054 To ensure that the dependency chain is never broken, ``-dev`` and 2172 To ensure that the dependency chain is never broken, ``-dev`` and
2055 ``-dbg`` packages are always generated by default, even if the 2173 ``-dbg`` packages are always generated by default, even if the
@@ -2057,12 +2175,12 @@ dependencies, you must manually declare the dependencies.
2057 :term:`ALLOW_EMPTY` variable 2175 :term:`ALLOW_EMPTY` variable
2058 for more information. 2176 for more information.
2059 2177
2060The ``do_package`` task depends on the ``do_packagedata`` task of each 2178The :ref:`ref-tasks-package` task depends on the :ref:`ref-tasks-packagedata`
2061recipe in :term:`DEPENDS` through use 2179task of each recipe in :term:`DEPENDS` through use of a
2062of a ``[``\ :ref:`deptask <bitbake:bitbake-user-manual/bitbake-user-manual-metadata:variable flags>`\ ``]`` 2180``[``\ :ref:`deptask <bitbake-user-manual/bitbake-user-manual-metadata:variable flags>`\ ``]``
2063declaration, which guarantees that the required 2181declaration, which guarantees that the required shared-library /
2064shared-library/module-to-package mapping information will be available 2182module-to-package mapping information will be available when needed as long as
2065when needed as long as ``DEPENDS`` has been correctly set. 2183:term:`DEPENDS` has been correctly set.
2066 2184
2067Fakeroot and Pseudo 2185Fakeroot and Pseudo
2068=================== 2186===================
@@ -2072,8 +2190,8 @@ operations that are normally reserved for the root user (e.g.
2072:ref:`ref-tasks-install`, 2190:ref:`ref-tasks-install`,
2073:ref:`do_package_write* <ref-tasks-package_write_deb>`, 2191:ref:`do_package_write* <ref-tasks-package_write_deb>`,
2074:ref:`ref-tasks-rootfs`, and 2192:ref:`ref-tasks-rootfs`, and
2075:ref:`do_image* <ref-tasks-image>`). For example, 2193:ref:`do_image_* <ref-tasks-image>`). For example,
2076the ``do_install`` task benefits from being able to set the UID and GID 2194the :ref:`ref-tasks-install` task benefits from being able to set the UID and GID
2077of installed files to arbitrary values. 2195of installed files to arbitrary values.
2078 2196
2079One approach to allowing tasks to perform root-only operations would be 2197One approach to allowing tasks to perform root-only operations would be
@@ -2088,7 +2206,7 @@ require root privileges, the fact that some earlier steps ran in a fake
2088root environment does not cause problems. 2206root environment does not cause problems.
2089 2207
2090The capability to run tasks in a fake root environment is known as 2208The capability to run tasks in a fake root environment is known as
2091"`fakeroot <http://man.he.net/man1/fakeroot>`__", which is derived from 2209":manpage:`fakeroot <fakeroot(1)>`", which is derived from
2092the BitBake keyword/variable flag that requests a fake root environment 2210the BitBake keyword/variable flag that requests a fake root environment
2093for a task. 2211for a task.
2094 2212
@@ -2111,9 +2229,7 @@ accomplished using fakeroot.
2111 under fakeroot. Otherwise, the task cannot run root-only operations, 2229 under fakeroot. Otherwise, the task cannot run root-only operations,
2112 and cannot see the fake file ownership and permissions set by the 2230 and cannot see the fake file ownership and permissions set by the
2113 other task. You need to also add a dependency on 2231 other task. You need to also add a dependency on
2114 virtual/fakeroot-native:do_populate_sysroot 2232 ``virtual/fakeroot-native:do_populate_sysroot``, giving the following::
2115 , giving the following:
2116 ::
2117 2233
2118 fakeroot do_mytask () { 2234 fakeroot do_mytask () {
2119 ... 2235 ...
@@ -2126,3 +2242,169 @@ For more information, see the
2126BitBake User Manual. You can also reference the "`Why Not 2242BitBake User Manual. You can also reference the "`Why Not
2127Fakeroot? <https://github.com/wrpseudo/pseudo/wiki/WhyNotFakeroot>`__" 2243Fakeroot? <https://github.com/wrpseudo/pseudo/wiki/WhyNotFakeroot>`__"
2128article for background information on Fakeroot and Pseudo. 2244article for background information on Fakeroot and Pseudo.
2245
2246BitBake Tasks Map
2247=================
2248
2249To understand how BitBake operates in the build directory and environment
2250we can consider the following recipes and diagram, to have full picture
2251about the tasks that BitBake runs to generate the final package file
2252for the recipe.
2253
2254We will have two recipes as an example:
2255
2256- ``libhello``: A recipe that provides a shared library
2257- ``sayhello``: A recipe that uses ``libhello`` library to do its job
2258
2259.. note::
2260
2261 ``sayhello`` depends on ``libhello`` at compile time as it needs the shared
2262 library to do the dynamic linking process. It also depends on it at runtime
2263 as the shared library loader needs to find the library.
2264 For more details about dependencies check :ref:`ref-varlocality-recipe-dependencies`.
2265
2266``libhello`` sources are as follows:
2267
2268- ``LICENSE``: This is the license associated with this library
2269- ``Makefile``: The file used by ``make`` to build the library
2270- ``hellolib.c``: The implementation of the library
2271- ``hellolib.h``: The C header of the library
2272
2273``sayhello`` sources are as follows:
2274
2275- ``LICENSE``: This is the license associated with this project
2276- ``Makefile``: The file used by ``make`` to build the project
2277- ``sayhello.c``: The source file of the project
2278
2279Before presenting the contents of each file, here are the steps
2280that we need to follow to accomplish what we want in the first place,
2281which is integrating ``sayhello`` in our root file system:
2282
2283#. Create a Git repository for each project with the corresponding files
2284
2285#. Create a recipe for each project
2286
2287#. Make sure that ``sayhello`` recipe :term:`DEPENDS` on ``libhello``
2288
2289#. Make sure that ``sayhello`` recipe :term:`RDEPENDS` on ``libhello``
2290
2291#. Add ``sayhello`` to :term:`IMAGE_INSTALL` to integrate it into
2292 the root file system
2293
2294The contents of ``libhello/Makefile`` are::
2295
2296 LIB=libhello.so
2297
2298 all: $(LIB)
2299
2300 $(LIB): hellolib.o
2301 $(CC) $< -Wl,-soname,$(LIB).1 -fPIC $(LDFLAGS) -shared -o $(LIB).1.0
2302
2303 %.o: %.c
2304 $(CC) -c $<
2305
2306 clean:
2307 rm -rf *.o *.so*
2308
2309.. note::
2310
2311 When creating shared libraries, it is strongly recommended to follow the Linux
2312 conventions and guidelines (see `this article
2313 <https://tldp.org/HOWTO/Program-Library-HOWTO/shared-libraries.html>`__
2314 for some background).
2315
2316.. note::
2317
2318 When creating ``Makefile`` files, it is strongly recommended to use ``CC``, ``LDFLAGS``
2319 and ``CFLAGS`` as BitBake will set them as environment variables according
2320 to your build configuration.
2321
2322The contents of ``libhello/hellolib.h`` are::
2323
2324 #ifndef HELLOLIB_H
2325 #define HELLOLIB_H
2326
2327 void Hello();
2328
2329 #endif
2330
2331The contents of ``libhello/hellolib.c`` are::
2332
2333 #include <stdio.h>
2334
2335 void Hello(){
2336 puts("Hello from a Yocto demo \n");
2337 }
2338
2339The contents of ``sayhello/Makefile`` are::
2340
2341 EXEC=sayhello
2342 LDFLAGS += -lhello
2343
2344 all: $(EXEC)
2345
2346 $(EXEC): sayhello.c
2347 $(CC) $< $(LDFLAGS) $(CFLAGS) -o $(EXEC)
2348
2349 clean:
2350 rm -rf $(EXEC) *.o
2351
2352The contents of ``sayhello/sayhello.c`` are::
2353
2354 #include <hellolib.h>
2355
2356 int main(){
2357 Hello();
2358 return 0;
2359 }
2360
2361The contents of ``libhello_0.1.bb`` are::
2362
2363 SUMMARY = "Hello demo library"
2364 DESCRIPTION = "Hello shared library used in Yocto demo"
2365
2366 # NOTE: Set the License according to the LICENSE file of your project
2367 # and then add LIC_FILES_CHKSUM accordingly
2368 LICENSE = "CLOSED"
2369
2370 # Assuming the branch is main
2371 # Change <username> accordingly
2372 SRC_URI = "git://github.com/<username>/libhello;branch=main;protocol=https"
2373
2374 do_install(){
2375 install -d ${D}${includedir}
2376 install -d ${D}${libdir}
2377
2378 install hellolib.h ${D}${includedir}
2379 oe_soinstall ${PN}.so.${PV} ${D}${libdir}
2380 }
2381
2382The contents of ``sayhello_0.1.bb`` are::
2383
2384 SUMMARY = "SayHello demo"
2385 DESCRIPTION = "SayHello project used in Yocto demo"
2386
2387 # NOTE: Set the License according to the LICENSE file of your project
2388 # and then add LIC_FILES_CHKSUM accordingly
2389 LICENSE = "CLOSED"
2390
2391 # Assuming the branch is main
2392 # Change <username> accordingly
2393 SRC_URI = "git://github.com/<username>/sayhello;branch=main;protocol=https"
2394
2395 DEPENDS += "libhello"
2396 RDEPENDS:${PN} += "libhello"
2397
2398 do_install(){
2399 install -d ${D}${bindir}
2400 install -m 0700 sayhello ${D}${bindir}
2401 }
2402
2403After placing the recipes in a custom layer we can run ``bitbake sayhello``
2404to build the recipe.
2405
2406The following diagram shows the sequences of tasks that BitBake
2407executes to accomplish that.
2408
2409.. image:: svg/bitbake_tasks_map.*
2410 :width: 100%
diff --git a/documentation/overview-manual/development-environment.rst b/documentation/overview-manual/development-environment.rst
index 011a479578..066d784314 100644
--- a/documentation/overview-manual/development-environment.rst
+++ b/documentation/overview-manual/development-environment.rst
@@ -39,10 +39,9 @@ Linus Torvalds in 1991. Conversely, a good example of a non-open source
39project is the Windows family of operating systems developed by 39project is the Windows family of operating systems developed by
40Microsoft Corporation. 40Microsoft Corporation.
41 41
42Wikipedia has a good historical description of the Open Source 42Wikipedia has a good :wikipedia:`historical description of the Open Source
43Philosophy `here <https://en.wikipedia.org/wiki/Open_source>`__. You can 43Philosophy <Open_source>`. You can also find helpful information on how
44also find helpful information on how to participate in the Linux 44to participate in the Linux Community
45Community
46`here <https://www.kernel.org/doc/html/latest/process/index.html>`__. 45`here <https://www.kernel.org/doc/html/latest/process/index.html>`__.
47 46
48The Development Host 47The Development Host
@@ -52,7 +51,7 @@ A development host or :term:`Build Host` is key to
52using the Yocto Project. Because the goal of the Yocto Project is to 51using the Yocto Project. Because the goal of the Yocto Project is to
53develop images or applications that run on embedded hardware, 52develop images or applications that run on embedded hardware,
54development of those images and applications generally takes place on a 53development of those images and applications generally takes place on a
55system not intended to run the software - the development host. 54system not intended to run the software --- the development host.
56 55
57You need to set up a development host in order to use it with the Yocto 56You need to set up a development host in order to use it with the Yocto
58Project. Most find that it is best to have a native Linux machine 57Project. Most find that it is best to have a native Linux machine
@@ -71,7 +70,7 @@ section in
71the Yocto Project Development Tasks Manual. 70the Yocto Project Development Tasks Manual.
72 71
73If your development host is going to be a system that runs a Linux 72If your development host is going to be a system that runs a Linux
74distribution, steps still exist that you must take to prepare the system 73distribution, you must still take steps to prepare the system
75for use with the Yocto Project. You need to be sure that the Linux 74for use with the Yocto Project. You need to be sure that the Linux
76distribution on the system is one that supports the Yocto Project. You 75distribution on the system is one that supports the Yocto Project. You
77also need to be sure that the correct set of host packages are installed 76also need to be sure that the correct set of host packages are installed
@@ -80,8 +79,8 @@ set up a development host that runs Linux, see the
80":ref:`dev-manual/start:setting up a native linux host`" 79":ref:`dev-manual/start:setting up a native linux host`"
81section in the Yocto Project Development Tasks Manual. 80section in the Yocto Project Development Tasks Manual.
82 81
83Once your development host is set up to use the Yocto Project, several 82Once your development host is set up to use the Yocto Project, there
84methods exist for you to do work in the Yocto Project environment: 83are several ways of working in the Yocto Project environment:
85 84
86- *Command Lines, BitBake, and Shells:* Traditional development in the 85- *Command Lines, BitBake, and Shells:* Traditional development in the
87 Yocto Project involves using the :term:`OpenEmbedded Build System`, 86 Yocto Project involves using the :term:`OpenEmbedded Build System`,
@@ -94,7 +93,7 @@ methods exist for you to do work in the Yocto Project environment:
94 through your Linux distribution and the Yocto Project. 93 through your Linux distribution and the Yocto Project.
95 94
96 For a general flow of the build procedures, see the 95 For a general flow of the build procedures, see the
97 ":ref:`dev-manual/common-tasks:building a simple image`" 96 ":ref:`dev-manual/building:building a simple image`"
98 section in the Yocto Project Development Tasks Manual. 97 section in the Yocto Project Development Tasks Manual.
99 98
100- *Board Support Package (BSP) Development:* Development of BSPs 99- *Board Support Package (BSP) Development:* Development of BSPs
@@ -132,6 +131,14 @@ methods exist for you to do work in the Yocto Project environment:
132 Toaster and on how to use Toaster in general, see the 131 Toaster and on how to use Toaster in general, see the
133 :doc:`/toaster-manual/index`. 132 :doc:`/toaster-manual/index`.
134 133
134- *Using the VSCode Extension:* You can use the `Yocto Project BitBake
135 <https://marketplace.visualstudio.com/items?itemName=yocto-project.yocto-bitbake>`__
136 extension for Visual Studio Code to start your BitBake builds through a
137 graphical user interface.
138
139 Learn more about the VSCode Extension on the `extension's marketplace page
140 <https://marketplace.visualstudio.com/items?itemName=yocto-project.yocto-bitbake>`__.
141
135Yocto Project Source Repositories 142Yocto Project Source Repositories
136================================= 143=================================
137 144
@@ -157,54 +164,44 @@ these tarballs gives you a snapshot of the released files.
157 164
158 - The recommended method for setting up the Yocto Project 165 - The recommended method for setting up the Yocto Project
159 :term:`Source Directory` and the files 166 :term:`Source Directory` and the files
160 for supported BSPs (e.g., ``meta-intel``) is to use `Git <#git>`__ 167 for supported BSPs (e.g., ``meta-intel``) is to use
168 :ref:`overview-manual/development-environment:git`
161 to create a local copy of the upstream repositories. 169 to create a local copy of the upstream repositories.
162 170
163 - Be sure to always work in matching branches for both the selected 171 - Be sure to always work in matching branches for both the selected
164 BSP repository and the Source Directory (i.e. ``poky``) 172 BSP repository and the Source Directory (i.e. ``poky``)
165 repository. For example, if you have checked out the "master" 173 repository. For example, if you have checked out the "&DISTRO_NAME_NO_CAP;"
166 branch of ``poky`` and you are going to use ``meta-intel``, be 174 branch of ``poky`` and you are going to use ``meta-intel``, be
167 sure to checkout the "master" branch of ``meta-intel``. 175 sure to checkout the "&DISTRO_NAME_NO_CAP;" branch of ``meta-intel``.
168 176
169In summary, here is where you can get the project files needed for 177In summary, here is where you can get the project files needed for
170development: 178development:
171 179
172- :yocto_git:`Source Repositories: <>` This area contains IDE 180- :yocto_git:`Source Repositories: <>` This area contains Poky, Yocto
173 Plugins, Matchbox, Poky, Poky Support, Tools, Yocto Linux Kernel, and 181 documentation, metadata layers, and Linux kernel. You can create local
174 Yocto Metadata Layers. You can create local copies of Git 182 copies of Git repositories for each of these areas.
175 repositories for each of these areas.
176 183
177 .. image:: figures/source-repos.png 184 .. image:: figures/source-repos.png
178 :align: center 185 :width: 100%
179 186
180 For steps on how to view and access these upstream Git repositories, 187 For steps on how to view and access these upstream Git repositories,
181 see the ":ref:`dev-manual/start:accessing source repositories`" 188 see the ":ref:`dev-manual/start:accessing source repositories`"
182 Section in the Yocto Project Development Tasks Manual. 189 Section in the Yocto Project Development Tasks Manual.
183 190
184- :yocto_dl:`Index of /releases: </releases>` This is an index 191- :yocto_dl:`Yocto release archives: </releases/yocto>` This is where you can
185 of releases such as Poky, Pseudo, installers for cross-development 192 download tarballs corresponding to each Yocto Project release. Downloading
186 toolchains, miscellaneous support and all released versions of Yocto 193 and extracting these files does not produce a local copy of a Git repository
187 Project in the form of images or tarballs. Downloading and extracting 194 but rather a snapshot corresponding to a particular release.
188 these files does not produce a local copy of the Git repository but
189 rather a snapshot of a particular release or image.
190
191 .. image:: figures/index-downloads.png
192 :align: center
193
194 For steps on how to view and access these files, see the
195 ":ref:`dev-manual/start:accessing index of releases`"
196 section in the Yocto Project Development Tasks Manual.
197
198- *"DOWNLOADS" page for the* :yocto_home:`Yocto Project Website <>` *:*
199 195
200 The Yocto Project website includes a "DOWNLOADS" page accessible 196- :yocto_home:`DOWNLOADS page </software-overview/downloads/>`:
197 The :yocto_home:`Yocto Project website <>` includes a "DOWNLOADS" page accessible
201 through the "SOFTWARE" menu that allows you to download any Yocto 198 through the "SOFTWARE" menu that allows you to download any Yocto
202 Project release, tool, and Board Support Package (BSP) in tarball 199 Project release, tool, and Board Support Package (BSP) in tarball
203 form. The tarballs are similar to those found in the 200 form. The hyperlinks point to the tarballs under
204 :yocto_dl:`Index of /releases: </releases>` area. 201 :yocto_dl:`/releases/yocto/`.
205 202
206 .. image:: figures/yp-download.png 203 .. image:: figures/yp-download.png
207 :align: center 204 :width: 100%
208 205
209 For steps on how to use the "DOWNLOADS" page, see the 206 For steps on how to use the "DOWNLOADS" page, see the
210 ":ref:`dev-manual/start:using the downloads page`" 207 ":ref:`dev-manual/start:using the downloads page`"
@@ -214,7 +211,8 @@ Git Workflows and the Yocto Project
214=================================== 211===================================
215 212
216Developing using the Yocto Project likely requires the use of 213Developing using the Yocto Project likely requires the use of
217`Git <#git>`__. Git is a free, open source distributed version control 214:ref:`overview-manual/development-environment:git`.
215Git is a free, open source distributed version control
218system used as part of many collaborative design environments. This 216system used as part of many collaborative design environments. This
219section provides workflow concepts using the Yocto Project and Git. In 217section provides workflow concepts using the Yocto Project and Git. In
220particular, the information covers basic practices that describe roles 218particular, the information covers basic practices that describe roles
@@ -231,8 +229,8 @@ all diverging functionality. Although there is no need to use Git, many
231open source projects do so. 229open source projects do so.
232 230
233For the Yocto Project, a key individual called the "maintainer" is 231For the Yocto Project, a key individual called the "maintainer" is
234responsible for the integrity of the "master" branch of a given Git 232responsible for the integrity of the development branch of a given Git
235repository. The "master" branch is the "upstream" repository from which 233repository. The development branch is the "upstream" repository from which
236final or most recent builds of a project occur. The maintainer is 234final or most recent builds of a project occur. The maintainer is
237responsible for accepting changes from other developers and for 235responsible for accepting changes from other developers and for
238organizing the underlying branch structure to reflect release strategies 236organizing the underlying branch structure to reflect release strategies
@@ -242,8 +240,8 @@ and so forth.
242 240
243 For information on finding out who is responsible for (maintains) a 241 For information on finding out who is responsible for (maintains) a
244 particular area of code in the Yocto Project, see the 242 particular area of code in the Yocto Project, see the
245 ":ref:`dev-manual/common-tasks:submitting a change to the yocto project`" 243 ":doc:`/contributor-guide/identify-component`"
246 section of the Yocto Project Development Tasks Manual. 244 section of the Yocto Project and OpenEmbedded Contributor Guide.
247 245
248The Yocto Project ``poky`` Git repository also has an upstream 246The Yocto Project ``poky`` Git repository also has an upstream
249contribution Git repository named ``poky-contrib``. You can see all the 247contribution Git repository named ``poky-contrib``. You can see all the
@@ -269,23 +267,23 @@ files that are being worked on simultaneously by more than one person.
269All this work is done locally on the development host before anything is 267All this work is done locally on the development host before anything is
270pushed to a "contrib" area and examined at the maintainer's level. 268pushed to a "contrib" area and examined at the maintainer's level.
271 269
272A somewhat formal method exists by which developers commit changes and 270There is a somewhat formal method by which developers commit changes and
273push them into the "contrib" area and subsequently request that the 271push them into the "contrib" area and subsequently request that the
274maintainer include them into an upstream branch. This process is called 272maintainer include them into an upstream branch. This process is called
275"submitting a patch" or "submitting a change." For information on 273"submitting a patch" or "submitting a change." For information on
276submitting patches and changes, see the 274submitting patches and changes, see the
277":ref:`dev-manual/common-tasks:submitting a change to the yocto project`" 275":doc:`/contributor-guide/submit-changes`" section in the Yocto Project
278section in the Yocto Project Development Tasks Manual. 276and OpenEmbedded Contributor Guide.
279 277
280In summary, a single point of entry exists for changes into a "master" 278In summary, there is a single point of entry for changes into the
281or development branch of the Git repository, which is controlled by the 279development branch of the Git repository, which is controlled by the
282project's maintainer. And, a set of developers exist who independently 280project's maintainer. A set of developers independently
283develop, test, and submit changes to "contrib" areas for the maintainer 281develop, test, and submit changes to "contrib" areas for the maintainer
284to examine. The maintainer then chooses which changes are going to 282to examine. The maintainer then chooses which changes are going to
285become a permanent part of the project. 283become a permanent part of the project.
286 284
287.. image:: figures/git-workflow.png 285.. image:: svg/git-workflow.*
288 :align: center 286 :width: 100%
289 287
290While each development environment is unique, there are some best 288While each development environment is unique, there are some best
291practices or methods that help development run smoothly. The following 289practices or methods that help development run smoothly. The following
@@ -309,7 +307,7 @@ Book <https://book.git-scm.com>`__.
309 host. You can name these branches anything you like. It is helpful to 307 host. You can name these branches anything you like. It is helpful to
310 give them names associated with the particular feature or change on 308 give them names associated with the particular feature or change on
311 which you are working. Once you are done with a feature or change and 309 which you are working. Once you are done with a feature or change and
312 have merged it into your local master branch, simply discard the 310 have merged it into your local development branch, simply discard the
313 temporary branch. 311 temporary branch.
314 312
315- *Merge Changes:* The ``git merge`` command allows you to take the 313- *Merge Changes:* The ``git merge`` command allows you to take the
@@ -338,20 +336,19 @@ Book <https://book.git-scm.com>`__.
338 software on which to develop. The Yocto Project has two scripts named 336 software on which to develop. The Yocto Project has two scripts named
339 ``create-pull-request`` and ``send-pull-request`` that ship with the 337 ``create-pull-request`` and ``send-pull-request`` that ship with the
340 release to facilitate this workflow. You can find these scripts in 338 release to facilitate this workflow. You can find these scripts in
341 the ``scripts`` folder of the 339 the ``scripts`` folder of the :term:`Source Directory`. For information
342 :term:`Source Directory`. For information
343 on how to use these scripts, see the 340 on how to use these scripts, see the
344 ":ref:`dev-manual/common-tasks:using scripts to push a change upstream and request a pull`" 341 ":ref:`contributor-guide/submit-changes:using scripts to push a change upstream and request a pull`"
345 section in the Yocto Project Development Tasks Manual. 342 section in the Yocto Project and OpenEmbedded Contributor Guide.
346 343
347- *Patch Workflow:* This workflow allows you to notify the maintainer 344- *Patch Workflow:* This workflow allows you to notify the maintainer
348 through an email that you have a change (or patch) you would like 345 through an email that you have a change (or patch) you would like
349 considered for the "master" branch of the Git repository. To send 346 considered for the development branch of the Git repository. To send
350 this type of change, you format the patch and then send the email 347 this type of change, you format the patch and then send the email
351 using the Git commands ``git format-patch`` and ``git send-email``. 348 using the Git commands ``git format-patch`` and ``git send-email``.
352 For information on how to use these scripts, see the 349 For information on how to use these scripts, see the
353 ":ref:`dev-manual/common-tasks:submitting a change to the yocto project`" 350 ":doc:`/contributor-guide/submit-changes`" section in the Yocto Project
354 section in the Yocto Project Development Tasks Manual. 351 and OpenEmbedded Contributor Guide.
355 352
356Git 353Git
357=== 354===
@@ -382,11 +379,10 @@ commands.
382Repositories, Tags, and Branches 379Repositories, Tags, and Branches
383-------------------------------- 380--------------------------------
384 381
385As mentioned briefly in the previous section and also in the "`Git 382As mentioned briefly in the previous section and also in the
386Workflows and the Yocto 383":ref:`overview-manual/development-environment:git workflows and the yocto project`"
387Project <#gs-git-workflows-and-the-yocto-project>`__" section, the Yocto 384section, the Yocto Project maintains source repositories at :yocto_git:`/`.
388Project maintains source repositories at :yocto_git:`/`. If you 385If you look at this web-interface of the repositories, each item is a separate
389look at this web-interface of the repositories, each item is a separate
390Git repository. 386Git repository.
391 387
392Git repositories use branching techniques that track content change (not 388Git repositories use branching techniques that track content change (not
@@ -426,24 +422,18 @@ other branches represent offshoots of the "master" branch.
426When you create a local copy of a Git repository, the copy has the same 422When you create a local copy of a Git repository, the copy has the same
427set of branches as the original. This means you can use Git to create a 423set of branches as the original. This means you can use Git to create a
428local working area (also called a branch) that tracks a specific 424local working area (also called a branch) that tracks a specific
429development branch from the upstream source Git repository. in other 425development branch from the upstream source Git repository. In other
430words, you can define your local Git environment to work on any 426words, you can define your local Git environment to work on any
431development branch in the repository. To help illustrate, consider the 427development branch in the repository. To help illustrate, consider the
432following example Git commands: 428following example Git commands::
433::
434 429
435 $ cd ~ 430 $ cd ~
436 $ git clone git://git.yoctoproject.org/poky 431 $ git clone git://git.yoctoproject.org/poky -b &DISTRO_NAME_NO_CAP;
437 $ cd poky
438 $ git checkout -b &DISTRO_NAME_NO_CAP; origin/&DISTRO_NAME_NO_CAP;
439 432
440In the previous example 433In the previous example
441after moving to the home directory, the ``git clone`` command creates a 434after moving to the home directory, the ``git clone`` command creates a
442local copy of the upstream ``poky`` Git repository. By default, Git 435local copy of the upstream ``poky`` Git repository and checks out a
443checks out the "master" branch for your work. After changing the working 436local branch named "&DISTRO_NAME_NO_CAP;", which tracks the upstream
444directory to the new local repository (i.e. ``poky``), the
445``git checkout`` command creates and checks out a local branch named
446"&DISTRO_NAME_NO_CAP;", which tracks the upstream
447"origin/&DISTRO_NAME_NO_CAP;" branch. Changes you make while in this 437"origin/&DISTRO_NAME_NO_CAP;" branch. Changes you make while in this
448branch would ultimately affect the upstream "&DISTRO_NAME_NO_CAP;" branch 438branch would ultimately affect the upstream "&DISTRO_NAME_NO_CAP;" branch
449of the ``poky`` repository. 439of the ``poky`` repository.
@@ -466,7 +456,7 @@ and clicking on the ``[...]`` link beneath the "Tag" heading.
466 456
467Some key tags for the ``poky`` repository are ``jethro-14.0.3``, 457Some key tags for the ``poky`` repository are ``jethro-14.0.3``,
468``morty-16.0.1``, ``pyro-17.0.0``, and 458``morty-16.0.1``, ``pyro-17.0.0``, and
469``&DISTRO_NAME_NO_CAP;-&POKYVERSION;``. These tags represent Yocto Project 459``&DISTRO_NAME_NO_CAP;-&DISTRO;``. These tags represent Yocto Project
470releases. 460releases.
471 461
472When you create a local copy of the Git repository, you also have access 462When you create a local copy of the Git repository, you also have access
@@ -475,8 +465,7 @@ create and checkout a local working Git branch based on a tag name. When
475you do this, you get a snapshot of the Git repository that reflects the 465you do this, you get a snapshot of the Git repository that reflects the
476state of the files when the change was made associated with that tag. 466state of the files when the change was made associated with that tag.
477The most common use is to checkout a working branch that matches a 467The most common use is to checkout a working branch that matches a
478specific Yocto Project release. Here is an example: 468specific Yocto Project release. Here is an example::
479::
480 469
481 $ cd ~ 470 $ cd ~
482 $ git clone git://git.yoctoproject.org/poky 471 $ git clone git://git.yoctoproject.org/poky
@@ -541,7 +530,7 @@ descriptions and strategies on how to use these commands:
541 in this form assumes the local branch already exists. This command is 530 in this form assumes the local branch already exists. This command is
542 analogous to "cd". 531 analogous to "cd".
543 532
544- *git checkout –b working-branch upstream-branch:* Creates and 533- *git checkout -b working-branch upstream-branch:* Creates and
545 checks out a working branch on your local machine. The local branch 534 checks out a working branch on your local machine. The local branch
546 tracks the upstream branch. You can use your local branch to isolate 535 tracks the upstream branch. You can use your local branch to isolate
547 your work. It is a good idea to use local branches when adding 536 your work. It is a good idea to use local branches when adding
@@ -556,12 +545,12 @@ descriptions and strategies on how to use these commands:
556 You need to be in a local branch other than the one you are deleting 545 You need to be in a local branch other than the one you are deleting
557 in order to delete branch-name. 546 in order to delete branch-name.
558 547
559- *git pull --rebase:* Retrieves information from an upstream Git 548- *git pull \-\-rebase*: Retrieves information from an upstream Git
560 repository and places it in your local Git repository. You use this 549 repository and places it in your local Git repository. You use this
561 command to make sure you are synchronized with the repository from 550 command to make sure you are synchronized with the repository from
562 which you are basing changes (.e.g. the "master" branch). The 551 which you are basing changes (e.g. the "&DISTRO_NAME_NO_CAP;"
563 "--rebase" option ensures that any local commits you have in your 552 branch). The ``--rebase`` option ensures that any local commits you
564 branch are preserved at the top of your local branch. 553 have in your branch are preserved at the top of your local branch.
565 554
566- *git push repo-name local-branch:upstream-branch:* Sends 555- *git push repo-name local-branch:upstream-branch:* Sends
567 all your committed local changes to the upstream Git repository that 556 all your committed local changes to the upstream Git repository that
@@ -572,13 +561,13 @@ descriptions and strategies on how to use these commands:
572 561
573- *git merge:* Combines or adds changes from one local branch of 562- *git merge:* Combines or adds changes from one local branch of
574 your repository with another branch. When you create a local Git 563 your repository with another branch. When you create a local Git
575 repository, the default branch is named "master". A typical workflow 564 repository, the default branch may be named "main". A typical
576 is to create a temporary branch that is based off "master" that you 565 workflow is to create a temporary branch that is based off "main"
577 would use for isolated work. You would make your changes in that 566 that you would use for isolated work. You would make your changes in
578 isolated branch, stage and commit them locally, switch to the 567 that isolated branch, stage and commit them locally, switch to the
579 "master" branch, and then use the ``git merge`` command to apply the 568 "main" branch, and then use the ``git merge`` command to apply the
580 changes from your isolated branch into the currently checked out 569 changes from your isolated branch into the currently checked out
581 branch (e.g. "master"). After the merge is complete and if you are 570 branch (e.g. "main"). After the merge is complete and if you are
582 done with working in that isolated branch, you can safely delete the 571 done with working in that isolated branch, you can safely delete the
583 isolated branch. 572 isolated branch.
584 573
@@ -613,30 +602,22 @@ licensing structures in place. License evolution for both Open Source
613and Free Software has an interesting history. If you are interested in 602and Free Software has an interesting history. If you are interested in
614this history, you can find basic information here: 603this history, you can find basic information here:
615 604
616- `Open source license 605- :wikipedia:`Open source license history <Open-source_license>`
617 history <https://en.wikipedia.org/wiki/Open-source_license>`__
618 606
619- `Free software license 607- :wikipedia:`Free software license history <Free_software_license>`
620 history <https://en.wikipedia.org/wiki/Free_software_license>`__
621 608
622In general, the Yocto Project is broadly licensed under the 609In general, the Yocto Project is broadly licensed under the
623Massachusetts Institute of Technology (MIT) License. MIT licensing 610Massachusetts Institute of Technology (MIT) License. MIT licensing
624permits the reuse of software within proprietary software as long as the 611permits the reuse of software within proprietary software as long as the
625license is distributed with that software. MIT is also compatible with 612license is distributed with that software. Patches to the Yocto Project
626the GNU General Public License (GPL). Patches to the Yocto Project
627follow the upstream licensing scheme. You can find information on the 613follow the upstream licensing scheme. You can find information on the
628MIT license 614MIT license :wikipedia:`here <MIT_License>`.
629`here <https://www.opensource.org/licenses/mit-license.php>`__. You can
630find information on the GNU GPL
631`here <https://www.opensource.org/licenses/LGPL-3.0>`__.
632 615
633When you build an image using the Yocto Project, the build process uses 616When you build an image using the Yocto Project, the build process uses
634a known list of licenses to ensure compliance. You can find this list in 617a known list of licenses to ensure compliance. You can find this list in
635the :term:`Source Directory` at 618the :term:`Source Directory` at ``meta/files/common-licenses``. Once the
636``meta/files/common-licenses``. Once the build completes, the list of 619build completes, the list of all licenses found and used during that build
637all licenses found and used during that build are kept in the 620are kept in the :term:`Build Directory` at ``tmp/deploy/licenses``.
638:term:`Build Directory` at
639``tmp/deploy/licenses``.
640 621
641If a module requires a license that is not in the base list, the build 622If a module requires a license that is not in the base list, the build
642process generates a warning during the build. These tools make it easier 623process generates a warning during the build. These tools make it easier
@@ -661,5 +642,5 @@ Project uses in the ``meta/files/common-licenses`` directory in your
661For information that can help you maintain compliance with various open 642For information that can help you maintain compliance with various open
662source licensing during the lifecycle of a product created using the 643source licensing during the lifecycle of a product created using the
663Yocto Project, see the 644Yocto Project, see the
664":ref:`dev-manual/common-tasks:maintaining open source license compliance during your product's lifecycle`" 645":ref:`dev-manual/licenses:maintaining open source license compliance during your product's lifecycle`"
665section in the Yocto Project Development Tasks Manual. 646section in the Yocto Project Development Tasks Manual.
diff --git a/documentation/overview-manual/figures/analysis-for-package-splitting.png b/documentation/overview-manual/figures/analysis-for-package-splitting.png
deleted file mode 100644
index 0cb038666b..0000000000
--- a/documentation/overview-manual/figures/analysis-for-package-splitting.png
+++ /dev/null
Binary files differ
diff --git a/documentation/overview-manual/figures/configuration-compile-autoreconf.png b/documentation/overview-manual/figures/configuration-compile-autoreconf.png
deleted file mode 100644
index 043d195a33..0000000000
--- a/documentation/overview-manual/figures/configuration-compile-autoreconf.png
+++ /dev/null
Binary files differ
diff --git a/documentation/overview-manual/figures/git-workflow.png b/documentation/overview-manual/figures/git-workflow.png
deleted file mode 100644
index e401330a12..0000000000
--- a/documentation/overview-manual/figures/git-workflow.png
+++ /dev/null
Binary files differ
diff --git a/documentation/overview-manual/figures/index-downloads.png b/documentation/overview-manual/figures/index-downloads.png
deleted file mode 100755
index d8d4475cee..0000000000
--- a/documentation/overview-manual/figures/index-downloads.png
+++ /dev/null
Binary files differ
diff --git a/documentation/overview-manual/figures/patching.png b/documentation/overview-manual/figures/patching.png
deleted file mode 100644
index 80fba7e7cf..0000000000
--- a/documentation/overview-manual/figures/patching.png
+++ /dev/null
Binary files differ
diff --git a/documentation/overview-manual/figures/source-fetching.png b/documentation/overview-manual/figures/source-fetching.png
deleted file mode 100644
index bf5e187b2b..0000000000
--- a/documentation/overview-manual/figures/source-fetching.png
+++ /dev/null
Binary files differ
diff --git a/documentation/overview-manual/figures/source-repos.png b/documentation/overview-manual/figures/source-repos.png
index 603300b6d2..56023d585d 100644
--- a/documentation/overview-manual/figures/source-repos.png
+++ b/documentation/overview-manual/figures/source-repos.png
Binary files differ
diff --git a/documentation/overview-manual/figures/yp-download.png b/documentation/overview-manual/figures/yp-download.png
index bfd12b678a..c8b50ec8a7 100644
--- a/documentation/overview-manual/figures/yp-download.png
+++ b/documentation/overview-manual/figures/yp-download.png
Binary files differ
diff --git a/documentation/overview-manual/history.rst b/documentation/overview-manual/history.rst
deleted file mode 100644
index 6fc700a013..0000000000
--- a/documentation/overview-manual/history.rst
+++ /dev/null
@@ -1,28 +0,0 @@
1.. SPDX-License-Identifier: CC-BY-SA-2.0-UK
2
3***********************
4Manual Revision History
5***********************
6
7.. list-table::
8 :widths: 10 15 40
9 :header-rows: 1
10
11 * - Revision
12 - Date
13 - Note
14 * - 2.5
15 - May 2018
16 - The initial document released with the Yocto Project 2.5 Release
17 * - 2.6
18 - November 2018
19 - Released with the Yocto Project 2.6 Release.
20 * - 2.7
21 - May 2019
22 - Released with the Yocto Project 2.7 Release.
23 * - 3.0
24 - October 2019
25 - Released with the Yocto Project 3.0 Release.
26 * - 3.1
27 - April 2020
28 - Released with the Yocto Project 3.1 Release.
diff --git a/documentation/overview-manual/index.rst b/documentation/overview-manual/index.rst
index 123aed9b8b..04061f8f4e 100644
--- a/documentation/overview-manual/index.rst
+++ b/documentation/overview-manual/index.rst
@@ -14,6 +14,5 @@ Yocto Project Overview and Concepts Manual
14 yp-intro 14 yp-intro
15 development-environment 15 development-environment
16 concepts 16 concepts
17 history
18 17
19.. include:: /boilerplate.rst 18.. include:: /boilerplate.rst
diff --git a/documentation/overview-manual/intro.rst b/documentation/overview-manual/intro.rst
index bd247dd45c..80446b3810 100644
--- a/documentation/overview-manual/intro.rst
+++ b/documentation/overview-manual/intro.rst
@@ -12,19 +12,18 @@ introduces the Yocto Project by providing concepts, software overviews,
12best-known-methods (BKMs), and any other high-level introductory 12best-known-methods (BKMs), and any other high-level introductory
13information suitable for a new Yocto Project user. 13information suitable for a new Yocto Project user.
14 14
15The following list describes what you can get from this manual: 15Here is what you can get from this manual:
16 16
17- `Introducing the Yocto Project <#overview-yp>`__\ *:* This chapter 17- :ref:`overview-manual/yp-intro:introducing the yocto project`\ *:*
18 provides an introduction to the Yocto Project. You will learn about 18 This chapter provides an introduction to the Yocto Project. You will learn
19 features and challenges of the Yocto Project, the layer model, 19 about features and challenges of the Yocto Project, the layer model,
20 components and tools, development methods, the 20 components and tools, development methods, the
21 :term:`Poky` reference distribution, the 21 :term:`Poky` reference distribution, the
22 OpenEmbedded build system workflow, and some basic Yocto terms. 22 OpenEmbedded build system workflow, and some basic Yocto terms.
23 23
24- `The Yocto Project Development 24- :ref:`overview-manual/development-environment:the yocto project development environment`\ *:*
25 Environment <#overview-development-environment>`__\ *:* This chapter 25 This chapter helps you get started understanding the Yocto Project
26 helps you get started understanding the Yocto Project development 26 development environment. You will learn about open source, development hosts,
27 environment. You will learn about open source, development hosts,
28 Yocto Project source repositories, workflows using Git and the Yocto 27 Yocto Project source repositories, workflows using Git and the Yocto
29 Project, a Git primer, and information about licensing. 28 Project, a Git primer, and information about licensing.
30 29
@@ -39,7 +38,7 @@ This manual does not give you the following:
39 procedures reside in other manuals within the Yocto Project 38 procedures reside in other manuals within the Yocto Project
40 documentation set. For example, the :doc:`/dev-manual/index` 39 documentation set. For example, the :doc:`/dev-manual/index`
41 provides examples on how to perform 40 provides examples on how to perform
42 various development tasks. As another example, the 41 various development tasks. As another example, the
43 :doc:`/sdk-manual/index` manual contains detailed 42 :doc:`/sdk-manual/index` manual contains detailed
44 instructions on how to install an SDK, which is used to develop 43 instructions on how to install an SDK, which is used to develop
45 applications for target hardware. 44 applications for target hardware.
diff --git a/documentation/overview-manual/svg/analysis-for-package-splitting.svg b/documentation/overview-manual/svg/analysis-for-package-splitting.svg
new file mode 100644
index 0000000000..16e831d65d
--- /dev/null
+++ b/documentation/overview-manual/svg/analysis-for-package-splitting.svg
@@ -0,0 +1,1862 @@
1<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2<svg
3 version="1.1"
4 id="svg2"
5 width="734.86932"
6 height="801.00769"
7 viewBox="0 0 734.86933 801.00756"
8 sodipodi:docname="analysis-for-package-splitting.svg"
9 inkscape:version="1.4 (e7c3feb100, 2024-10-09)"
10 xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
11 xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
12 xmlns="http://www.w3.org/2000/svg"
13 xmlns:svg="http://www.w3.org/2000/svg"
14 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
15 xmlns:cc="http://creativecommons.org/ns#"
16 xmlns:dc="http://purl.org/dc/elements/1.1/">
17 <sodipodi:namedview
18 pagecolor="#ffffff"
19 bordercolor="#666666"
20 borderopacity="1"
21 objecttolerance="10"
22 gridtolerance="10"
23 guidetolerance="10"
24 inkscape:pageopacity="0"
25 inkscape:pageshadow="2"
26 inkscape:window-width="2255"
27 inkscape:window-height="2059"
28 id="namedview4"
29 showgrid="false"
30 inkscape:zoom="2.894409"
31 inkscape:cx="417.01086"
32 inkscape:cy="503.72978"
33 inkscape:window-x="2271"
34 inkscape:window-y="55"
35 inkscape:window-maximized="0"
36 inkscape:current-layer="g10"
37 inkscape:document-rotation="0"
38 inkscape:snap-perpendicular="true"
39 fit-margin-top="30"
40 lock-margins="true"
41 fit-margin-left="30"
42 fit-margin-right="30"
43 fit-margin-bottom="30"
44 inkscape:pagecheckerboard="0"
45 inkscape:showpageshadow="2"
46 inkscape:deskcolor="#d1d1d1"
47 inkscape:connector-spacing="4">
48 <inkscape:grid
49 type="xygrid"
50 id="grid1257"
51 originx="45.249123"
52 originy="-7.4221846"
53 spacingy="1"
54 spacingx="1"
55 units="px" />
56 </sodipodi:namedview>
57 <metadata
58 id="metadata8">
59 <rdf:RDF>
60 <cc:Work
61 rdf:about="">
62 <dc:format>image/svg+xml</dc:format>
63 <dc:type
64 rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
65 </cc:Work>
66 </rdf:RDF>
67 </metadata>
68 <defs
69 id="defs6">
70 <rect
71 x="695.28046"
72 y="296.58133"
73 width="394.3017"
74 height="334.69226"
75 id="rect37" />
76 <rect
77 x="-345.93011"
78 y="-568.73254"
79 width="776.87695"
80 height="667.43011"
81 id="rect28" />
82 <rect
83 x="23.839064"
84 y="148.04404"
85 width="87.237152"
86 height="79.809036"
87 id="rect2" />
88 <inkscape:path-effect
89 effect="powerstroke"
90 id="path-effect6121"
91 is_visible="true"
92 lpeversion="1"
93 offset_points="0,0.5"
94 sort_points="true"
95 interpolator_type="CubicBezierJohan"
96 interpolator_beta="0.2"
97 start_linecap_type="zerowidth"
98 linejoin_type="extrp_arc"
99 miter_limit="4"
100 scale_width="1"
101 end_linecap_type="zerowidth"
102 not_jump="false"
103 message="" />
104 <marker
105 style="overflow:visible"
106 id="marker5783"
107 refX="0"
108 refY="0"
109 orient="auto"
110 inkscape:stockid="Arrow2Mend"
111 inkscape:isstock="true"
112 viewBox="0 0 6.9304588 5.1962256"
113 markerWidth="6.9304585"
114 markerHeight="5.1962256"
115 preserveAspectRatio="xMidYMid">
116 <path
117 transform="scale(-0.6)"
118 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
119 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
120 id="path5781" />
121 </marker>
122 <marker
123 style="overflow:visible"
124 id="marker5623"
125 refX="0"
126 refY="0"
127 orient="auto"
128 inkscape:stockid="Arrow2Mend"
129 inkscape:isstock="true"
130 viewBox="0 0 6.9304588 5.1962256"
131 markerWidth="6.9304585"
132 markerHeight="5.1962256"
133 preserveAspectRatio="xMidYMid">
134 <path
135 transform="scale(-0.6)"
136 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
137 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
138 id="path5621" />
139 </marker>
140 <marker
141 style="overflow:visible"
142 id="marker5487"
143 refX="0"
144 refY="0"
145 orient="auto"
146 inkscape:stockid="Arrow2Mend"
147 inkscape:isstock="true">
148 <path
149 transform="scale(-0.6)"
150 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
151 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
152 id="path5485" />
153 </marker>
154 <marker
155 style="overflow:visible"
156 id="marker5285"
157 refX="0"
158 refY="0"
159 orient="auto"
160 inkscape:stockid="Arrow2Mstart"
161 inkscape:isstock="true">
162 <path
163 transform="scale(0.6)"
164 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
165 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
166 id="path5283" />
167 </marker>
168 <marker
169 style="overflow:visible"
170 id="marker5161"
171 refX="0"
172 refY="0"
173 orient="auto"
174 inkscape:stockid="Arrow2Mend"
175 inkscape:isstock="true">
176 <path
177 transform="scale(-0.6)"
178 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
179 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
180 id="path5159" />
181 </marker>
182 <marker
183 style="overflow:visible"
184 id="marker4860"
185 refX="0"
186 refY="0"
187 orient="auto"
188 inkscape:stockid="Arrow2Mend"
189 inkscape:isstock="true">
190 <path
191 transform="scale(-0.6)"
192 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
193 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
194 id="path4858" />
195 </marker>
196 <marker
197 style="overflow:visible"
198 id="marker4504"
199 refX="0"
200 refY="0"
201 orient="auto"
202 inkscape:stockid="Arrow2Mend"
203 inkscape:isstock="true">
204 <path
205 transform="scale(-0.6)"
206 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
207 style="fill:#ffa348;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
208 id="path4502" />
209 </marker>
210 <marker
211 style="overflow:visible"
212 id="Arrow1Mend"
213 refX="0"
214 refY="0"
215 orient="auto"
216 inkscape:stockid="Arrow1Mend"
217 inkscape:isstock="true">
218 <path
219 transform="matrix(-0.4,0,0,-0.4,-4,0)"
220 style="fill:#62a0ea;fill-opacity:1;fill-rule:evenodd;stroke:#62a0ea;stroke-width:1pt;stroke-opacity:1"
221 d="M 0,0 5,-5 -12.5,0 5,5 Z"
222 id="path3318" />
223 </marker>
224 <marker
225 style="overflow:visible"
226 id="marker4174"
227 refX="0"
228 refY="0"
229 orient="auto"
230 inkscape:stockid="Arrow2Mstart"
231 inkscape:isstock="true">
232 <path
233 transform="scale(0.6)"
234 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
235 style="fill:#62a0ea;fill-opacity:1;fill-rule:evenodd;stroke:#62a0ea;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
236 id="path4172" />
237 </marker>
238 <marker
239 style="overflow:visible"
240 id="Arrow2Mend"
241 refX="0"
242 refY="0"
243 orient="auto"
244 inkscape:stockid="Arrow2Mend"
245 inkscape:isstock="true">
246 <path
247 transform="scale(-0.6)"
248 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
249 style="fill:#ffa348;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
250 id="path3336" />
251 </marker>
252 <marker
253 style="overflow:visible"
254 id="Arrow1Mstart"
255 refX="0"
256 refY="0"
257 orient="auto"
258 inkscape:stockid="Arrow1Mstart"
259 inkscape:isstock="true">
260 <path
261 transform="matrix(0.4,0,0,0.4,4,0)"
262 style="fill:#ff7800;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:1pt;stroke-opacity:1"
263 d="M 0,0 5,-5 -12.5,0 5,5 Z"
264 id="path3315" />
265 </marker>
266 <marker
267 style="overflow:visible"
268 id="Arrow2Lstart"
269 refX="0"
270 refY="0"
271 orient="auto"
272 inkscape:stockid="Arrow2Lstart"
273 inkscape:isstock="true">
274 <path
275 transform="matrix(1.1,0,0,1.1,1.1,0)"
276 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
277 style="fill:#ff7800;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
278 id="path3327" />
279 </marker>
280 <marker
281 style="overflow:visible"
282 id="Arrow1Lstart"
283 refX="0"
284 refY="0"
285 orient="auto"
286 inkscape:stockid="Arrow1Lstart"
287 inkscape:isstock="true">
288 <path
289 transform="matrix(0.8,0,0,0.8,10,0)"
290 style="fill:#ff7800;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:1pt;stroke-opacity:1"
291 d="M 0,0 5,-5 -12.5,0 5,5 Z"
292 id="path3309" />
293 </marker>
294 <linearGradient
295 id="linearGradient921"
296 inkscape:swatch="solid">
297 <stop
298 style="stop-color:#deddda;stop-opacity:1;"
299 offset="0"
300 id="stop919" />
301 </linearGradient>
302 <linearGradient
303 id="linearGradient6035-4">
304 <stop
305 id="stop6037-2"
306 style="stop-color:#ffffff"
307 offset="0" />
308 <stop
309 id="stop6039-9"
310 style="stop-color:#ffffff;stop-opacity:0"
311 offset="1" />
312 </linearGradient>
313 <marker
314 style="overflow:visible"
315 id="Arrow2Mstart-4"
316 refX="0"
317 refY="0"
318 orient="auto"
319 inkscape:stockid="Arrow2Mstart"
320 inkscape:isstock="true">
321 <path
322 transform="scale(0.6)"
323 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
324 style="fill:#ffa348;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
325 id="path3333-2" />
326 </marker>
327 <marker
328 style="overflow:visible"
329 id="Arrow2Mend-2"
330 refX="0"
331 refY="0"
332 orient="auto"
333 inkscape:stockid="Arrow2Mend"
334 inkscape:isstock="true">
335 <path
336 transform="scale(-0.6)"
337 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
338 style="fill:#ffa348;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
339 id="path3336-7" />
340 </marker>
341 <marker
342 style="overflow:visible"
343 id="marker5623-2"
344 refX="0"
345 refY="0"
346 orient="auto"
347 inkscape:stockid="Arrow2Mend"
348 inkscape:isstock="true">
349 <path
350 transform="scale(-0.6)"
351 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
352 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
353 id="path5621-3" />
354 </marker>
355 <marker
356 style="overflow:visible"
357 id="Arrow2Mend-4"
358 refX="0"
359 refY="0"
360 orient="auto"
361 inkscape:stockid="Arrow2Mend"
362 inkscape:isstock="true">
363 <path
364 transform="scale(-0.6)"
365 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
366 style="fill:#ffa348;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
367 id="path3336-3" />
368 </marker>
369 <marker
370 style="overflow:visible"
371 id="marker5285-1"
372 refX="0"
373 refY="0"
374 orient="auto"
375 inkscape:stockid="Arrow2Mstart"
376 inkscape:isstock="true">
377 <path
378 transform="scale(0.6)"
379 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
380 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
381 id="path5283-7" />
382 </marker>
383 <marker
384 style="overflow:visible"
385 id="marker5161-4"
386 refX="0"
387 refY="0"
388 orient="auto"
389 inkscape:stockid="Arrow2Mend"
390 inkscape:isstock="true">
391 <path
392 transform="scale(-0.6)"
393 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
394 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
395 id="path5159-3" />
396 </marker>
397 <marker
398 style="overflow:visible"
399 id="marker5285-1-4"
400 refX="0"
401 refY="0"
402 orient="auto"
403 inkscape:stockid="Arrow2Mstart"
404 inkscape:isstock="true">
405 <path
406 transform="scale(0.6)"
407 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
408 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
409 id="path5283-7-6" />
410 </marker>
411 <marker
412 style="overflow:visible"
413 id="marker5161-4-9"
414 refX="0"
415 refY="0"
416 orient="auto"
417 inkscape:stockid="Arrow2Mend"
418 inkscape:isstock="true">
419 <path
420 transform="scale(-0.6)"
421 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
422 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
423 id="path5159-3-4" />
424 </marker>
425 <marker
426 style="overflow:visible"
427 id="marker4174-8"
428 refX="0"
429 refY="0"
430 orient="auto"
431 inkscape:stockid="Arrow2Mstart"
432 inkscape:isstock="true">
433 <path
434 transform="scale(0.6)"
435 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
436 style="fill:#62a0ea;fill-opacity:1;fill-rule:evenodd;stroke:#62a0ea;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
437 id="path4172-8" />
438 </marker>
439 <marker
440 style="overflow:visible"
441 id="marker5285-9"
442 refX="0"
443 refY="0"
444 orient="auto"
445 inkscape:stockid="Arrow2Mstart"
446 inkscape:isstock="true">
447 <path
448 transform="scale(0.6)"
449 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
450 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
451 id="path5283-5" />
452 </marker>
453 <marker
454 style="overflow:visible"
455 id="marker5161-0"
456 refX="0"
457 refY="0"
458 orient="auto"
459 inkscape:stockid="marker5161-0"
460 inkscape:isstock="true">
461 <path
462 transform="scale(-0.6)"
463 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
464 style="fill:#deddda;fill-opacity:1;fill-rule:evenodd;stroke:#deddda;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
465 id="path5159-4" />
466 </marker>
467 <marker
468 style="overflow:visible"
469 id="marker5285-17"
470 refX="0"
471 refY="0"
472 orient="auto"
473 inkscape:stockid="Arrow2Mstart"
474 inkscape:isstock="true">
475 <path
476 transform="scale(0.6)"
477 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
478 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
479 id="path5283-2" />
480 </marker>
481 <marker
482 style="overflow:visible"
483 id="marker5161-7"
484 refX="0"
485 refY="0"
486 orient="auto"
487 inkscape:stockid="Arrow2Mend"
488 inkscape:isstock="true">
489 <path
490 transform="scale(-0.6)"
491 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
492 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
493 id="path5159-2" />
494 </marker>
495 <marker
496 style="overflow:visible"
497 id="marker5285-17-6"
498 refX="0"
499 refY="0"
500 orient="auto"
501 inkscape:stockid="Arrow2Mstart"
502 inkscape:isstock="true">
503 <path
504 transform="scale(0.6)"
505 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
506 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
507 id="path5283-2-1" />
508 </marker>
509 <marker
510 style="overflow:visible"
511 id="marker5285-17-6-6"
512 refX="0"
513 refY="0"
514 orient="auto"
515 inkscape:stockid="Arrow2Mstart"
516 inkscape:isstock="true">
517 <path
518 transform="scale(0.6)"
519 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
520 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
521 id="path5283-2-1-1" />
522 </marker>
523 <marker
524 style="overflow:visible"
525 id="marker5285-17-9"
526 refX="0"
527 refY="0"
528 orient="auto"
529 inkscape:stockid="Arrow2Mstart"
530 inkscape:isstock="true">
531 <path
532 transform="scale(0.6)"
533 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
534 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
535 id="path5283-2-4" />
536 </marker>
537 <marker
538 style="overflow:visible"
539 id="marker5285-17-9-0"
540 refX="0"
541 refY="0"
542 orient="auto"
543 inkscape:stockid="Arrow2Mstart"
544 inkscape:isstock="true">
545 <path
546 transform="scale(0.6)"
547 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
548 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
549 id="path5283-2-4-9" />
550 </marker>
551 <marker
552 style="overflow:visible"
553 id="marker5285-17-9-2"
554 refX="0"
555 refY="0"
556 orient="auto"
557 inkscape:stockid="Arrow2Mstart"
558 inkscape:isstock="true">
559 <path
560 transform="scale(0.6)"
561 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
562 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
563 id="path5283-2-4-93" />
564 </marker>
565 <marker
566 style="overflow:visible"
567 id="marker5285-17-9-2-0"
568 refX="0"
569 refY="0"
570 orient="auto"
571 inkscape:stockid="Arrow2Mstart"
572 inkscape:isstock="true">
573 <path
574 transform="scale(0.6)"
575 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
576 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
577 id="path5283-2-4-93-9" />
578 </marker>
579 <marker
580 style="overflow:visible"
581 id="marker5285-17-9-3"
582 refX="0"
583 refY="0"
584 orient="auto"
585 inkscape:stockid="Arrow2Mstart"
586 inkscape:isstock="true">
587 <path
588 transform="scale(0.6)"
589 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
590 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
591 id="path5283-2-4-8" />
592 </marker>
593 <marker
594 style="overflow:visible"
595 id="marker5285-17-9-2-5"
596 refX="0"
597 refY="0"
598 orient="auto"
599 inkscape:stockid="Arrow2Mstart"
600 inkscape:isstock="true"
601 viewBox="0 0 6.9304588 5.1962256"
602 markerWidth="6.9304585"
603 markerHeight="5.1962256"
604 preserveAspectRatio="xMidYMid">
605 <path
606 transform="scale(0.6)"
607 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
608 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
609 id="path5283-2-4-93-6" />
610 </marker>
611 <marker
612 style="overflow:visible"
613 id="marker5285-17-6-1"
614 refX="0"
615 refY="0"
616 orient="auto"
617 inkscape:stockid="Arrow2Mstart"
618 inkscape:isstock="true">
619 <path
620 transform="scale(0.6)"
621 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
622 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
623 id="path5283-2-1-15" />
624 </marker>
625 <marker
626 style="overflow:visible"
627 id="marker5285-17-4"
628 refX="0"
629 refY="0"
630 orient="auto"
631 inkscape:stockid="Arrow2Mstart"
632 inkscape:isstock="true">
633 <path
634 transform="scale(0.6)"
635 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
636 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
637 id="path5283-2-7" />
638 </marker>
639 <marker
640 style="overflow:visible"
641 id="marker5285-17-4-4"
642 refX="0"
643 refY="0"
644 orient="auto"
645 inkscape:stockid="Arrow2Mstart"
646 inkscape:isstock="true">
647 <path
648 transform="scale(0.6)"
649 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
650 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
651 id="path5283-2-7-3" />
652 </marker>
653 <marker
654 style="overflow:visible"
655 id="marker5285-17-4-4-3"
656 refX="0"
657 refY="0"
658 orient="auto"
659 inkscape:stockid="Arrow2Mstart"
660 inkscape:isstock="true">
661 <path
662 transform="scale(0.6)"
663 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
664 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
665 id="path5283-2-7-3-8" />
666 </marker>
667 <marker
668 style="overflow:visible"
669 id="marker5285-17-4-7"
670 refX="0"
671 refY="0"
672 orient="auto"
673 inkscape:stockid="Arrow2Mstart"
674 inkscape:isstock="true">
675 <path
676 transform="scale(0.6)"
677 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
678 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
679 id="path5283-2-7-7" />
680 </marker>
681 <marker
682 style="overflow:visible"
683 id="marker5285-17-4-7-6"
684 refX="0"
685 refY="0"
686 orient="auto"
687 inkscape:stockid="Arrow2Mstart"
688 inkscape:isstock="true">
689 <path
690 transform="scale(0.6)"
691 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
692 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
693 id="path5283-2-7-7-4" />
694 </marker>
695 <marker
696 style="overflow:visible"
697 id="marker5285-17-4-7-0"
698 refX="0"
699 refY="0"
700 orient="auto"
701 inkscape:stockid="Arrow2Mstart"
702 inkscape:isstock="true">
703 <path
704 transform="scale(0.6)"
705 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
706 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
707 id="path5283-2-7-7-3" />
708 </marker>
709 <marker
710 style="overflow:visible"
711 id="marker5285-17-4-7-0-9"
712 refX="0"
713 refY="0"
714 orient="auto"
715 inkscape:stockid="Arrow2Mstart"
716 inkscape:isstock="true">
717 <path
718 transform="scale(0.6)"
719 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
720 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
721 id="path5283-2-7-7-3-2" />
722 </marker>
723 <marker
724 style="overflow:visible"
725 id="marker5285-17-4-7-0-9-4"
726 refX="0"
727 refY="0"
728 orient="auto"
729 inkscape:stockid="Arrow2Mstart"
730 inkscape:isstock="true">
731 <path
732 transform="scale(0.6)"
733 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
734 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
735 id="path5283-2-7-7-3-2-0" />
736 </marker>
737 <marker
738 style="overflow:visible"
739 id="marker5285-17-9-2-5-4"
740 refX="0"
741 refY="0"
742 orient="auto"
743 inkscape:stockid="Arrow2Mstart"
744 inkscape:isstock="true"
745 viewBox="0 0 6.9304588 5.1962256"
746 markerWidth="6.9304585"
747 markerHeight="5.1962256"
748 preserveAspectRatio="xMidYMid">
749 <path
750 transform="scale(0.6)"
751 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
752 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
753 id="path5283-2-4-93-6-7" />
754 </marker>
755 <marker
756 style="overflow:visible"
757 id="marker5285-17-9-2-8"
758 refX="0"
759 refY="0"
760 orient="auto"
761 inkscape:stockid="Arrow2Mstart"
762 inkscape:isstock="true">
763 <path
764 transform="scale(0.6)"
765 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
766 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
767 id="path5283-2-4-93-1" />
768 </marker>
769 <marker
770 style="overflow:visible"
771 id="marker5285-17-9-2-8-5"
772 refX="0"
773 refY="0"
774 orient="auto"
775 inkscape:stockid="Arrow2Mstart"
776 inkscape:isstock="true">
777 <path
778 transform="scale(0.6)"
779 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
780 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
781 id="path5283-2-4-93-1-6" />
782 </marker>
783 <marker
784 style="overflow:visible"
785 id="marker5285-17-9-2-8-5-2"
786 refX="0"
787 refY="0"
788 orient="auto"
789 inkscape:stockid="Arrow2Mstart"
790 inkscape:isstock="true">
791 <path
792 transform="scale(0.6)"
793 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
794 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
795 id="path5283-2-4-93-1-6-7" />
796 </marker>
797 <marker
798 style="overflow:visible"
799 id="marker5285-17-9-2-8-5-2-6"
800 refX="0"
801 refY="0"
802 orient="auto"
803 inkscape:stockid="Arrow2Mstart"
804 inkscape:isstock="true">
805 <path
806 transform="scale(0.6)"
807 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
808 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
809 id="path5283-2-4-93-1-6-7-0" />
810 </marker>
811 <marker
812 style="overflow:visible"
813 id="marker5285-17-9-1"
814 refX="0"
815 refY="0"
816 orient="auto"
817 inkscape:stockid="Arrow2Mstart"
818 inkscape:isstock="true">
819 <path
820 transform="scale(0.6)"
821 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
822 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
823 id="path5283-2-4-87" />
824 </marker>
825 <marker
826 style="overflow:visible"
827 id="marker5285-17-9-2-9"
828 refX="0"
829 refY="0"
830 orient="auto"
831 inkscape:stockid="Arrow2Mstart"
832 inkscape:isstock="true">
833 <path
834 transform="scale(0.6)"
835 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
836 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
837 id="path5283-2-4-93-2" />
838 </marker>
839 <marker
840 style="overflow:visible"
841 id="marker5285-17-9-2-8-0"
842 refX="0"
843 refY="0"
844 orient="auto"
845 inkscape:stockid="Arrow2Mstart"
846 inkscape:isstock="true">
847 <path
848 transform="scale(0.6)"
849 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
850 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
851 id="path5283-2-4-93-1-2" />
852 </marker>
853 <marker
854 style="overflow:visible"
855 id="marker5285-17-9-2-8-5-3"
856 refX="0"
857 refY="0"
858 orient="auto"
859 inkscape:stockid="Arrow2Mstart"
860 inkscape:isstock="true">
861 <path
862 transform="scale(0.6)"
863 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
864 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
865 id="path5283-2-4-93-1-6-75" />
866 </marker>
867 <marker
868 style="overflow:visible"
869 id="marker5285-17-9-2-8-5-2-9"
870 refX="0"
871 refY="0"
872 orient="auto"
873 inkscape:stockid="Arrow2Mstart"
874 inkscape:isstock="true">
875 <path
876 transform="scale(0.6)"
877 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
878 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
879 id="path5283-2-4-93-1-6-7-2" />
880 </marker>
881 <marker
882 style="overflow:visible"
883 id="marker5285-17-9-2-8-5-2-6-2"
884 refX="0"
885 refY="0"
886 orient="auto"
887 inkscape:stockid="Arrow2Mstart"
888 inkscape:isstock="true">
889 <path
890 transform="scale(0.6)"
891 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
892 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
893 id="path5283-2-4-93-1-6-7-0-8" />
894 </marker>
895 <marker
896 style="overflow:visible"
897 id="marker5285-17-6-9"
898 refX="0"
899 refY="0"
900 orient="auto"
901 inkscape:stockid="Arrow2Mstart"
902 inkscape:isstock="true">
903 <path
904 transform="scale(0.6)"
905 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
906 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
907 id="path5283-2-1-7" />
908 </marker>
909 <marker
910 style="overflow:visible"
911 id="marker5285-17-7"
912 refX="0"
913 refY="0"
914 orient="auto"
915 inkscape:stockid="Arrow2Mstart"
916 inkscape:isstock="true">
917 <path
918 transform="scale(0.6)"
919 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
920 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
921 id="path5283-2-45" />
922 </marker>
923 <marker
924 style="overflow:visible"
925 id="marker5783-8"
926 refX="0"
927 refY="0"
928 orient="auto"
929 inkscape:stockid="Arrow2Mend"
930 inkscape:isstock="true"
931 viewBox="0 0 6.9304588 5.1962256"
932 markerWidth="6.9304585"
933 markerHeight="5.1962256"
934 preserveAspectRatio="xMidYMid">
935 <path
936 transform="scale(-0.6)"
937 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
938 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
939 id="path5781-4" />
940 </marker>
941 <marker
942 style="overflow:visible"
943 id="marker5783-8-1"
944 refX="0"
945 refY="0"
946 orient="auto"
947 inkscape:stockid="Arrow2Mend"
948 inkscape:isstock="true"
949 viewBox="0 0 6.9304588 5.1962256"
950 markerWidth="6.9304585"
951 markerHeight="5.1962256"
952 preserveAspectRatio="xMidYMid">
953 <path
954 transform="scale(-0.6)"
955 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
956 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
957 id="path5781-4-4" />
958 </marker>
959 <marker
960 style="overflow:visible"
961 id="marker5783-8-1-2"
962 refX="0"
963 refY="0"
964 orient="auto"
965 inkscape:stockid="Arrow2Mend"
966 inkscape:isstock="true"
967 viewBox="0 0 6.9304588 5.1962256"
968 markerWidth="6.9304585"
969 markerHeight="5.1962256"
970 preserveAspectRatio="xMidYMid">
971 <path
972 transform="scale(-0.6)"
973 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
974 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
975 id="path5781-4-4-0" />
976 </marker>
977 <marker
978 style="overflow:visible"
979 id="marker5783-8-9"
980 refX="0"
981 refY="0"
982 orient="auto"
983 inkscape:stockid="Arrow2Mend"
984 inkscape:isstock="true"
985 viewBox="0 0 6.9304588 5.1962256"
986 markerWidth="6.9304585"
987 markerHeight="5.1962256"
988 preserveAspectRatio="xMidYMid">
989 <path
990 transform="scale(-0.6)"
991 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
992 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
993 id="path5781-4-5" />
994 </marker>
995 <marker
996 style="overflow:visible"
997 id="marker5783-8-9-7"
998 refX="0"
999 refY="0"
1000 orient="auto"
1001 inkscape:stockid="Arrow2Mend"
1002 inkscape:isstock="true"
1003 viewBox="0 0 6.9304588 5.1962256"
1004 markerWidth="6.9304585"
1005 markerHeight="5.1962256"
1006 preserveAspectRatio="xMidYMid">
1007 <path
1008 transform="scale(-0.6)"
1009 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
1010 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
1011 id="path5781-4-5-1" />
1012 </marker>
1013 <marker
1014 style="overflow:visible"
1015 id="marker5783-8-9-7-2"
1016 refX="0"
1017 refY="0"
1018 orient="auto"
1019 inkscape:stockid="Arrow2Mend"
1020 inkscape:isstock="true"
1021 viewBox="0 0 6.9304588 5.1962256"
1022 markerWidth="6.9304585"
1023 markerHeight="5.1962256"
1024 preserveAspectRatio="xMidYMid">
1025 <path
1026 transform="scale(-0.6)"
1027 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
1028 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
1029 id="path5781-4-5-1-7" />
1030 </marker>
1031 </defs>
1032 <g
1033 inkscape:groupmode="layer"
1034 inkscape:label="Image"
1035 id="g10"
1036 transform="translate(45.24912,-7.4222032)">
1037 <rect
1038 style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:3.83172;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-opacity:0"
1039 id="rect1"
1040 width="731.0376"
1041 height="797.17596"
1042 x="-43.33326"
1043 y="9.3380632" />
1044 <text
1045 xml:space="preserve"
1046 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14.423px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1047 x="142.22464"
1048 y="565.10297"
1049 id="text907"><tspan
1050 sodipodi:role="line"
1051 id="tspan905"
1052 x="142.22464"
1053 y="565.10297" /></text>
1054 <text
1055 xml:space="preserve"
1056 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14.423px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1057 x="98.363503"
1058 y="637.8432"
1059 id="text911"><tspan
1060 sodipodi:role="line"
1061 id="tspan909"
1062 x="98.363503"
1063 y="637.8432" /></text>
1064 <text
1065 xml:space="preserve"
1066 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14.423px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1067 x="-59.575905"
1068 y="580.05695"
1069 id="text915"><tspan
1070 sodipodi:role="line"
1071 id="tspan913"
1072 x="-59.575905"
1073 y="580.05695" /></text>
1074 <text
1075 xml:space="preserve"
1076 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14.423px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1077 x="313.46567"
1078 y="412.9321"
1079 id="text3781"><tspan
1080 sodipodi:role="line"
1081 id="tspan3779"
1082 x="313.46567"
1083 y="412.9321" /></text>
1084 <g
1085 id="g72820-3"
1086 transform="matrix(3.2001899,0,0,4.5594279,-282.17456,-390.84179)">
1087 <rect
1088 style="fill:#00b0f0;fill-opacity:1;fill-rule:evenodd;stroke:#62a0ea;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
1089 id="rect917-2-4-5-6"
1090 width="196.16678"
1091 height="116.53151"
1092 x="79.029411"
1093 y="133.47046"
1094 ry="5.8418503" />
1095 <rect
1096 style="fill:#00b0f0;fill-opacity:1;fill-rule:evenodd;stroke:#62a0ea;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
1097 id="rect917-2-4-5-6-5"
1098 width="79.107689"
1099 height="139.36775"
1100 x="77.354088"
1101 y="120.6852"
1102 ry="6.9866552" />
1103 </g>
1104 <text
1105 xml:space="preserve"
1106 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:3.77584px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.3431px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1107 x="77.136833"
1108 y="154.30118"
1109 id="text1185-3-5-5-9-7"
1110 transform="matrix(3.8793701,0,0,3.7611867,-282.17456,-390.84179)"><tspan
1111 sodipodi:role="line"
1112 x="77.136833"
1113 y="154.30118"
1114 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:3.77584px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;stroke:none;stroke-width:0.3431px"
1115 id="tspan60047-3">BitBake</tspan></text>
1116 <text
1117 xml:space="preserve"
1118 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14.423px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1119 x="-16.290483"
1120 y="345.7359"
1121 id="text3116"><tspan
1122 sodipodi:role="line"
1123 id="tspan3114"
1124 x="-16.290483"
1125 y="345.7359" /></text>
1126 <rect
1127 style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:3.40131;stroke-dasharray:none;stroke-opacity:1"
1128 id="rect917-0-6"
1129 width="311.23941"
1130 height="481.69095"
1131 x="258.40805"
1132 y="239.28131"
1133 ry="24.147688" />
1134 <rect
1135 style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:1.55846;stroke-dasharray:none;stroke-opacity:1"
1136 id="rect917-0-6-27"
1137 width="252.62085"
1138 height="124.59291"
1139 x="-27.615782"
1140 y="23.720779"
1141 ry="6.245976" />
1142 <g
1143 id="g3"
1144 transform="translate(35.220014,45.500997)">
1145 <rect
1146 style="fill:#a0a0a0;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
1147 id="rect917-0-6-27-0"
1148 width="77.51136"
1149 height="60.565445"
1150 x="-57.536053"
1151 y="-15.779959"
1152 ry="3.0362105" />
1153 </g>
1154 <rect
1155 style="fill:#deddda;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
1156 id="rect917-0-6-2"
1157 width="269.43472"
1158 height="444.9303"
1159 x="278.89612"
1160 y="260.58664"
1161 ry="22.304832" />
1162 <rect
1163 style="fill:#deddda;fill-opacity:1;fill-rule:evenodd;stroke:#deddda;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
1164 id="rect917-0-6-2-5"
1165 width="202.82013"
1166 height="485.78915"
1167 x="-7.0357914"
1168 y="238.39011"
1169 ry="24.353132" />
1170 <g
1171 id="g3-3"
1172 transform="translate(116.73881,46.221543)">
1173 <rect
1174 style="fill:#a0a0a0;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
1175 id="rect917-0-6-27-0-61"
1176 width="77.51136"
1177 height="60.565445"
1178 x="-57.536053"
1179 y="-15.779959"
1180 ry="3.0362105" />
1181 </g>
1182 <text
1183 xml:space="preserve"
1184 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14.423px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1185 x="97.333916"
1186 y="56.925354"
1187 id="text1185-3-5-5-9-7-93-9"
1188 transform="scale(1.0010629,0.99893822)"><tspan
1189 sodipodi:role="line"
1190 x="97.333916"
1191 y="56.925354"
1192 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14.423px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.42682px"
1193 id="tspan2-9">Local</tspan><tspan
1194 sodipodi:role="line"
1195 x="97.333916"
1196 y="74.954163"
1197 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14.423px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.42682px"
1198 id="tspan5">Projects</tspan></text>
1199 <g
1200 id="g3-3-4"
1201 transform="translate(196.92116,46.722616)">
1202 <rect
1203 style="fill:#a0a0a0;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
1204 id="rect917-0-6-27-0-61-7"
1205 width="77.51136"
1206 height="60.565445"
1207 x="-57.536053"
1208 y="-15.779959"
1209 ry="3.0362105" />
1210 </g>
1211 <text
1212 xml:space="preserve"
1213 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14.423px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1214 x="178.98425"
1215 y="57.254028"
1216 id="text1185-3-5-5-9-7-93-9-4"
1217 transform="scale(1.0010629,0.99893822)"><tspan
1218 sodipodi:role="line"
1219 x="178.98425"
1220 y="57.254028"
1221 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14.423px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.42682px"
1222 id="tspan2-9-3">SCMs</tspan><tspan
1223 sodipodi:role="line"
1224 x="178.98425"
1225 y="75.282837"
1226 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14.423px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.42682px"
1227 id="tspan7">(optional)</tspan></text>
1228 <g
1229 id="g3-3-0"
1230 transform="matrix(3.0548289,0,0,0.817457,154.7927,106.51272)">
1231 <rect
1232 style="fill:#656565;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
1233 id="rect917-0-6-27-0-61-6"
1234 width="77.51136"
1235 height="60.565445"
1236 x="-57.536053"
1237 y="-15.779959"
1238 ry="2.4245923"
1239 rx="0.72017127" />
1240 </g>
1241 <rect
1242 style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
1243 id="rect917-0-6-27-0-6-3"
1244 width="19.926487"
1245 height="18.934353"
1246 x="67.23761"
1247 y="46.18803"
1248 ry="0"
1249 transform="rotate(43.365087)" />
1250 <rect
1251 style="fill:#a1a1a1;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
1252 id="rect917-0-6-27-0-6-3-2"
1253 width="19.926487"
1254 height="18.934353"
1255 x="65.122414"
1256 y="43.956516"
1257 ry="0"
1258 transform="rotate(43.365087)" />
1259 <rect
1260 style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
1261 id="rect917-0-6-27-0-6-3-5"
1262 width="19.926487"
1263 height="18.934353"
1264 x="125.11585"
1265 y="-8.3188419"
1266 ry="0"
1267 transform="rotate(43.365087)" />
1268 <rect
1269 style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
1270 id="rect917-0-6-27-0-6-3-5-4"
1271 width="19.926487"
1272 height="18.934353"
1273 x="171.14642"
1274 y="37.717709"
1275 ry="0"
1276 transform="rotate(43.365087)" />
1277 <rect
1278 style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
1279 id="rect917-0-6-27-0-6-3-5-4-5"
1280 width="19.926487"
1281 height="18.934353"
1282 x="378.89963"
1283 y="-79.716248"
1284 ry="0"
1285 transform="rotate(43.365087)" />
1286 <rect
1287 style="fill:#00b0f0;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
1288 id="rect917-0-6-27-0-6-3-5-4-2"
1289 width="19.926487"
1290 height="18.934353"
1291 x="223.0507"
1292 y="97.172928"
1293 ry="0"
1294 transform="rotate(43.365087)" />
1295 <rect
1296 style="fill:#dddcd9;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
1297 id="rect917-0-6-27-0-6-3-5-4-2-5"
1298 width="11.829602"
1299 height="11.269682"
1300 x="548.83148"
1301 y="443.72842"
1302 ry="0"
1303 transform="matrix(0.71126059,0.70292843,-0.67005221,0.74231397,0,0)" />
1304 <rect
1305 style="fill:#a1a1a1;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
1306 id="rect917-0-6-27-0-6-3-2-4"
1307 width="19.926487"
1308 height="18.934353"
1309 x="123.00065"
1310 y="-10.550359"
1311 ry="0"
1312 transform="rotate(43.365087)" />
1313 <rect
1314 style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
1315 id="rect917-0-6-27-0-6-3-5-7"
1316 width="19.926487"
1317 height="18.934353"
1318 x="183.64206"
1319 y="-63.606796"
1320 ry="0"
1321 transform="rotate(43.365087)" />
1322 <rect
1323 style="fill:#a1a1a1;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
1324 id="rect917-0-6-27-0-6-3-2-4-6"
1325 width="19.926487"
1326 height="18.934353"
1327 x="181.52687"
1328 y="-65.83831"
1329 ry="0"
1330 transform="rotate(43.365087)" />
1331 <rect
1332 style="fill:#666666;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
1333 id="rect917-0-6-27-0-6-3-2-4-6-7"
1334 width="19.926487"
1335 height="18.934353"
1336 x="160.17146"
1337 y="26.363537"
1338 ry="0"
1339 transform="rotate(43.365087)" />
1340 <text
1341 xml:space="preserve"
1342 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:14.423px;line-height:119%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1343 x="327.32535"
1344 y="256.38834"
1345 id="text1185-3-5-5-9-7-9"
1346 transform="scale(1.0010629,0.99893822)"><tspan
1347 sodipodi:role="line"
1348 x="327.32535"
1349 y="256.38834"
1350 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:14.423px;line-height:119%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;stroke:none;stroke-width:1.42682px"
1351 id="tspan60047-3-1">Build Directory</tspan></text>
1352 <text
1353 xml:space="preserve"
1354 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14.423px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1355 x="17.109625"
1356 y="49.63269"
1357 id="text1185-3-5-5-9-7-93"
1358 transform="scale(1.0010629,0.99893822)"><tspan
1359 sodipodi:role="line"
1360 x="17.109625"
1361 y="49.63269"
1362 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14.423px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.42682px"
1363 id="tspan60047-3-6">Upstream</tspan><tspan
1364 sodipodi:role="line"
1365 x="17.109625"
1366 y="67.661499"
1367 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14.423px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.42682px"
1368 id="tspan1">Project</tspan><tspan
1369 sodipodi:role="line"
1370 x="17.109627"
1371 y="85.6903"
1372 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14.423px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.42682px"
1373 id="tspan2">Releases</tspan></text>
1374 <rect
1375 style="fill:#92d050;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
1376 id="rect917-0-6-2-5-4"
1377 width="111.94537"
1378 height="33.113335"
1379 x="14.909211"
1380 y="280.46252" />
1381 <rect
1382 style="fill:#92d050;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
1383 id="rect917-0-6-2-5-4-7"
1384 width="335.60818"
1385 height="86.319359"
1386 x="244.38937"
1387 y="117.56476" />
1388 <text
1389 xml:space="preserve"
1390 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.84771px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1391 x="72.69371"
1392 y="293.32269"
1393 id="text1185-3-5-5-9-7-4-3"
1394 transform="scale(0.97863561,1.0218308)"><tspan
1395 sodipodi:role="line"
1396 x="72.69371"
1397 y="293.32269"
1398 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;stroke:none;stroke-width:0.84771px"
1399 id="tspan60047-3-7-0">do_package_write_rpm</tspan></text>
1400 <text
1401 xml:space="preserve"
1402 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:14.423px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.84771px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1403 x="420.95044"
1404 y="163.41214"
1405 id="text1185-3-5-5-9-7-4-3-65"
1406 transform="scale(0.97863561,1.0218308)"><tspan
1407 sodipodi:role="line"
1408 x="420.95044"
1409 y="163.41214"
1410 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:14.423px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;stroke:none;stroke-width:0.84771px"
1411 id="tspan60047-3-7-0-6">Package Feeds</tspan></text>
1412 <rect
1413 style="fill:#92d050;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
1414 id="rect917-0-6-2-5-4-0"
1415 width="111.94537"
1416 height="33.113335"
1417 x="15.099504"
1418 y="322.04715" />
1419 <text
1420 xml:space="preserve"
1421 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.84771px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1422 x="72.807816"
1423 y="332.80719"
1424 id="text1185-3-5-5-9-7-4-3-4"
1425 transform="scale(0.97863561,1.0218308)"><tspan
1426 sodipodi:role="line"
1427 x="72.807816"
1428 y="332.80719"
1429 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;stroke:none;stroke-width:0.84771px"
1430 id="tspan60047-3-7-0-8">do_package_write_deb</tspan></text>
1431 <rect
1432 style="fill:#92d050;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
1433 id="rect917-0-6-2-5-4-0-8"
1434 width="111.94537"
1435 height="33.113335"
1436 x="15.999091"
1437 y="363.63174" />
1438 <text
1439 xml:space="preserve"
1440 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.84771px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1441 x="72.896782"
1442 y="374.715"
1443 id="text1185-3-5-5-9-7-4-3-4-8"
1444 transform="scale(0.97863561,1.0218308)"><tspan
1445 sodipodi:role="line"
1446 x="72.896782"
1447 y="374.715"
1448 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;stroke:none;stroke-width:0.84771px"
1449 id="tspan60047-3-7-0-8-9">do_package_write_ipk</tspan></text>
1450 <text
1451 xml:space="preserve"
1452 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;line-height:125%;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1453 x="291.66635"
1454 y="314.62927"
1455 id="text1185-3-5-5-9-7-4-3-6"
1456 transform="scale(1.0010629,0.99893822)"><tspan
1457 sodipodi:role="line"
1458 x="291.66635"
1459 y="314.62927"
1460 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1461 id="tspan9">tmp &lt;──────────────────────────────────────────── TMPDIR</tspan><tspan
1462 sodipodi:role="line"
1463 x="291.66635"
1464 y="327.96265"
1465 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1466 id="tspan10"> work</tspan><tspan
1467 sodipodi:role="line"
1468 x="291.66635"
1469 y="341.29602"
1470 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1471 id="tspan11"> ${PACKAGE_ARCH}-poky-${TARGET_OS}</tspan><tspan
1472 sodipodi:role="line"
1473 x="291.66635"
1474 y="354.62939"
1475 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1476 id="tspan13"> ${PN}</tspan><tspan
1477 sodipodi:role="line"
1478 x="291.66635"
1479 y="367.96277"
1480 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1481 id="tspan14"> ${PV} &lt;────────────────────────────────── WORKDIR</tspan><tspan
1482 sodipodi:role="line"
1483 x="291.66635"
1484 y="381.29614"
1485 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1486 id="tspan15"> sources &lt;────────────────────────────── UNPACKDIR</tspan><tspan
1487 sodipodi:role="line"
1488 x="291.66635"
1489 y="394.62952"
1490 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1491 id="tspan29"> ${BP} &lt;────────────────────────────── S / B</tspan><tspan
1492 sodipodi:role="line"
1493 x="291.66635"
1494 y="407.96289"
1495 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1496 id="tspan48"> image &lt;──────────────────────────────── D</tspan><tspan
1497 sodipodi:role="line"
1498 x="291.66635"
1499 y="421.29626"
1500 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1501 id="tspan54"> package &lt;────────────────────────────── PKGD</tspan><tspan
1502 sodipodi:role="line"
1503 x="291.66635"
1504 y="434.62964"
1505 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1506 id="tspan55"> pkgdata &lt;────────────────────────────── PKGDESTWORK</tspan><tspan
1507 sodipodi:role="line"
1508 x="291.66635"
1509 y="447.96301"
1510 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1511 id="tspan49"> packages-split &lt;─────────────────────── PKGDEST</tspan><tspan
1512 sodipodi:role="line"
1513 x="291.66635"
1514 y="461.29642"
1515 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1516 id="tspan57"> ${PN} </tspan><tspan
1517 sodipodi:role="line"
1518 x="291.66635"
1519 y="474.62979"
1520 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1521 id="tspan56"> recipe-sysroot</tspan><tspan
1522 sodipodi:role="line"
1523 x="291.66635"
1524 y="487.96317"
1525 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1526 id="tspan50"> recipe-sysroot-native</tspan><tspan
1527 sodipodi:role="line"
1528 x="291.66635"
1529 y="501.29654"
1530 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1531 id="tspan16"> ${MACHINE}-poky-${TARGET_OS}</tspan><tspan
1532 sodipodi:role="line"
1533 x="291.66635"
1534 y="514.62988"
1535 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1536 id="tspan17"> ${PN}</tspan><tspan
1537 sodipodi:role="line"
1538 x="291.66635"
1539 y="527.96326"
1540 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1541 id="tspan6"> ${PV} &lt;────────────────────────────────── WORKDIR</tspan><tspan
1542 sodipodi:role="line"
1543 x="291.66635"
1544 y="541.29663"
1545 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1546 id="tspan32"> sources &lt;────────────────────────────── UNPACKDIR</tspan><tspan
1547 sodipodi:role="line"
1548 x="291.66635"
1549 y="554.63"
1550 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1551 id="tspan33"> ${BP} &lt;────────────────────────────── S / B</tspan><tspan
1552 sodipodi:role="line"
1553 x="291.66635"
1554 y="567.96338"
1555 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1556 id="tspan34"> image &lt;──────────────────────────────── D</tspan><tspan
1557 sodipodi:role="line"
1558 x="291.66635"
1559 y="581.29675"
1560 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1561 id="tspan35"> package &lt;────────────────────────────── PKGD</tspan><tspan
1562 sodipodi:role="line"
1563 x="291.66635"
1564 y="594.63013"
1565 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1566 id="tspan36"> pkgdata &lt;────────────────────────────── PKGDESTWORK</tspan><tspan
1567 sodipodi:role="line"
1568 x="291.66635"
1569 y="607.96356"
1570 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1571 id="tspan37"> packages-split &lt;─────────────────────── PKGDEST</tspan><tspan
1572 sodipodi:role="line"
1573 x="291.66635"
1574 y="621.29694"
1575 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1576 id="tspan8"> ${PN}</tspan><tspan
1577 sodipodi:role="line"
1578 x="291.66635"
1579 y="634.63031"
1580 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1581 id="tspan52"> recipe-sysroot</tspan><tspan
1582 sodipodi:role="line"
1583 x="291.66635"
1584 y="647.96368"
1585 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1586 id="tspan53"> recipe-sysroot-native</tspan></text>
1587 <text
1588 xml:space="preserve"
1589 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14.423px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1590 x="96.863083"
1591 y="124.2673"
1592 id="text1185-3-5-5-9-7-93-9-5"
1593 transform="scale(1.0010629,0.99893822)"><tspan
1594 sodipodi:role="line"
1595 x="96.863083"
1596 y="124.2673"
1597 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14.423px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.42682px"
1598 id="tspan5-9">Source Mirror(s)</tspan></text>
1599 <path
1600 style="display:inline;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.649842;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1601 d="m 129.79938,296.17226 49.97841,-0.002"
1602 id="path5151-2-2"
1603 inkscape:connector-type="polyline"
1604 inkscape:connector-curvature="0" />
1605 <path
1606 style="display:inline;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.621359;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1607 d="m 129.82258,340.33495 49.97857,0.099"
1608 id="path5151-2-2-5"
1609 inkscape:connector-type="polyline"
1610 inkscape:connector-curvature="0" />
1611 <text
1612 xml:space="preserve"
1613 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;line-height:125%;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1614 x="120.11855"
1615 y="446.36307"
1616 id="text1185-3-5-5-9-7-4-3-6-7-6-6-0-2-2-0-6-8"
1617 transform="scale(1.0010629,0.99893822)"><tspan
1618 sodipodi:role="line"
1619 x="120.11855"
1620 y="446.36307"
1621 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1622 id="tspan19-3-5-3-8-8-9-9-2-9">PACKAGES</tspan></text>
1623 <text
1624 xml:space="preserve"
1625 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14.423px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1626 x="219.20634"
1627 y="481.05573"
1628 id="text1185-3-5-5-9-7-4-3-6-7-6-6-0-2-2-0-6-8-4"
1629 transform="scale(1.0010629,0.99893822)"><tspan
1630 sodipodi:role="line"
1631 x="219.20634"
1632 y="481.05573"
1633 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14.423px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1634 id="tspan19-3-5-3-8-8-9-9-2-9-8">D</tspan></text>
1635 <text
1636 xml:space="preserve"
1637 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;line-height:125%;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1638 x="28.314753"
1639 y="575.74854"
1640 id="text1185-3-5-5-9-7-4-3-6-7-6-6-0-2-2-0-6-8-6"
1641 transform="scale(1.0010629,0.99893822)"><tspan
1642 sodipodi:role="line"
1643 x="28.314753"
1644 y="575.74854"
1645 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1646 id="tspan19-3-5-3-8-8-9-9-2-9-4">PKGD</tspan><tspan
1647 sodipodi:role="line"
1648 x="28.314753"
1649 y="589.08191"
1650 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1651 id="tspan12">PKGDESTWORK</tspan><tspan
1652 sodipodi:role="line"
1653 x="28.314753"
1654 y="602.41528"
1655 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1656 id="tspan20">PKGDEST</tspan><tspan
1657 sodipodi:role="line"
1658 x="28.314753"
1659 y="615.74866"
1660 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1661 id="tspan21">STAGING_DIR</tspan><tspan
1662 sodipodi:role="line"
1663 x="28.314753"
1664 y="629.08203"
1665 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1666 id="tspan22">STAGING_DIR_HOST</tspan><tspan
1667 sodipodi:role="line"
1668 x="28.314753"
1669 y="642.41541"
1670 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1671 id="tspan23">STAGING_DIR_NATIVE</tspan><tspan
1672 sodipodi:role="line"
1673 x="28.314753"
1674 y="655.74878"
1675 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1676 id="tspan25">STAGING_DIR_TARGET</tspan></text>
1677 <text
1678 xml:space="preserve"
1679 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;line-height:125%;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1680 x="124.28681"
1681 y="419.56549"
1682 id="text1185-3-5-5-9-7-4-3-6-7-6-6-0-2-2-0-6-8-2"
1683 transform="scale(1.0010629,0.99893822)"><tspan
1684 sodipodi:role="line"
1685 x="124.28681"
1686 y="419.56549"
1687 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1688 id="tspan19-3-5-3-8-8-9-9-2-9-6">FILES</tspan></text>
1689 <text
1690 xml:space="preserve"
1691 transform="translate(-82.778014,-165.84268)"
1692 id="text2"
1693 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14.423px;line-height:119%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;writing-mode:lr-tb;direction:ltr;white-space:pre;shape-inside:url(#rect2);display:inline;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none" />
1694 <text
1695 xml:space="preserve"
1696 transform="translate(-82.778014,-165.84268)"
1697 id="text28"
1698 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:14.423px;line-height:119%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;writing-mode:lr-tb;direction:ltr;white-space:pre;shape-inside:url(#rect28);display:inline;fill:#808080;fill-opacity:1;stroke:#deddda;stroke-width:1.893;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
1699 <path
1700 style="display:inline;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.917803;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker5783)"
1701 d="m 179.44681,182.32996 64.9845,-0.17816"
1702 id="path5151-2-6-0-5-5-9"
1703 inkscape:connector-type="polyline"
1704 inkscape:connector-curvature="0" />
1705 <path
1706 style="display:inline;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.913896;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker5783-8)"
1707 d="M 41.22058,465.67609 41.041566,401.55091"
1708 id="path5151-2-6-0-5-5-9-3"
1709 inkscape:connector-type="polyline"
1710 inkscape:connector-curvature="0" />
1711 <path
1712 style="display:inline;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.988319;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker5783-8-9)"
1713 d="m 257.2311,483.05216 -82.5567,0.16261"
1714 id="path5151-2-6-0-5-5-9-3-0"
1715 inkscape:connector-type="polyline"
1716 inkscape:connector-curvature="0" />
1717 <path
1718 style="display:inline;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.05534;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker5783-8-9-7)"
1719 d="m 152.44193,615.70573 102.2042,-0.14978"
1720 id="path5151-2-6-0-5-5-9-3-0-7"
1721 inkscape:connector-type="polyline"
1722 inkscape:connector-curvature="0" />
1723 <path
1724 style="display:inline;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.907432;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1725 d="m 152.6502,583.59639 0.1732,65.33981"
1726 id="path5151-2-6-0-5-5-9-3-0-7-2"
1727 inkscape:connector-type="polyline"
1728 inkscape:connector-curvature="0" />
1729 <path
1730 style="display:inline;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.569218;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker5783-8-1)"
1731 d="m 136.58006,446.88736 -0.003,17.46862"
1732 id="path5151-2-6-0-5-5-9-3-9"
1733 inkscape:connector-type="polyline"
1734 inkscape:connector-curvature="0" />
1735 <path
1736 style="display:inline;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.569218;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker5783-8-1-2)"
1737 d="m 136.58006,420.83768 -0.003,17.46862"
1738 id="path5151-2-6-0-5-5-9-3-9-6"
1739 inkscape:connector-type="polyline"
1740 inkscape:connector-curvature="0" />
1741 <rect
1742 style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
1743 id="rect917-0-6-27-0-6-3-5-4-5-4"
1744 width="19.926487"
1745 height="18.934353"
1746 x="492.30664"
1747 y="-184.46173"
1748 ry="0"
1749 transform="rotate(43.365087)" />
1750 <rect
1751 style="fill:#92d050;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
1752 id="rect917-0-6-2-5-4-7-9"
1753 width="19.971395"
1754 height="18.892305"
1755 x="477.39664"
1756 y="-208.26343"
1757 transform="rotate(45)" />
1758 <rect
1759 style="fill:#92d050;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
1760 id="rect917-0-6-2-5-4-7-9-3"
1761 width="19.971395"
1762 height="18.892305"
1763 x="368.04031"
1764 y="-99.338852"
1765 transform="rotate(45)" />
1766 <rect
1767 style="opacity:1;fill:#000000;fill-opacity:0;stroke:#000000;stroke-width:0.451439;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none"
1768 id="rect8"
1769 width="118.01241"
1770 height="123.4798"
1771 x="11.945589"
1772 y="276.81012" />
1773 <rect
1774 style="fill:#92d050;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
1775 id="rect917-0-6-2-5-4-4"
1776 width="67.850601"
1777 height="33.113335"
1778 x="16.189144"
1779 y="468.83041" />
1780 <text
1781 xml:space="preserve"
1782 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.84771px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1783 x="51.281845"
1784 y="477.80627"
1785 id="text1185-3-5-5-9-7-4-3-7"
1786 transform="scale(0.97863561,1.0218308)"><tspan
1787 sodipodi:role="line"
1788 x="51.281845"
1789 y="477.80627"
1790 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;stroke:none;stroke-width:0.84771px"
1791 id="tspan60047-3-7-0-4">do_package</tspan></text>
1792 <rect
1793 style="fill:#92d050;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
1794 id="rect917-0-6-2-5-4-0-4"
1795 width="81.324852"
1796 height="33.113335"
1797 x="87.165337"
1798 y="469.3013" />
1799 <text
1800 xml:space="preserve"
1801 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.84771px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1802 x="131.18208"
1803 y="478.74594"
1804 id="text1185-3-5-5-9-7-4-3-4-3"
1805 transform="scale(0.97863561,1.0218308)"><tspan
1806 sodipodi:role="line"
1807 x="131.18208"
1808 y="478.74594"
1809 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;stroke:none;stroke-width:0.84771px"
1810 id="tspan60047-3-7-0-8-0">do_packagedata</tspan></text>
1811 <rect
1812 style="fill:#92d050;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
1813 id="rect917-0-6-2-5-4-0-8-7"
1814 width="107.7788"
1815 height="33.113335"
1816 x="16.949968"
1817 y="509.84943" />
1818 <text
1819 xml:space="preserve"
1820 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.84771px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1821 x="71.607956"
1822 y="518.28699"
1823 id="text1185-3-5-5-9-7-4-3-4-8-8"
1824 transform="scale(0.97863561,1.0218308)"><tspan
1825 sodipodi:role="line"
1826 x="71.607956"
1827 y="518.28699"
1828 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;stroke:none;stroke-width:0.84771px"
1829 id="tspan60047-3-7-0-8-9-6">do_populate_sysroot</tspan></text>
1830 <rect
1831 style="fill:#000000;fill-opacity:0;stroke:#000000;stroke-width:0.678708;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none"
1832 id="rect8-8"
1833 width="160.56584"
1834 height="205.13455"
1835 x="11.957187"
1836 y="465.29163" />
1837 <path
1838 style="display:inline;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.829108px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1839 d="m 129.83599,383.16132 h 50.20974 V 181.82581"
1840 id="path8"
1841 inkscape:connector-type="orthogonal"
1842 inkscape:connector-curvature="0" />
1843 <text
1844 xml:space="preserve"
1845 style="font-size:10.6667px;line-height:119%;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';text-align:start;writing-mode:lr-tb;direction:ltr;text-anchor:start;fill:#ffffff;stroke:#000000;stroke-width:0.59;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-opacity:0"
1846 x="317.23001"
1847 y="281.7269"
1848 id="text24"><tspan
1849 sodipodi:role="line"
1850 id="tspan24"
1851 x="317.23001"
1852 y="281.7269" /></text>
1853 <text
1854 xml:space="preserve"
1855 transform="translate(-47.755547,5.6668655)"
1856 id="text37"
1857 style="font-size:10.6667px;line-height:119%;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';text-align:start;writing-mode:lr-tb;direction:ltr;white-space:pre;shape-inside:url(#rect37);display:inline;fill:#ffffff;stroke:#000000;stroke-width:0.59;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-opacity:0" />
1858 </g>
1859 <style
1860 type="text/css"
1861 id="style1021"> .st0{fill:#4A97D2;} .st1{fill:#333333;} </style>
1862</svg>
diff --git a/documentation/overview-manual/svg/bitbake_tasks_map.svg b/documentation/overview-manual/svg/bitbake_tasks_map.svg
new file mode 100644
index 0000000000..1ba962ccc6
--- /dev/null
+++ b/documentation/overview-manual/svg/bitbake_tasks_map.svg
@@ -0,0 +1,4 @@
1<?xml version="1.0" encoding="UTF-8"?>
2<!-- Do not edit this file with editors other than draw.io -->
3<!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
4<svg xmlns="http://www.w3.org/2000/svg" style="background: transparent; background-color: transparent; color-scheme: light dark;" xmlns:xlink="http://www.w3.org/1999/xlink" version="1.1" width="3068px" height="951px" viewBox="-0.5 -0.5 3068 951" content="&lt;mxfile host=&quot;app.diagrams.net&quot; agent=&quot;Mozilla/5.0 (X11; Linux x86_64; rv:128.0) Gecko/20100101 Firefox/128.0&quot; version=&quot;27.1.6&quot;&gt;&#xA; &lt;diagram name=&quot;Page-1&quot; id=&quot;c7558073-3199-34d8-9f00-42111426c3f3&quot;&gt;&#xA; &lt;mxGraphModel dx=&quot;2252&quot; dy=&quot;796&quot; grid=&quot;1&quot; gridSize=&quot;10&quot; guides=&quot;1&quot; tooltips=&quot;1&quot; connect=&quot;1&quot; arrows=&quot;1&quot; fold=&quot;1&quot; page=&quot;1&quot; pageScale=&quot;1&quot; pageWidth=&quot;826&quot; pageHeight=&quot;1169&quot; background=&quot;none&quot; math=&quot;0&quot; shadow=&quot;0&quot;&gt;&#xA; &lt;root&gt;&#xA; &lt;mxCell id=&quot;0&quot; /&gt;&#xA; &lt;mxCell id=&quot;1&quot; parent=&quot;0&quot; /&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-398&quot; value=&quot;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fillColor=none;dashed=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1940&quot; y=&quot;840&quot; width=&quot;280&quot; height=&quot;150&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-383&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.75;entryY=1;entryDx=0;entryDy=0;endArrow=classicThin;endFill=1;dashed=1;curved=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-380&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-382&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;Array as=&quot;points&quot;&gt;&#xA; &lt;mxPoint x=&quot;1747&quot; y=&quot;960&quot; /&gt;&#xA; &lt;mxPoint x=&quot;1747&quot; y=&quot;669&quot; /&gt;&#xA; &lt;/Array&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-407&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.75;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;curved=1;strokeWidth=3;fillColor=#d0cee2;strokeColor=#000000;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-380&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-398&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;Array as=&quot;points&quot;&gt;&#xA; &lt;mxPoint x=&quot;1890&quot; y=&quot;1120&quot; /&gt;&#xA; &lt;mxPoint x=&quot;2080&quot; y=&quot;1120&quot; /&gt;&#xA; &lt;/Array&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-380&quot; value=&quot;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fillColor=none;dashed=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1800&quot; y=&quot;840&quot; width=&quot;120&quot; height=&quot;240&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-211&quot; value=&quot;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fillColor=none;dashed=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;300&quot; y=&quot;840&quot; width=&quot;270&quot; height=&quot;240&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-142&quot; value=&quot;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fillColor=none;glass=0;dashed=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;-146.5&quot; y=&quot;390&quot; width=&quot;270&quot; height=&quot;110&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-162&quot; value=&quot;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fillColor=none;dashed=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;120&quot; y=&quot;840&quot; width=&quot;140&quot; height=&quot;240&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-101&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=none;endFill=0;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-98&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-99&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-338&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;rounded=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-98&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-130&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;Array as=&quot;points&quot;&gt;&#xA; &lt;mxPoint x=&quot;815&quot; y=&quot;240&quot; /&gt;&#xA; &lt;mxPoint x=&quot;-11&quot; y=&quot;240&quot; /&gt;&#xA; &lt;/Array&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-344&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;rounded=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-98&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-343&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;Array as=&quot;points&quot;&gt;&#xA; &lt;mxPoint x=&quot;815&quot; y=&quot;240&quot; /&gt;&#xA; &lt;mxPoint x=&quot;1045&quot; y=&quot;240&quot; /&gt;&#xA; &lt;/Array&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-402&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;rounded=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-98&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-401&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;Array as=&quot;points&quot;&gt;&#xA; &lt;mxPoint x=&quot;815&quot; y=&quot;240&quot; /&gt;&#xA; &lt;mxPoint x=&quot;1411&quot; y=&quot;240&quot; /&gt;&#xA; &lt;/Array&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;utO5BPZsFb6q0V3ioqD--12&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;rounded=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-98&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-440&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;Array as=&quot;points&quot;&gt;&#xA; &lt;mxPoint x=&quot;815&quot; y=&quot;240&quot; /&gt;&#xA; &lt;mxPoint x=&quot;228&quot; y=&quot;240&quot; /&gt;&#xA; &lt;/Array&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-98&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;tmp&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fillStyle=auto;glass=0;shadow=0;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;780&quot; y=&quot;180&quot; width=&quot;70&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-102&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;endArrow=none;endFill=0;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-99&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-100&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-99&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;work&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;780&quot; y=&quot;270&quot; width=&quot;70&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-106&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;endArrow=none;endFill=0;rounded=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-100&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-105&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-155&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=none;endFill=0;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-100&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-103&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;utO5BPZsFb6q0V3ioqD--14&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;exitX=0;exitY=0.5;exitDx=0;exitDy=0;curved=1;dashed=1;endArrow=classicThin;endFill=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-100&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-434&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-100&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;&amp;lt;b&amp;gt;${MULTIMACH_TARGET_OS}&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;730&quot; y=&quot;440&quot; width=&quot;170&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-110&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=none;endFill=0;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-103&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-108&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-103&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;libhello&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;326.99&quot; y=&quot;520&quot; width=&quot;70&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-111&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=none;endFill=0;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-105&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-109&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-105&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;sayhello&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;970&quot; y=&quot;520&quot; width=&quot;70&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-169&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=classicThin;endFill=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-108&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-166&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;Array as=&quot;points&quot;&gt;&#xA; &lt;mxPoint x=&quot;362&quot; y=&quot;680&quot; /&gt;&#xA; &lt;mxPoint x=&quot;82&quot; y=&quot;680&quot; /&gt;&#xA; &lt;/Array&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-170&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=classicThin;endFill=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-108&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-156&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;Array as=&quot;points&quot;&gt;&#xA; &lt;mxPoint x=&quot;362&quot; y=&quot;680&quot; /&gt;&#xA; &lt;mxPoint x=&quot;190&quot; y=&quot;680&quot; /&gt;&#xA; &lt;/Array&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-179&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-108&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-175&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-197&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-108&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-171&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;Array as=&quot;points&quot;&gt;&#xA; &lt;mxPoint x=&quot;362&quot; y=&quot;680&quot; /&gt;&#xA; &lt;mxPoint x=&quot;660&quot; y=&quot;680&quot; /&gt;&#xA; &lt;/Array&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-108&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;0.1-r0&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;327&quot; y=&quot;600&quot; width=&quot;70&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-309&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-109&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-172&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;Array as=&quot;points&quot;&gt;&#xA; &lt;mxPoint x=&quot;1005&quot; y=&quot;680&quot; /&gt;&#xA; &lt;mxPoint x=&quot;965&quot; y=&quot;680&quot; /&gt;&#xA; &lt;/Array&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-311&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-109&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-240&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;Array as=&quot;points&quot;&gt;&#xA; &lt;mxPoint x=&quot;1005&quot; y=&quot;680&quot; /&gt;&#xA; &lt;mxPoint x=&quot;1340&quot; y=&quot;680&quot; /&gt;&#xA; &lt;/Array&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-312&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-109&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-249&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;Array as=&quot;points&quot;&gt;&#xA; &lt;mxPoint x=&quot;1005&quot; y=&quot;680&quot; /&gt;&#xA; &lt;mxPoint x=&quot;1512&quot; y=&quot;680&quot; /&gt;&#xA; &lt;/Array&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-360&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-109&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-358&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;Array as=&quot;points&quot;&gt;&#xA; &lt;mxPoint x=&quot;1005&quot; y=&quot;680&quot; /&gt;&#xA; &lt;mxPoint x=&quot;1672&quot; y=&quot;680&quot; /&gt;&#xA; &lt;/Array&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-368&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-109&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-366&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;Array as=&quot;points&quot;&gt;&#xA; &lt;mxPoint x=&quot;1005&quot; y=&quot;680&quot; /&gt;&#xA; &lt;mxPoint x=&quot;1860&quot; y=&quot;680&quot; /&gt;&#xA; &lt;/Array&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-388&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-109&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-387&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;Array as=&quot;points&quot;&gt;&#xA; &lt;mxPoint x=&quot;1005&quot; y=&quot;680&quot; /&gt;&#xA; &lt;mxPoint x=&quot;2080&quot; y=&quot;680&quot; /&gt;&#xA; &lt;/Array&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-109&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;0.1-r0&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;970&quot; y=&quot;585&quot; width=&quot;70&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-134&quot; value=&quot;&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;endArrow=none;endFill=0;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-130&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-133&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;utO5BPZsFb6q0V3ioqD--19&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=1;entryDx=0;entryDy=0;exitX=1;exitY=0.5;exitDx=0;exitDy=0;curved=1;dashed=1;endArrow=classicThin;endFill=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-130&quot; target=&quot;utO5BPZsFb6q0V3ioqD--17&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-130&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;downloads&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;-46.5&quot; y=&quot;270&quot; width=&quot;70&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-143&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;endArrow=none;endFill=0;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-133&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-142&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-133&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;git2&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;-46.5&quot; y=&quot;330&quot; width=&quot;70&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-223&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;entryX=1;entryY=0.5;entryDx=0;entryDy=0;strokeWidth=3;fillColor=#d0cee2;strokeColor=#000000;exitX=1;exitY=0.5;exitDx=0;exitDy=0;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-136&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-156&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;Array as=&quot;points&quot;&gt;&#xA; &lt;mxPoint x=&quot;250&quot; y=&quot;470&quot; /&gt;&#xA; &lt;mxPoint x=&quot;250&quot; y=&quot;758&quot; /&gt;&#xA; &lt;/Array&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-135&quot; value=&quot;github.com.&amp;amp;lt;username&amp;amp;gt;.sayhello&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#eeeeee;strokeColor=#36393d;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;-126.5&quot; y=&quot;400&quot; width=&quot;230&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-337&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;entryX=0;entryY=0.5;entryDx=0;entryDy=0;strokeWidth=3;fillColor=#d0cee2;strokeColor=#000000;exitX=1;exitY=0.5;exitDx=0;exitDy=0;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-135&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-240&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;mxPoint x=&quot;160&quot; y=&quot;500&quot; as=&quot;sourcePoint&quot; /&gt;&#xA; &lt;Array as=&quot;points&quot;&gt;&#xA; &lt;mxPoint x=&quot;1250&quot; y=&quot;420&quot; /&gt;&#xA; &lt;mxPoint x=&quot;1250&quot; y=&quot;740&quot; /&gt;&#xA; &lt;/Array&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-136&quot; value=&quot;github.com.&amp;amp;lt;username&amp;amp;gt;.libhello&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#eeeeee;strokeColor=#36393d;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;-126.5&quot; y=&quot;450&quot; width=&quot;230&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-164&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;curved=1;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-156&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-162&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-156&quot; value=&quot;sources/libhello-0.1&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;150&quot; y=&quot;737.5&quot; width=&quot;65&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-159&quot; value=&quot;Makefile&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#f5f5f5;fontColor=#333333;strokeColor=#666666;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;136&quot; y=&quot;860&quot; width=&quot;114&quot; height=&quot;20&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-433&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;entryX=1;entryY=0.5;entryDx=0;entryDy=0;endArrow=classicThin;endFill=1;dashed=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-160&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-432&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-160&quot; value=&quot;LICENSE&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#eeeeee;strokeColor=#36393d;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;136&quot; y=&quot;890&quot; width=&quot;114&quot; height=&quot;20&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-215&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;entryX=0;entryY=0.5;entryDx=0;entryDy=0;exitX=0;exitY=0.5;exitDx=0;exitDy=0;curved=1;endArrow=classicThin;endFill=1;strokeWidth=3;fillColor=#d0cee2;strokeColor=#000000;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-161&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-163&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;Array as=&quot;points&quot;&gt;&#xA; &lt;mxPoint x=&quot;90&quot; y=&quot;930&quot; /&gt;&#xA; &lt;mxPoint x=&quot;90&quot; y=&quot;960&quot; /&gt;&#xA; &lt;/Array&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-161&quot; value=&quot;fix.patch&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#f5f5f5;fontColor=#333333;strokeColor=#666666;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;136&quot; y=&quot;920&quot; width=&quot;114&quot; height=&quot;20&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-219&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;entryX=0;entryY=0.5;entryDx=0;entryDy=0;exitX=0.006;exitY=0.893;exitDx=0;exitDy=0;curved=1;exitPerimeter=0;strokeWidth=3;fillColor=#d0cee2;strokeColor=#000000;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-163&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-214&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;Array as=&quot;points&quot;&gt;&#xA; &lt;mxPoint x=&quot;80&quot; y=&quot;968&quot; /&gt;&#xA; &lt;mxPoint x=&quot;80&quot; y=&quot;1031&quot; /&gt;&#xA; &lt;/Array&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-163&quot; value=&quot;hellolib.c&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#f5f5f5;fontColor=#333333;strokeColor=#666666;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;136&quot; y=&quot;950&quot; width=&quot;114&quot; height=&quot;20&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-166&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;temp&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;57&quot; y=&quot;720&quot; width=&quot;50&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-210&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=none;endFill=0;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-171&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-209&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-171&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;sysroot-destdir&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;600&quot; y=&quot;720&quot; width=&quot;120&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-307&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=classicThin;endFill=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-172&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-293&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-172&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;recipe-sysroot&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;910&quot; y=&quot;720&quot; width=&quot;110&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-182&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=classicThin;endFill=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-175&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-177&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-175&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;image&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;330.49&quot; y=&quot;720&quot; width=&quot;63&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-183&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=classicThin;endFill=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-177&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-180&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-184&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=classicThin;endFill=1;curved=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-177&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-181&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-177&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;usr&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;340.25&quot; y=&quot;860&quot; width=&quot;43.5&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-188&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=classicThin;endFill=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-180&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-187&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-180&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;include&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;335.12&quot; y=&quot;940&quot; width=&quot;53.75&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-192&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-181&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-191&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-181&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;lib&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;459.75&quot; y=&quot;940&quot; width=&quot;43.5&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-187&quot; value=&quot;hellolib.h&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#f5f5f5;fontColor=#333333;strokeColor=#666666;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;322&quot; y=&quot;1010&quot; width=&quot;80&quot; height=&quot;25&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-189&quot; value=&quot;libhello.so.1&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#f5f5f5;fontColor=#333333;strokeColor=#666666;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;420&quot; y=&quot;1017.5&quot; width=&quot;120&quot; height=&quot;20&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-190&quot; value=&quot;libhello.so.1.0&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#f5f5f5;fontColor=#333333;strokeColor=#666666;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;420&quot; y=&quot;1042.5&quot; width=&quot;120&quot; height=&quot;25&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-191&quot; value=&quot;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fillColor=none;dashed=1;arcSize=0;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;413&quot; y=&quot;1010&quot; width=&quot;137&quot; height=&quot;62.5&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-286&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=1;entryDx=0;entryDy=0;strokeWidth=3;fillColor=#d0cee2;strokeColor=#000000;curved=1;exitX=0.75;exitY=1;exitDx=0;exitDy=0;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-209&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-293&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;mxPoint x=&quot;830&quot; y=&quot;1330&quot; as=&quot;sourcePoint&quot; /&gt;&#xA; &lt;mxPoint x=&quot;925&quot; y=&quot;1130&quot; as=&quot;targetPoint&quot; /&gt;&#xA; &lt;Array as=&quot;points&quot;&gt;&#xA; &lt;mxPoint x=&quot;690&quot; y=&quot;1120&quot; /&gt;&#xA; &lt;mxPoint x=&quot;965&quot; y=&quot;1120&quot; /&gt;&#xA; &lt;/Array&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-209&quot; value=&quot;Everything in &amp;lt;b&amp;gt;image&amp;lt;/b&amp;gt; folder that is present in &amp;lt;b&amp;gt;SYSROOT_DIRS&amp;lt;/b&amp;gt; will be copied here.&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fillColor=#eeeeee;dashed=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;strokeColor=#36393d;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;600&quot; y=&quot;840&quot; width=&quot;120&quot; height=&quot;240&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-233&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.75;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;curved=1;strokeWidth=3;fillColor=#d0cee2;strokeColor=#000000;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-211&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-209&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;Array as=&quot;points&quot;&gt;&#xA; &lt;mxPoint x=&quot;503&quot; y=&quot;1120&quot; /&gt;&#xA; &lt;mxPoint x=&quot;660&quot; y=&quot;1120&quot; /&gt;&#xA; &lt;/Array&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-212&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.543;entryY=0.999;entryDx=0;entryDy=0;entryPerimeter=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;curved=1;fillColor=#d0cee2;strokeColor=#000000;strokeWidth=3;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-162&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-211&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;Array as=&quot;points&quot;&gt;&#xA; &lt;mxPoint x=&quot;190&quot; y=&quot;1120&quot; /&gt;&#xA; &lt;mxPoint x=&quot;447&quot; y=&quot;1120&quot; /&gt;&#xA; &lt;/Array&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-213&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;do_install&amp;lt;/font&amp;gt;&quot; style=&quot;text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=#36393d;fillColor=#eeeeee;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;270&quot; y=&quot;1100&quot; width=&quot;90&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-214&quot; value=&quot;libhello.so.1.0&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#eeeeee;strokeColor=#36393d;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;138&quot; y=&quot;1017.5&quot; width=&quot;114&quot; height=&quot;27.5&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-217&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;do_configure&amp;lt;br&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=#36393d;fillColor=#eeeeee;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry y=&quot;975&quot; width=&quot;110&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-218&quot; value=&quot;hellolib.h&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#f5f5f5;fontColor=#333333;strokeColor=#666666;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;136&quot; y=&quot;980&quot; width=&quot;114&quot; height=&quot;20&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-221&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;do_patch&amp;lt;br&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=#36393d;fillColor=#eeeeee;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;30&quot; y=&quot;930&quot; width=&quot;80&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-224&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;do_unpack&amp;lt;br&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=#36393d;fillColor=#eeeeee;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;206.5&quot; y=&quot;585&quot; width=&quot;90&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-225&quot; value=&quot;&amp;lt;font size=&amp;quot;1&amp;quot; color=&amp;quot;#ffffff&amp;quot; data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;&amp;lt;b style=&amp;quot;font-size: 15px;&amp;quot;&amp;gt;6&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;ellipse;whiteSpace=wrap;html=1;aspect=fixed;rounded=1;fillColor=#000000;strokeColor=#56517e;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;176.5&quot; y=&quot;585&quot; width=&quot;30&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-226&quot; value=&quot;&amp;lt;font size=&amp;quot;1&amp;quot; color=&amp;quot;#ffffff&amp;quot; data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;&amp;lt;b style=&amp;quot;font-size: 15px;&amp;quot;&amp;gt;7&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;ellipse;whiteSpace=wrap;html=1;aspect=fixed;rounded=1;fillColor=#000000;strokeColor=#56517e;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry y=&quot;930&quot; width=&quot;30&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-227&quot; value=&quot;&amp;lt;font size=&amp;quot;1&amp;quot; color=&amp;quot;#ffffff&amp;quot; data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;&amp;lt;b style=&amp;quot;font-size: 15px;&amp;quot;&amp;gt;8&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;ellipse;whiteSpace=wrap;html=1;aspect=fixed;rounded=1;fillColor=#000000;strokeColor=#56517e;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;-30&quot; y=&quot;975&quot; width=&quot;30&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-229&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;do_compile&amp;lt;br&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=#36393d;fillColor=#eeeeee;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;20&quot; y=&quot;1007.5&quot; width=&quot;90&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-228&quot; value=&quot;&amp;lt;font size=&amp;quot;1&amp;quot; color=&amp;quot;#ffffff&amp;quot; data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;&amp;lt;b style=&amp;quot;font-size: 15px;&amp;quot;&amp;gt;9&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;ellipse;whiteSpace=wrap;html=1;aspect=fixed;rounded=1;fillColor=#000000;strokeColor=#56517e;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;-10&quot; y=&quot;1007.5&quot; width=&quot;30&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-231&quot; value=&quot;&amp;lt;font size=&amp;quot;1&amp;quot; color=&amp;quot;#ffffff&amp;quot; data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;&amp;lt;b style=&amp;quot;font-size: 15px;&amp;quot;&amp;gt;10&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;ellipse;whiteSpace=wrap;html=1;aspect=fixed;rounded=1;fillColor=#000000;strokeColor=#56517e;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;240&quot; y=&quot;1100&quot; width=&quot;30&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-235&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;do_populate_sysroot&amp;lt;/font&amp;gt;&quot; style=&quot;text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=#36393d;fillColor=#eeeeee;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;515&quot; y=&quot;1100&quot; width=&quot;160&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-236&quot; value=&quot;&amp;lt;font size=&amp;quot;1&amp;quot; color=&amp;quot;#ffffff&amp;quot; data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;&amp;lt;b style=&amp;quot;font-size: 15px;&amp;quot;&amp;gt;11&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;ellipse;whiteSpace=wrap;html=1;aspect=fixed;rounded=1;fillColor=#000000;strokeColor=#56517e;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;485&quot; y=&quot;1100&quot; width=&quot;30&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-355&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=1;entryDx=0;entryDy=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;curved=1;strokeWidth=3;fillColor=#d0cee2;strokeColor=#000000;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-238&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-247&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;Array as=&quot;points&quot;&gt;&#xA; &lt;mxPoint x=&quot;1340&quot; y=&quot;1120&quot; /&gt;&#xA; &lt;mxPoint x=&quot;1512&quot; y=&quot;1120&quot; /&gt;&#xA; &lt;/Array&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-238&quot; value=&quot;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fillColor=none;dashed=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1270&quot; y=&quot;840&quot; width=&quot;140&quot; height=&quot;160&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-239&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;curved=1;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-240&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-238&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;w4JjUiD6-ryT0rcgaIPJ-1&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=0;orthogonalLoop=1;jettySize=auto;html=1;exitX=0;exitY=0.5;exitDx=0;exitDy=0;&quot; edge=&quot;1&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-240&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;mxPoint x=&quot;1300&quot; y=&quot;740&quot; as=&quot;targetPoint&quot; /&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-240&quot; value=&quot;&amp;lt;div&amp;gt;sources/sayhello-0.1&amp;lt;/div&amp;gt;&amp;lt;div&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/div&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1307&quot; y=&quot;720&quot; width=&quot;65&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-241&quot; value=&quot;Makefile&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#f5f5f5;fontColor=#333333;strokeColor=#666666;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1283&quot; y=&quot;860&quot; width=&quot;114&quot; height=&quot;20&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-242&quot; value=&quot;LICENSE&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#f5f5f5;fontColor=#333333;strokeColor=#666666;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1283&quot; y=&quot;890&quot; width=&quot;114&quot; height=&quot;20&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-330&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;entryX=0;entryY=0.5;entryDx=0;entryDy=0;exitX=0;exitY=0.5;exitDx=0;exitDy=0;curved=1;fillColor=#d0cee2;strokeColor=#000000;strokeWidth=3;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-244&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-245&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;Array as=&quot;points&quot;&gt;&#xA; &lt;mxPoint x=&quot;1230&quot; y=&quot;930&quot; /&gt;&#xA; &lt;mxPoint x=&quot;1230&quot; y=&quot;974&quot; /&gt;&#xA; &lt;/Array&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-244&quot; value=&quot;sayhello.c&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#f5f5f5;fontColor=#333333;strokeColor=#666666;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1283&quot; y=&quot;920&quot; width=&quot;114&quot; height=&quot;20&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-245&quot; value=&quot;sayhello&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#eeeeee;strokeColor=#36393d;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1283&quot; y=&quot;960&quot; width=&quot;114&quot; height=&quot;27.5&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-363&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.75;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;curved=1;strokeWidth=3;fillColor=#d0cee2;strokeColor=#000000;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-247&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-361&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;Array as=&quot;points&quot;&gt;&#xA; &lt;mxPoint x=&quot;1540&quot; y=&quot;1120&quot; /&gt;&#xA; &lt;mxPoint x=&quot;1671&quot; y=&quot;1120&quot; /&gt;&#xA; &lt;/Array&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-247&quot; value=&quot;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fillColor=none;dashed=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1451.99&quot; y=&quot;840&quot; width=&quot;120&quot; height=&quot;240&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-248&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=classicThin;endFill=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-249&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-247&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-249&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;image&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1480.49&quot; y=&quot;720&quot; width=&quot;63&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-250&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=classicThin;endFill=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-252&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-254&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-252&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;usr&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1490.25&quot; y=&quot;860&quot; width=&quot;43.5&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-253&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=classicThin;endFill=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-254&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-292&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;mxPoint x=&quot;1512&quot; y=&quot;1010&quot; as=&quot;targetPoint&quot; /&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-254&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;bin&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1485.1299999999999&quot; y=&quot;950&quot; width=&quot;53.75&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-266&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;dashed=1;fillColor=#bac8d3;strokeColor=#000000;strokeWidth=2;dashPattern=1 2;curved=1;endArrow=classicThin;endFill=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;mxPoint x=&quot;-0.5&quot; y=&quot;610&quot; as=&quot;sourcePoint&quot; /&gt;&#xA; &lt;mxPoint x=&quot;150&quot; y=&quot;765&quot; as=&quot;targetPoint&quot; /&gt;&#xA; &lt;Array as=&quot;points&quot;&gt;&#xA; &lt;mxPoint x=&quot;89.5&quot; y=&quot;610.5&quot; /&gt;&#xA; &lt;mxPoint x=&quot;89.5&quot; y=&quot;765.5&quot; /&gt;&#xA; &lt;/Array&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-267&quot; value=&quot;&amp;lt;div&amp;gt;&amp;lt;font style=&amp;quot;font-size: 14px;&amp;quot; data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;S = &amp;quot;${UNPACKDIR}/${BP}&amp;quot;&amp;lt;/font&amp;gt;&amp;lt;/div&amp;gt;&quot; style=&quot;edgeLabel;html=1;align=center;verticalAlign=middle;resizable=0;points=[];labelBorderColor=default;spacingTop=2;spacingLeft=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;eV5wDCu3Df9HtTySJIbg-266&quot; vertex=&quot;1&quot; connectable=&quot;0&quot;&gt;&#xA; &lt;mxGeometry x=&quot;-0.2703&quot; y=&quot;1&quot; relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;mxPoint x=&quot;-71&quot; y=&quot;-32&quot; as=&quot;offset&quot; /&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-270&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;WORKDIR&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#000000;strokeColor=none;fillStyle=auto;glass=0;shadow=0;fontColor=#ffffff;fontStyle=1&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;383.75&quot; y=&quot;585&quot; width=&quot;63&quot; height=&quot;25&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-271&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;D&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#000000;strokeColor=none;fillStyle=auto;glass=0;shadow=0;fontColor=#ffffff;fontStyle=1&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;313.75&quot; y=&quot;720&quot; width=&quot;26.5&quot; height=&quot;25&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-272&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;S&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#000000;strokeColor=none;fillStyle=auto;glass=0;shadow=0;fontColor=#ffffff;fontStyle=1&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;150&quot; y=&quot;720&quot; width=&quot;26.5&quot; height=&quot;25&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-273&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;B&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#000000;strokeColor=none;fillStyle=auto;glass=0;shadow=0;fontColor=#ffffff;fontStyle=1&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;123.5&quot; y=&quot;720&quot; width=&quot;26.5&quot; height=&quot;25&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-275&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;T&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#000000;strokeColor=none;fillStyle=auto;glass=0;shadow=0;fontColor=#ffffff;fontStyle=1&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;41.75&quot; y=&quot;720&quot; width=&quot;26.5&quot; height=&quot;25&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-276&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;libdir&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#000000;strokeColor=none;fillStyle=auto;glass=0;shadow=0;fontColor=#ffffff;fontStyle=1&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;490&quot; y=&quot;970&quot; width=&quot;50&quot; height=&quot;25&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-277&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;includedir&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#000000;strokeColor=none;fillStyle=auto;glass=0;shadow=0;fontColor=#ffffff;fontStyle=1&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;366.75&quot; y=&quot;970&quot; width=&quot;80&quot; height=&quot;25&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-279&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;RECIPE_SYSROOT&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#000000;strokeColor=none;fillStyle=auto;glass=0;shadow=0;fontColor=#ffffff;fontStyle=1&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;983.87&quot; y=&quot;750&quot; width=&quot;116.13&quot; height=&quot;25&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-351&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=1;entryDx=0;entryDy=0;dashed=1;endArrow=classicThin;endFill=1;curved=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-281&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-350&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-281&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;S&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#000000;strokeColor=none;fillStyle=auto;glass=0;shadow=0;fontColor=#ffffff;fontStyle=1&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1376.5&quot; y=&quot;745&quot; width=&quot;26.5&quot; height=&quot;25&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-282&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;B&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#000000;strokeColor=none;fillStyle=auto;glass=0;shadow=0;fontColor=#ffffff;fontStyle=1&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1350&quot; y=&quot;745&quot; width=&quot;26.5&quot; height=&quot;25&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-283&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;D&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#000000;strokeColor=none;fillStyle=auto;glass=0;shadow=0;fontColor=#ffffff;fontStyle=1&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1533.75&quot; y=&quot;745&quot; width=&quot;26.5&quot; height=&quot;25&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-284&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;WORKDIR&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#000000;strokeColor=none;fillStyle=auto;glass=0;shadow=0;fontColor=#ffffff;fontStyle=1&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1030&quot; y=&quot;575&quot; width=&quot;63&quot; height=&quot;25&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-287&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;do_prepare_recipe_sysroot&amp;lt;/font&amp;gt;&quot; style=&quot;text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=#36393d;fillColor=#eeeeee;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;743&quot; y=&quot;1100&quot; width=&quot;200&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-292&quot; value=&quot;sayhello&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#eeeeee;strokeColor=#36393d;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1467&quot; y=&quot;1035&quot; width=&quot;90&quot; height=&quot;27.5&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-293&quot; value=&quot;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fillColor=none;dashed=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;830&quot; y=&quot;840&quot; width=&quot;270&quot; height=&quot;240&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-294&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=classicThin;endFill=1;curved=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-296&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-298&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-295&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=classicThin;endFill=1;curved=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-296&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-300&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-296&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;usr&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;870.25&quot; y=&quot;860&quot; width=&quot;43.5&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-297&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=classicThin;endFill=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-298&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-301&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-298&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;include&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;865.12&quot; y=&quot;940&quot; width=&quot;53.75&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-299&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=classicThin;endFill=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-300&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-304&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-300&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;lib&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;989.75&quot; y=&quot;940&quot; width=&quot;43.5&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-301&quot; value=&quot;hellolib.h&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#f5f5f5;fontColor=#333333;strokeColor=#666666;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;852&quot; y=&quot;1010&quot; width=&quot;80&quot; height=&quot;25&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-302&quot; value=&quot;libhello.so.1&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#f5f5f5;fontColor=#333333;strokeColor=#666666;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;950&quot; y=&quot;1017.5&quot; width=&quot;120&quot; height=&quot;20&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-303&quot; value=&quot;libhello.so.1.0&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#f5f5f5;fontColor=#333333;strokeColor=#666666;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;950&quot; y=&quot;1042.5&quot; width=&quot;120&quot; height=&quot;25&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-304&quot; value=&quot;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fillColor=none;dashed=1;arcSize=0;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;943&quot; y=&quot;1010&quot; width=&quot;137&quot; height=&quot;62.5&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-308&quot; value=&quot;&amp;lt;font style=&amp;quot;font-size: 15px;&amp;quot; data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;This also contains other files from other&amp;amp;nbsp;&amp;lt;br&amp;gt;dependencies. Default dependencies are:&amp;lt;br&amp;gt;basically &amp;lt;b style=&amp;quot;&amp;quot;&amp;gt;&amp;lt;u&amp;gt;gcc&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt;, &amp;lt;b style=&amp;quot;&amp;quot;&amp;gt;&amp;lt;u&amp;gt;compilerlibs&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt; and &amp;lt;b style=&amp;quot;&amp;quot;&amp;gt;&amp;lt;u style=&amp;quot;&amp;quot;&amp;gt;libc&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=#36393d;fillColor=none;rounded=1;arcSize=0;dashed=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;553&quot; y=&quot;600&quot; width=&quot;390&quot; height=&quot;70&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-310&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;SYSROOT_DESTDIR&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#000000;strokeColor=none;fillStyle=auto;glass=0;shadow=0;fontColor=#ffffff;fontStyle=1&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;675&quot; y=&quot;750&quot; width=&quot;127.5&quot; height=&quot;25&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-322&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.25;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;strokeWidth=3;fillColor=#d0cee2;strokeColor=#000000;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-314&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-135&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-323&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.75;exitDx=0;exitDy=0;entryX=0;entryY=0.5;entryDx=0;entryDy=0;strokeWidth=3;fillColor=#d0cee2;strokeColor=#000000;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-314&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-136&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-314&quot; value=&quot;&amp;lt;font color=&amp;quot;#fcfcfc&amp;quot;&amp;gt;Github&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#000000;strokeColor=#23445d;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;-416.5&quot; y=&quot;395&quot; width=&quot;82&quot; height=&quot;100&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-316&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;do_fetch&amp;lt;br&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=#36393d;fillColor=#eeeeee;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;-283.25&quot; y=&quot;405&quot; width=&quot;80&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-317&quot; value=&quot;&amp;lt;font size=&amp;quot;1&amp;quot; color=&amp;quot;#ffffff&amp;quot; data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;&amp;lt;b style=&amp;quot;font-size: 15px;&amp;quot;&amp;gt;1&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;ellipse;whiteSpace=wrap;html=1;aspect=fixed;rounded=1;fillColor=#000000;strokeColor=#56517e;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;-313.25&quot; y=&quot;405&quot; width=&quot;30&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-326&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;do_fetch&amp;lt;br&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=#36393d;fillColor=#eeeeee;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;-283.25&quot; y=&quot;455&quot; width=&quot;80&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-327&quot; value=&quot;&amp;lt;font size=&amp;quot;1&amp;quot; color=&amp;quot;#ffffff&amp;quot; data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;&amp;lt;b style=&amp;quot;font-size: 15px;&amp;quot;&amp;gt;5&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;ellipse;whiteSpace=wrap;html=1;aspect=fixed;rounded=1;fillColor=#000000;strokeColor=#56517e;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;-313.25&quot; y=&quot;455&quot; width=&quot;30&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-331&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;do_configure&amp;lt;br&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=#36393d;fillColor=#eeeeee;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1140&quot; y=&quot;925&quot; width=&quot;110&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-332&quot; value=&quot;&amp;lt;font size=&amp;quot;1&amp;quot; color=&amp;quot;#ffffff&amp;quot; data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;&amp;lt;b style=&amp;quot;font-size: 15px;&amp;quot;&amp;gt;12&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;ellipse;whiteSpace=wrap;html=1;aspect=fixed;rounded=1;fillColor=#000000;strokeColor=#56517e;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1110&quot; y=&quot;925&quot; width=&quot;30&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-333&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;do_compile&amp;lt;br&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=#36393d;fillColor=#eeeeee;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1160&quot; y=&quot;957.5&quot; width=&quot;90&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-334&quot; value=&quot;&amp;lt;font size=&amp;quot;1&amp;quot; color=&amp;quot;#ffffff&amp;quot; data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;&amp;lt;b style=&amp;quot;font-size: 15px;&amp;quot;&amp;gt;13&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;ellipse;whiteSpace=wrap;html=1;aspect=fixed;rounded=1;fillColor=#000000;strokeColor=#56517e;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1130&quot; y=&quot;957.5&quot; width=&quot;30&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-340&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;do_unpack&amp;lt;br&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=#36393d;fillColor=#eeeeee;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;210&quot; y=&quot;405&quot; width=&quot;90&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-341&quot; value=&quot;&amp;lt;font size=&amp;quot;1&amp;quot; color=&amp;quot;#ffffff&amp;quot; data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;&amp;lt;b style=&amp;quot;font-size: 15px;&amp;quot;&amp;gt;2&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;ellipse;whiteSpace=wrap;html=1;aspect=fixed;rounded=1;fillColor=#000000;strokeColor=#56517e;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;180&quot; y=&quot;405&quot; width=&quot;30&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-349&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;curved=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-343&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-346&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-438&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;curved=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-343&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-345&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;Array as=&quot;points&quot;&gt;&#xA; &lt;mxPoint x=&quot;1045&quot; y=&quot;320&quot; /&gt;&#xA; &lt;mxPoint x=&quot;917&quot; y=&quot;320&quot; /&gt;&#xA; &lt;/Array&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-439&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;curved=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-343&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-436&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;Array as=&quot;points&quot;&gt;&#xA; &lt;mxPoint x=&quot;1045&quot; y=&quot;320&quot; /&gt;&#xA; &lt;mxPoint x=&quot;1175&quot; y=&quot;320&quot; /&gt;&#xA; &lt;/Array&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-343&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;conf&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1010&quot; y=&quot;270&quot; width=&quot;70&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;utO5BPZsFb6q0V3ioqD--26&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;entryX=0;entryY=1;entryDx=0;entryDy=0;exitX=0;exitY=0.5;exitDx=0;exitDy=0;curved=1;dashed=1;endArrow=classicThin;endFill=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-345&quot; target=&quot;utO5BPZsFb6q0V3ioqD--25&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;Array as=&quot;points&quot;&gt;&#xA; &lt;mxPoint x=&quot;860&quot; y=&quot;345&quot; /&gt;&#xA; &lt;mxPoint x=&quot;860&quot; y=&quot;270&quot; /&gt;&#xA; &lt;mxPoint x=&quot;932&quot; y=&quot;270&quot; /&gt;&#xA; &lt;/Array&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-345&quot; value=&quot;local.conf&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#eeeeee;strokeColor=#36393d;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;870.25&quot; y=&quot;335&quot; width=&quot;94&quot; height=&quot;20&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;utO5BPZsFb6q0V3ioqD--24&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;curved=1;endArrow=classicThin;endFill=1;dashed=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-346&quot; target=&quot;utO5BPZsFb6q0V3ioqD--22&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-346&quot; value=&quot;bblayers.conf&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#eeeeee;strokeColor=#36393d;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;989.75&quot; y=&quot;335&quot; width=&quot;110&quot; height=&quot;20&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-350&quot; value=&quot;&amp;lt;font style=&amp;quot;font-size: 15px;&amp;quot;&amp;gt;&amp;lt;b&amp;gt;&amp;lt;u&amp;gt;S&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt; defaults generally to &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;${UNPACKDIR}/${BP}&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;dashed=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;arcSize=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1259.75&quot; y=&quot;520&quot; width=&quot;230.25&quot; height=&quot;150&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-352&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;do_patch&amp;lt;br&amp;gt;&amp;lt;i&amp;gt;(No patches)&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=#36393d;fillColor=#eeeeee;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1140&quot; y=&quot;855&quot; width=&quot;110&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-353&quot; value=&quot;&amp;lt;font size=&amp;quot;1&amp;quot; color=&amp;quot;#ffffff&amp;quot; data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;&amp;lt;b style=&amp;quot;font-size: 15px;&amp;quot;&amp;gt;3&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;ellipse;whiteSpace=wrap;html=1;aspect=fixed;rounded=1;fillColor=#000000;strokeColor=#56517e;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1110&quot; y=&quot;860&quot; width=&quot;30&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-354&quot; value=&quot;&amp;lt;font size=&amp;quot;1&amp;quot; color=&amp;quot;#ffffff&amp;quot; data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;&amp;lt;b style=&amp;quot;font-size: 15px;&amp;quot;&amp;gt;4&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;ellipse;whiteSpace=wrap;html=1;aspect=fixed;rounded=1;fillColor=#000000;strokeColor=#56517e;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;713&quot; y=&quot;1100&quot; width=&quot;30&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-356&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;do_install&amp;lt;br&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=#36393d;fillColor=#eeeeee;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1314.75&quot; y=&quot;1070&quot; width=&quot;90&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-357&quot; value=&quot;&amp;lt;font size=&amp;quot;1&amp;quot; color=&amp;quot;#ffffff&amp;quot; data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;&amp;lt;b style=&amp;quot;font-size: 15px;&amp;quot;&amp;gt;14&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;ellipse;whiteSpace=wrap;html=1;aspect=fixed;rounded=1;fillColor=#000000;strokeColor=#56517e;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1285&quot; y=&quot;1070&quot; width=&quot;30&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-362&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=classicThin;endFill=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-358&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-361&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-358&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;package&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1640&quot; y=&quot;720&quot; width=&quot;63&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-359&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;PKGD&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#000000;strokeColor=none;fillStyle=auto;glass=0;shadow=0;fontColor=#ffffff;fontStyle=1&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1693.26&quot; y=&quot;745&quot; width=&quot;36.74&quot; height=&quot;25&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-384&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.75;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;curved=1;strokeWidth=3;fillColor=#d0cee2;strokeColor=#000000;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-361&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-380&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;Array as=&quot;points&quot;&gt;&#xA; &lt;mxPoint x=&quot;1698&quot; y=&quot;1120&quot; /&gt;&#xA; &lt;mxPoint x=&quot;1860&quot; y=&quot;1120&quot; /&gt;&#xA; &lt;/Array&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-361&quot; value=&quot;A copy of&amp;amp;nbsp;&amp;lt;b&amp;gt;${D}&amp;lt;br&amp;gt;&amp;lt;/b&amp;gt;excluding&amp;lt;br&amp;gt;&amp;lt;b&amp;gt;/sysroot-only&amp;lt;/b&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fillColor=#eeeeee;dashed=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;strokeColor=#36393d;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1617.63&quot; y=&quot;840&quot; width=&quot;107.75&quot; height=&quot;240&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-364&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;do_package&amp;lt;br&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=#36393d;fillColor=#eeeeee;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1573.24&quot; y=&quot;1100&quot; width=&quot;90&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-365&quot; value=&quot;&amp;lt;font size=&amp;quot;1&amp;quot; color=&amp;quot;#ffffff&amp;quot; data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;&amp;lt;b style=&amp;quot;font-size: 15px;&amp;quot;&amp;gt;15&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;ellipse;whiteSpace=wrap;html=1;aspect=fixed;rounded=1;fillColor=#000000;strokeColor=#56517e;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1543.49&quot; y=&quot;1100&quot; width=&quot;30&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-381&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=classicThin;endFill=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-366&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-380&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-366&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;packages-split&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1800&quot; y=&quot;720&quot; width=&quot;120&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-367&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;PKGDEST&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#000000;strokeColor=none;fillStyle=auto;glass=0;shadow=0;fontColor=#ffffff;fontStyle=1&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1910&quot; y=&quot;745&quot; width=&quot;60&quot; height=&quot;25&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-377&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;endArrow=classicThin;endFill=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-369&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-373&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-369&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;sayhello&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1828.5&quot; y=&quot;850&quot; width=&quot;63&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-372&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=classicThin;endFill=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-373&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-375&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-373&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;usr&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1838.25&quot; y=&quot;910&quot; width=&quot;43.5&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-374&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.5;exitY=1;exitDx=0;exitDy=0;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=classicThin;endFill=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-375&quot; target=&quot;utO5BPZsFb6q0V3ioqD--10&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;mxPoint x=&quot;1860&quot; y=&quot;1037.5&quot; as=&quot;targetPoint&quot; /&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-375&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;bin&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1833.12&quot; y=&quot;977.5&quot; width=&quot;53.75&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-382&quot; value=&quot;&amp;lt;span style=&amp;quot;font-size: 15px;&amp;quot;&amp;gt;Folders created here are present in &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;PACKAGES&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt; variable, BitBake knows what and where to put things using the &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;FILES&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt; variable, example: &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;FILES:${PN}&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt; files will go to &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;${PN}&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt;&amp;amp;nbsp;folder which is in &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;PACKAGES&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt;&amp;lt;/span&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;dashed=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;arcSize=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1505.37&quot; y=&quot;520&quot; width=&quot;321.75&quot; height=&quot;148.75&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-385&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;do_package&amp;lt;br&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=#36393d;fillColor=#eeeeee;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1743.12&quot; y=&quot;1100&quot; width=&quot;90&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-386&quot; value=&quot;&amp;lt;font size=&amp;quot;1&amp;quot; color=&amp;quot;#ffffff&amp;quot; data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;&amp;lt;b style=&amp;quot;font-size: 15px;&amp;quot;&amp;gt;16&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;ellipse;whiteSpace=wrap;html=1;aspect=fixed;rounded=1;fillColor=#000000;strokeColor=#56517e;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1713.37&quot; y=&quot;1100&quot; width=&quot;30&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-390&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=classicThin;endFill=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-387&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-389&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-387&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;deploy-&amp;lt;b&amp;gt;&amp;lt;i&amp;gt;pkg&amp;lt;/i&amp;gt;&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;2020&quot; y=&quot;720&quot; width=&quot;120&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-396&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;endArrow=classicThin;endFill=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-389&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-395&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-389&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;&amp;lt;b&amp;gt;${PACKAGE_ARCH}&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;2020&quot; y=&quot;855&quot; width=&quot;120&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-393&quot; value=&quot;&amp;lt;font style=&amp;quot;font-size: 15px;&amp;quot;&amp;gt;This can be &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;rpms&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt;, &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;debs&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt; or &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;ipks&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt;.&amp;lt;br&amp;gt;These are provided by&amp;lt;br&amp;gt;&amp;lt;b&amp;gt;&amp;lt;u&amp;gt;package_rpm&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt;, &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;package_deb&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;package_ipk&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt; classes respectively, use &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;PACKAGE_CLASSES&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt; for that as&amp;lt;br&amp;gt;content of &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;PACKAGE_CLASSES&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt; will be appended&amp;lt;br&amp;gt;to &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;INHERIT&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;dashed=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;arcSize=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1840&quot; y=&quot;520&quot; width=&quot;410&quot; height=&quot;148.75&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-415&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;exitX=1;exitY=0.5;exitDx=0;exitDy=0;entryX=0.5;entryY=1;entryDx=0;entryDy=0;strokeWidth=3;fillColor=#d0cee2;strokeColor=#000000;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-395&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-413&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;Array as=&quot;points&quot;&gt;&#xA; &lt;mxPoint x=&quot;2270&quot; y=&quot;956&quot; /&gt;&#xA; &lt;mxPoint x=&quot;2270&quot; y=&quot;500&quot; /&gt;&#xA; &lt;mxPoint x=&quot;1412&quot; y=&quot;500&quot; /&gt;&#xA; &lt;/Array&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-395&quot; value=&quot;sayhello-0.1-r0.${PACKAGE_ARCH}.&amp;lt;i&amp;gt;pkg&amp;lt;/i&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#eeeeee;strokeColor=#36393d;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1946.5&quot; y=&quot;940&quot; width=&quot;267&quot; height=&quot;32.5&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-397&quot; value=&quot;&amp;lt;font style=&amp;quot;font-size: 15px;&amp;quot;&amp;gt;This task also depends on &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;PACKAGE_CLASSES&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt;,&amp;lt;br&amp;gt;&amp;lt;b&amp;gt;&amp;lt;u&amp;gt;&amp;lt;i&amp;gt;pkg&amp;lt;/i&amp;gt;&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt;&amp;amp;nbsp;can be &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;rpm&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt;, &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;deb&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt; or &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;ipk&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt; for &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;package_rpm&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt;,&amp;lt;br&amp;gt;&amp;lt;b&amp;gt;&amp;lt;u&amp;gt;package_deb&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt; or &amp;lt;u style=&amp;quot;font-weight: bold;&amp;quot;&amp;gt;package_ipk&amp;lt;/u&amp;gt;&amp;amp;nbsp;respectively.&amp;lt;br&amp;gt;The generated package generally named using:&amp;lt;br&amp;gt;&amp;lt;b&amp;gt;&amp;lt;u&amp;gt;${PN}&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt;, &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;${PR}&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt;, &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;${PACKAGE_ARCH}&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt; and&amp;amp;nbsp;&amp;lt;b&amp;gt;&amp;lt;u&amp;gt;&amp;lt;i&amp;gt;pkg&amp;lt;/i&amp;gt;&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fillColor=none;dashed=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;strokeColor=#36393d;arcSize=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;2280&quot; y=&quot;840&quot; width=&quot;370&quot; height=&quot;170&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-404&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-401&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-403&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;utO5BPZsFb6q0V3ioqD--21&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;entryX=0;entryY=0.5;entryDx=0;entryDy=0;strokeColor=default;curved=1;dashed=1;endArrow=classicThin;endFill=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-401&quot; target=&quot;utO5BPZsFb6q0V3ioqD--20&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-401&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;deploy&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1376.5&quot; y=&quot;270&quot; width=&quot;70&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-414&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=0;entryDx=0;entryDy=0;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-403&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-413&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-403&quot; value=&quot;&amp;lt;b&amp;gt;${DEPLOY_DIR_&amp;lt;i&amp;gt;pkg&amp;lt;/i&amp;gt;}&amp;lt;/b&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1346.62&quot; y=&quot;350&quot; width=&quot;129.75&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-408&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;do_package_write_&amp;lt;i&amp;gt;pkg&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=#36393d;fillColor=#eeeeee;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1955&quot; y=&quot;1100&quot; width=&quot;150&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-409&quot; value=&quot;&amp;lt;font size=&amp;quot;1&amp;quot; color=&amp;quot;#ffffff&amp;quot; data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;&amp;lt;b style=&amp;quot;font-size: 15px;&amp;quot;&amp;gt;17&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;ellipse;whiteSpace=wrap;html=1;aspect=fixed;rounded=1;fillColor=#000000;strokeColor=#56517e;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1920&quot; y=&quot;1100&quot; width=&quot;30&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;utO5BPZsFb6q0V3ioqD--11&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=1;entryDx=0;entryDy=0;dashed=1;endArrow=classicThin;endFill=1;curved=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;exitX=1;exitY=0.5;exitDx=0;exitDy=0;&quot; parent=&quot;1&quot; source=&quot;IR5jgyizBFApjn6Bth0e-3&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-397&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-413&quot; value=&quot;${PACKAGE_ARCH}&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1351.5&quot; y=&quot;425&quot; width=&quot;120&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-416&quot; value=&quot;&amp;lt;font style=&amp;quot;font-size: 15px;&amp;quot;&amp;gt;For packages, this can be &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;IPK&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt;, &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;RPM&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt; or &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;DEB&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt; (&amp;lt;i&amp;gt;check step 17&amp;lt;/i&amp;gt;)&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;dashed=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;arcSize=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1525&quot; y=&quot;348.13&quot; width=&quot;415&quot; height=&quot;41.87&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-417&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;DEPLOY_DIR&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#000000;strokeColor=none;fillStyle=auto;glass=0;shadow=0;fontColor=#ffffff;fontStyle=1&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1425.37&quot; y=&quot;300&quot; width=&quot;80&quot; height=&quot;25&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-418&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;TMPDIR&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#000000;strokeColor=none;fillStyle=auto;glass=0;shadow=0;fontColor=#ffffff;fontStyle=1&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;830&quot; y=&quot;200&quot; width=&quot;60&quot; height=&quot;25&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-419&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;DL_DIR&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#000000;strokeColor=none;fillStyle=auto;glass=0;shadow=0;fontColor=#ffffff;fontStyle=1&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry y=&quot;300&quot; width=&quot;62.68&quot; height=&quot;25&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-422&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;rounded=1;orthogonalLoop=1;jettySize=auto;html=1;entryX=0;entryY=0.5;entryDx=0;entryDy=0;exitX=1;exitY=0.5;exitDx=0;exitDy=0;endArrow=classicThin;endFill=1;dashed=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-403&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-416&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;mxPoint x=&quot;1480.4900000000002&quot; y=&quot;387.48571428571427&quot; as=&quot;sourcePoint&quot; /&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-424&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;do_package_write_&amp;lt;i&amp;gt;pkg&amp;lt;/i&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;text;html=1;align=center;verticalAlign=middle;resizable=0;points=[];autosize=1;strokeColor=#36393d;fillColor=#eeeeee;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;2205&quot; y=&quot;775&quot; width=&quot;150&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-425&quot; value=&quot;&amp;lt;font size=&amp;quot;1&amp;quot; color=&amp;quot;#ffffff&amp;quot; data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;&amp;lt;b style=&amp;quot;font-size: 15px;&amp;quot;&amp;gt;18&amp;lt;/b&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;ellipse;whiteSpace=wrap;html=1;aspect=fixed;rounded=1;fillColor=#000000;strokeColor=#56517e;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;2170&quot; y=&quot;775&quot; width=&quot;30&quot; height=&quot;30&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;utO5BPZsFb6q0V3ioqD--8&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.75;entryY=1;entryDx=0;entryDy=0;dashed=1;endArrow=classicThin;endFill=1;curved=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-427&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-429&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot;&gt;&#xA; &lt;Array as=&quot;points&quot;&gt;&#xA; &lt;mxPoint x=&quot;2303&quot; y=&quot;758&quot; /&gt;&#xA; &lt;mxPoint x=&quot;2303&quot; y=&quot;602&quot; /&gt;&#xA; &lt;/Array&gt;&#xA; &lt;/mxGeometry&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-427&quot; value=&quot;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#000000;strokeColor=none;fillStyle=auto;glass=0;shadow=0;fontColor=#ffffff;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;2120&quot; y=&quot;745&quot; width=&quot;30&quot; height=&quot;25&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-428&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;exitX=0.75;exitY=0;exitDx=0;exitDy=0;entryX=0.75;entryY=1;entryDx=0;entryDy=0;endArrow=classicThin;endFill=1;dashed=1;curved=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;IR5jgyizBFApjn6Bth0e-4&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-393&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-429&quot; value=&quot;&amp;lt;font style=&amp;quot;font-size: 15px;&amp;quot;&amp;gt;This can be &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;PKGWRITEDIRRPM&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt;, &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;PKGWRITEDIRDEB&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt; or &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;PKGWRITEDIRIPK&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt; for &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;package_rpm&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt;, &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;package_deb&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;or &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;package_ipk&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt; respectively&amp;lt;br&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;dashed=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;arcSize=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1990&quot; y=&quot;381.25&quot; width=&quot;416.88&quot; height=&quot;77.5&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-432&quot; value=&quot;&amp;lt;span style=&amp;quot;font-size: 15px;&amp;quot;&amp;gt;License checking happens in &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;do_populate_lic&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt; after &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;do_patch&amp;lt;br&amp;gt;&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt;and before that a checksum check&amp;lt;br&amp;gt;happends on&amp;amp;nbsp;&amp;lt;b&amp;gt;&amp;lt;u&amp;gt;LIC_FILES_CHKSUM&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt; if the&amp;lt;br&amp;gt;license is not &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;CLOSED&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/span&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;dashed=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;arcSize=0;fillColor=none;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;-260&quot; y=&quot;797.5&quot; width=&quot;328.25&quot; height=&quot;102.5&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-434&quot; value=&quot;&amp;lt;span style=&amp;quot;font-size: 15px;&amp;quot;&amp;gt;This variable is used to separate recipes&amp;lt;br&amp;gt;based on their target. This has value of&amp;lt;br&amp;gt;&amp;lt;b&amp;gt;&amp;lt;u&amp;gt;${PACKAGE_ARCH}${TARGET_VENDOR}-${TARGET_OS}&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/span&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;dashed=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;arcSize=0;fillColor=none;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;465.12&quot; y=&quot;520&quot; width=&quot;434.88&quot; height=&quot;70&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;utO5BPZsFb6q0V3ioqD--28&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.75;entryY=1;entryDx=0;entryDy=0;exitX=1;exitY=0.5;exitDx=0;exitDy=0;dashed=1;curved=1;endArrow=classicThin;endFill=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-436&quot; target=&quot;utO5BPZsFb6q0V3ioqD--27&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-436&quot; value=&quot;conf-notes.txt&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#eeeeee;strokeColor=#36393d;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1120&quot; y=&quot;335&quot; width=&quot;110&quot; height=&quot;20&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;utO5BPZsFb6q0V3ioqD--16&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;entryX=0;entryY=0.5;entryDx=0;entryDy=0;exitX=0.5;exitY=1;exitDx=0;exitDy=0;curved=1;dashed=1;endArrow=classicThin;endFill=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-440&quot; target=&quot;utO5BPZsFb6q0V3ioqD--15&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;utO5BPZsFb6q0V3ioqD--18&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.5;entryY=1;entryDx=0;entryDy=0;exitX=0;exitY=0.5;exitDx=0;exitDy=0;curved=1;dashed=1;endArrow=classicThin;endFill=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-440&quot; target=&quot;utO5BPZsFb6q0V3ioqD--17&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-440&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;sstate-cache&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillStyle=auto;glass=0;shadow=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;176.5&quot; y=&quot;270&quot; width=&quot;103.01&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;eV5wDCu3Df9HtTySJIbg-442&quot; value=&quot;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Architects+Daughter&amp;quot;&amp;gt;SSTATE_DIR&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#000000;strokeColor=none;fillStyle=auto;glass=0;shadow=0;fontColor=#ffffff;fontStyle=1&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;243.98000000000002&quot; y=&quot;300&quot; width=&quot;83.01&quot; height=&quot;25&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;utO5BPZsFb6q0V3ioqD--10&quot; value=&quot;sayhello&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;fillColor=#eeeeee;strokeColor=#36393d;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1814.99&quot; y=&quot;1040&quot; width=&quot;90&quot; height=&quot;27.5&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;utO5BPZsFb6q0V3ioqD--13&quot; style=&quot;edgeStyle=orthogonalEdgeStyle;orthogonalLoop=1;jettySize=auto;html=1;entryX=0.149;entryY=-0.003;entryDx=0;entryDy=0;entryPerimeter=0;endArrow=classicThin;endFill=1;curved=1;dashed=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;&quot; parent=&quot;1&quot; source=&quot;eV5wDCu3Df9HtTySJIbg-308&quot; target=&quot;eV5wDCu3Df9HtTySJIbg-293&quot; edge=&quot;1&quot;&gt;&#xA; &lt;mxGeometry relative=&quot;1&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;utO5BPZsFb6q0V3ioqD--15&quot; value=&quot;&amp;lt;span style=&amp;quot;font-size: 15px;&amp;quot;&amp;gt;This folder contains cache for recipes build output, this is used by BitBake, if the recipe checksum did not change it knows that the output to use is the same.&amp;lt;br&amp;gt;&amp;lt;/span&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;dashed=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;arcSize=0;fillColor=none;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;350&quot; y=&quot;300&quot; width=&quot;410&quot; height=&quot;90&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;utO5BPZsFb6q0V3ioqD--17&quot; value=&quot;&amp;lt;span style=&amp;quot;font-size: 15px;&amp;quot;&amp;gt;&amp;lt;font data-font-src=&amp;quot;https://fonts.googleapis.com/css?family=Liberation+Sans&amp;quot;&amp;gt;These directories can be shared accross builds to save disk space and build time&amp;lt;/font&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/span&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;dashed=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;arcSize=0;fillColor=none;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;-68.25&quot; y=&quot;180&quot; width=&quot;410&quot; height=&quot;45&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;utO5BPZsFb6q0V3ioqD--20&quot; value=&quot;&amp;lt;font style=&amp;quot;font-size: 15px;&amp;quot;&amp;gt;This directory contains other output directories such as &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;images&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt;, &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;sdk&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;licenses&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;dashed=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;arcSize=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1525&quot; y=&quot;267.5&quot; width=&quot;416.88&quot; height=&quot;45&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;utO5BPZsFb6q0V3ioqD--22&quot; value=&quot;&amp;lt;font style=&amp;quot;font-size: 15px;&amp;quot;&amp;gt;This file contains all &amp;lt;b&amp;gt;layers&amp;lt;/b&amp;gt; that BitBake should consider when looking for metadata.&amp;lt;br&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;dashed=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;arcSize=0;fillColor=none;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1060&quot; y=&quot;435&quot; width=&quot;170&quot; height=&quot;130&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;utO5BPZsFb6q0V3ioqD--25&quot; value=&quot;&amp;lt;font style=&amp;quot;font-size: 15px;&amp;quot;&amp;gt;This is base configuration file containing essential user config such as &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;MACHINE&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt; and &amp;lt;b&amp;gt;&amp;lt;u&amp;gt;DISTRO&amp;lt;/u&amp;gt;&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;dashed=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;arcSize=0;fillColor=none;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;932&quot; y=&quot;185&quot; width=&quot;440&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;utO5BPZsFb6q0V3ioqD--27&quot; value=&quot;&amp;lt;font style=&amp;quot;font-size: 15px;&amp;quot;&amp;gt;The message to show after &amp;lt;b&amp;gt;source oe-init-build-env&amp;lt;/b&amp;gt;&amp;lt;br&amp;gt;&amp;lt;/font&amp;gt;&quot; style=&quot;rounded=1;whiteSpace=wrap;html=1;dashed=1;fontFamily=Liberation Sans;fontSource=https%3A%2F%2Ffonts.googleapis.com%2Fcss%3Ffamily%3DLiberation%2BSans;arcSize=0;fillColor=none;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1118&quot; y=&quot;260&quot; width=&quot;241.13&quot; height=&quot;40&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;IR5jgyizBFApjn6Bth0e-1&quot; value=&quot;&quot; style=&quot;rounded=0;whiteSpace=wrap;html=1;fillColor=none;strokeWidth=1;glass=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;2320&quot; y=&quot;780&quot; width=&quot;30&quot; height=&quot;20&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;IR5jgyizBFApjn6Bth0e-2&quot; value=&quot;&quot; style=&quot;rounded=0;whiteSpace=wrap;html=1;fillColor=none;strokeWidth=1;glass=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;2170&quot; y=&quot;946.25&quot; width=&quot;20&quot; height=&quot;20&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;IR5jgyizBFApjn6Bth0e-3&quot; value=&quot;&quot; style=&quot;rounded=0;whiteSpace=wrap;html=1;fillColor=none;strokeWidth=1;glass=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;2070&quot; y=&quot;1105&quot; width=&quot;25&quot; height=&quot;20&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;IR5jgyizBFApjn6Bth0e-4&quot; value=&quot;&quot; style=&quot;rounded=0;whiteSpace=wrap;html=1;fillColor=none;strokeWidth=1;glass=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;2090&quot; y=&quot;730&quot; width=&quot;20&quot; height=&quot;20&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;mxCell id=&quot;IR5jgyizBFApjn6Bth0e-5&quot; value=&quot;&quot; style=&quot;rounded=0;whiteSpace=wrap;html=1;fillColor=none;strokeWidth=1;glass=0;&quot; parent=&quot;1&quot; vertex=&quot;1&quot;&gt;&#xA; &lt;mxGeometry x=&quot;1446.5&quot; y=&quot;361.25&quot; width=&quot;20&quot; height=&quot;20&quot; as=&quot;geometry&quot; /&gt;&#xA; &lt;/mxCell&gt;&#xA; &lt;/root&gt;&#xA; &lt;/mxGraphModel&gt;&#xA; &lt;/diagram&gt;&#xA;&lt;/mxfile&gt;&#xA;"><defs/><g><g data-cell-id="0"><g data-cell-id="1"><g data-cell-id="eV5wDCu3Df9HtTySJIbg-398"><g><rect x="2357" y="660" width="280" height="150" rx="22.5" ry="22.5" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-dasharray="3 3" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-383"><g><path d="M 2217 780 Q 2163.7 780 2163.68 495.12" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 2163.68 489.87 L 2166.02 496.87 L 2163.68 495.12 L 2161.35 496.87 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-407"><g><path d="M 2307 900 Q 2307 940 2402 940 Q 2497 940 2497 820.1" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke-width="3" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 2497 813.35 L 2501.5 822.35 L 2497 820.1 L 2492.5 822.35 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="#000000" stroke-width="3" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-380"><g><rect x="2217" y="660" width="120" height="240" rx="18" ry="18" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-dasharray="3 3" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-211"><g><rect x="717" y="660" width="270" height="240" rx="36" ry="36" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-dasharray="3 3" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-142"><g><rect x="270.5" y="210" width="270" height="110" rx="16.5" ry="16.5" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-dasharray="3 3" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-162"><g><rect x="537" y="660" width="140" height="240" rx="21" ry="21" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-dasharray="3 3" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-101"><g><path d="M 1232 40 L 1232 90" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-338"><g><path d="M 1232 40 L 1232 50 Q 1232 60 1222 60 L 415.5 60 Q 405.5 60 405.5 70 L 405.5 83.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 405.5 88.88 L 402 81.88 L 405.5 83.63 L 409 81.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-344"><g><path d="M 1232 40 L 1232 50 Q 1232 60 1242 60 L 1452 60 Q 1462 60 1462 70 L 1462 83.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1462 88.88 L 1458.5 81.88 L 1462 83.63 L 1465.5 81.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-402"><g><path d="M 1232 40 L 1232 50 Q 1232 60 1242 60 L 1818.5 60 Q 1828.5 60 1828.5 70 L 1828.5 83.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1828.5 88.88 L 1825 81.88 L 1828.5 83.63 L 1832 81.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="utO5BPZsFb6q0V3ioqD--12"><g><path d="M 1232 40 L 1232 50 Q 1232 60 1222 60 L 655 60 Q 645 60 645 70 L 645 83.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 645 88.88 L 641.5 81.88 L 645 83.63 L 648.5 81.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-98"><g><rect x="1197" y="0" width="70" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 68px; height: 1px; padding-top: 20px; margin-left: 1198px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">tmp</font></div></div></div></foreignObject><text x="1232" y="24" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">tmp</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-102"><g><path d="M 1232 130 L 1232 260" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-99"><g><rect x="1197" y="90" width="70" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 68px; height: 1px; padding-top: 110px; margin-left: 1198px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">work</font></div></div></div></foreignObject><text x="1232" y="114" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">work</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-106"><g><path d="M 1232 300 L 1232 310 Q 1232 320 1242 320 L 1412 320 Q 1422 320 1422 330 L 1422 340" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-155"><g><path d="M 1232 300 L 1232 310 Q 1232 320 1222 320 L 789 320 Q 779 320 779 330 L 778.99 340" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/></g></g><g data-cell-id="utO5BPZsFb6q0V3ioqD--14"><g><path d="M 1147 280 Q 1099.6 280 1099.56 333.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 1099.56 338.88 L 1097.23 331.88 L 1099.56 333.63 L 1101.9 331.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-100"><g><rect x="1147" y="260" width="170" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 168px; height: 1px; padding-top: 280px; margin-left: 1148px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter"><b>${MULTIMACH_TARGET_OS}</b></font></div></div></div></foreignObject><text x="1232" y="284" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">${MULTIMACH_TARGET_OS}</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-110"><g><path d="M 778.99 380 L 779 420" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-103"><g><rect x="743.99" y="340" width="70" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 68px; height: 1px; padding-top: 360px; margin-left: 745px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">libhello</font></div></div></div></foreignObject><text x="779" y="364" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">libhello</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-111"><g><path d="M 1422 380 L 1422 390 Q 1422 400 1422 392.5 L 1422 388.75 Q 1422 385 1422 395 L 1422 405" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-105"><g><rect x="1387" y="340" width="70" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 68px; height: 1px; padding-top: 360px; margin-left: 1388px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">sayhello</font></div></div></div></foreignObject><text x="1422" y="364" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">sayhello</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-169"><g><path d="M 779 460 L 779 490 Q 779 500 769 500 L 509 500 Q 499 500 499 510 L 499 533.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 499 538.88 L 496.67 531.88 L 499 533.63 L 501.33 531.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-170"><g><path d="M 779 460 L 779 490 Q 779 500 769 500 L 617 500 Q 607 500 607 510 L 607 547.5 Q 607 557.5 606.43 557.5 L 605.87 557.5" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 600.62 557.5 L 607.62 555.17 L 605.87 557.5 L 607.62 559.83 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-179"><g><path d="M 779 460 L 778.99 533.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 778.99 538.88 L 775.49 531.88 L 778.99 533.63 L 782.49 531.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-197"><g><path d="M 779 460 L 779 490 Q 779 500 789 500 L 1067 500 Q 1077 500 1077 510 L 1077 533.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1077 538.88 L 1073.5 531.88 L 1077 533.63 L 1080.5 531.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-108"><g><rect x="744" y="420" width="70" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 68px; height: 1px; padding-top: 440px; margin-left: 745px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">0.1-r0</font></div></div></div></foreignObject><text x="779" y="444" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">0.1-r0</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-309"><g><path d="M 1422 445 L 1422 490 Q 1422 500 1412 500 L 1392 500 Q 1382 500 1382 510 L 1382 533.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1382 538.88 L 1378.5 531.88 L 1382 533.63 L 1385.5 531.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-311"><g><path d="M 1422 445 L 1422 490 Q 1422 500 1432 500 L 1746.5 500 Q 1756.5 500 1756.5 510 L 1756.5 533.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1756.5 538.88 L 1753 531.88 L 1756.5 533.63 L 1760 531.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-312"><g><path d="M 1422 445 L 1422 490 Q 1422 500 1432 500 L 1919 500 Q 1929 500 1929 510 L 1928.99 533.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1928.99 538.88 L 1925.49 531.88 L 1928.99 533.63 L 1932.49 531.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-360"><g><path d="M 1422 445 L 1422 490 Q 1422 500 1432 500 L 2078.5 500 Q 2088.5 500 2088.5 510 L 2088.5 533.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 2088.5 538.88 L 2085 531.88 L 2088.5 533.63 L 2092 531.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-368"><g><path d="M 1422 445 L 1422 490 Q 1422 500 1432 500 L 2267 500 Q 2277 500 2277 510 L 2277 533.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 2277 538.88 L 2273.5 531.88 L 2277 533.63 L 2280.5 531.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-388"><g><path d="M 1422 445 L 1422 490 Q 1422 500 1432 500 L 2487 500 Q 2497 500 2497 510 L 2497 533.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 2497 538.88 L 2493.5 531.88 L 2497 533.63 L 2500.5 531.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-109"><g><rect x="1387" y="405" width="70" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 68px; height: 1px; padding-top: 425px; margin-left: 1388px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">0.1-r0</font></div></div></div></foreignObject><text x="1422" y="429" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">0.1-r0</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-134"><g><path d="M 405.5 130 L 405.5 140 Q 405.5 150 405.5 140 L 405.5 135 Q 405.5 130 405.5 140 L 405.5 150" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/></g></g><g data-cell-id="utO5BPZsFb6q0V3ioqD--19"><g><path d="M 440.5 110 Q 553.8 110 553.75 51.37" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 553.75 46.12 L 556.09 53.12 L 553.75 51.37 L 551.42 53.12 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-130"><g><rect x="370.5" y="90" width="70" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 68px; height: 1px; padding-top: 110px; margin-left: 372px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">downloads</font></div></div></div></foreignObject><text x="406" y="114" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">downloads</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-143"><g><path d="M 405.5 190 L 405.5 200 Q 405.5 210 405.5 200 L 405.5 195 Q 405.5 190 405.5 200 L 405.5 210" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-133"><g><rect x="370.5" y="150" width="70" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 68px; height: 1px; padding-top: 170px; margin-left: 372px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">git2</font></div></div></div></foreignObject><text x="406" y="174" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">git2</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-223"><g><path d="M 520.5 290 L 657 290 Q 667 290 667 300 L 667 567.5 Q 667 577.5 657 577.5 L 642.1 577.5" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke-width="3" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 635.35 577.5 L 644.35 573 L 642.1 577.5 L 644.35 582 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="#000000" stroke-width="3" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-135"><g><rect x="290.5" y="220" width="230" height="40" rx="6" ry="6" fill="#eeeeee" style="fill: light-dark(rgb(238, 238, 238), rgb(32, 32, 32)); stroke: light-dark(rgb(54, 57, 61), rgb(186, 189, 192));" stroke="#36393d" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 228px; height: 1px; padding-top: 240px; margin-left: 292px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">github.com.&lt;username&gt;.sayhello</div></div></div></foreignObject><text x="406" y="244" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">github.com.&lt;username&gt;.sayhello</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-337"><g><path d="M 520.5 240 L 1657 240 Q 1667 240 1667 250 L 1667 550 Q 1667 560 1677 560 L 1713.9 560" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke-width="3" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1720.65 560 L 1711.65 564.5 L 1713.9 560 L 1711.65 555.5 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="#000000" stroke-width="3" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-136"><g><rect x="290.5" y="270" width="230" height="40" rx="6" ry="6" fill="#eeeeee" style="fill: light-dark(rgb(238, 238, 238), rgb(32, 32, 32)); stroke: light-dark(rgb(54, 57, 61), rgb(186, 189, 192));" stroke="#36393d" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 228px; height: 1px; padding-top: 290px; margin-left: 292px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">github.com.&lt;username&gt;.libhello</div></div></div></foreignObject><text x="406" y="294" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">github.com.&lt;username&gt;.libhello</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-164"><g><path d="M 599.5 597.5 Q 599.5 628.8 603.25 628.8 Q 607 628.8 607 653.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 607 658.88 L 603.5 651.88 L 607 653.63 L 610.5 651.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-156"><g><rect x="567" y="557.5" width="65" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 63px; height: 1px; padding-top: 578px; margin-left: 568px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">sources/libhello-0.1</div></div></div></foreignObject><text x="600" y="581" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">sources/lib...</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-159"><g><rect x="553" y="680" width="114" height="20" rx="3" ry="3" fill="#f5f5f5" style="fill: light-dark(rgb(245, 245, 245), rgb(26, 26, 26)); stroke: light-dark(rgb(102, 102, 102), rgb(149, 149, 149));" stroke="#666666" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 112px; height: 1px; padding-top: 690px; margin-left: 554px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #333333; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#333333, #c1c1c1); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">Makefile</div></div></div></foreignObject><text x="610" y="694" fill="#333333" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">Makefile</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-433"><g><path d="M 553 720 L 529.2 720 Q 519.2 720 519.2 710 L 519.2 678.8 Q 519.2 668.8 509.2 668.79 L 491.62 668.76" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 486.37 668.75 L 493.37 666.43 L 491.62 668.76 L 493.36 671.1 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-160"><g><rect x="553" y="710" width="114" height="20" rx="3" ry="3" fill="#eeeeee" style="fill: light-dark(rgb(238, 238, 238), rgb(32, 32, 32)); stroke: light-dark(rgb(54, 57, 61), rgb(186, 189, 192));" stroke="#36393d" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 112px; height: 1px; padding-top: 720px; margin-left: 554px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">LICENSE</div></div></div></foreignObject><text x="610" y="724" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">LICENSE</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-215"><g><path d="M 553 750 Q 507 750 507 765 Q 507 780 542.9 780" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke-width="3" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 549.65 780 L 540.65 783 L 542.9 780 L 540.65 777 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="#000000" stroke-width="3" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-161"><g><rect x="553" y="740" width="114" height="20" rx="3" ry="3" fill="#f5f5f5" style="fill: light-dark(rgb(245, 245, 245), rgb(26, 26, 26)); stroke: light-dark(rgb(102, 102, 102), rgb(149, 149, 149));" stroke="#666666" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 112px; height: 1px; padding-top: 750px; margin-left: 554px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #333333; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#333333, #c1c1c1); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">fix.patch</div></div></div></foreignObject><text x="610" y="754" fill="#333333" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">fix.patch</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-219"><g><path d="M 553.68 787.86 Q 497 787.9 497 819.6 Q 497 851.3 544.9 851.26" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke-width="3" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 551.65 851.25 L 542.65 855.76 L 544.9 851.26 L 542.64 846.76 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="#000000" stroke-width="3" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-163"><g><rect x="553" y="770" width="114" height="20" rx="3" ry="3" fill="#f5f5f5" style="fill: light-dark(rgb(245, 245, 245), rgb(26, 26, 26)); stroke: light-dark(rgb(102, 102, 102), rgb(149, 149, 149));" stroke="#666666" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 112px; height: 1px; padding-top: 780px; margin-left: 554px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #333333; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#333333, #c1c1c1); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">hellolib.c</div></div></div></foreignObject><text x="610" y="784" fill="#333333" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">hellolib.c</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-166"><g><rect x="474" y="540" width="50" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 48px; height: 1px; padding-top: 560px; margin-left: 475px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">temp</font></div></div></div></foreignObject><text x="499" y="564" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">temp</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-210"><g><path d="M 1077 580 L 1077 660" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-171"><g><rect x="1017" y="540" width="120" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 560px; margin-left: 1018px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">sysroot-destdir</font></div></div></div></foreignObject><text x="1077" y="564" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">sysroot-destdir</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-307"><g><path d="M 1382 580 L 1382 653.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1382 658.88 L 1379.67 651.88 L 1382 653.63 L 1384.33 651.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-172"><g><rect x="1327" y="540" width="110" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 108px; height: 1px; padding-top: 560px; margin-left: 1328px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">recipe-sysroot</font></div></div></div></foreignObject><text x="1382" y="564" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">recipe-sysroot</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-182"><g><path d="M 779 580 L 779 673.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 779 678.88 L 776.67 671.88 L 779 673.63 L 781.33 671.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-175"><g><rect x="747.49" y="540" width="63" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 61px; height: 1px; padding-top: 560px; margin-left: 748px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">image</font></div></div></div></foreignObject><text x="779" y="564" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">image</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-183"><g><path d="M 779.1 720 L 779.1 730 Q 779.1 740 779.06 746.82 L 779.03 753.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 779 758.88 L 776.7 751.87 L 779.03 753.63 L 781.37 751.89 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-184"><g><path d="M 779 720 Q 779 740 838.75 740 Q 898.5 740 898.5 753.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 898.5 758.88 L 896.17 751.88 L 898.5 753.63 L 900.83 751.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-177"><g><rect x="757.25" y="680" width="43.5" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 42px; height: 1px; padding-top: 700px; margin-left: 758px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">usr</font></div></div></div></foreignObject><text x="779" y="704" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">usr</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-188"><g><path d="M 778.99 800 L 779 823.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 779 828.88 L 776.67 821.88 L 779 823.63 L 781.33 821.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-180"><g><rect x="752.12" y="760" width="53.75" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 52px; height: 1px; padding-top: 780px; margin-left: 753px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">include</font></div></div></div></foreignObject><text x="779" y="784" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">include</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-192"><g><path d="M 898.6 800 L 898.6 810 Q 898.6 820 898.58 821.82 L 898.56 823.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 898.51 828.88 L 895.08 821.85 L 898.56 823.63 L 902.08 821.92 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-181"><g><rect x="876.75" y="760" width="43.5" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 42px; height: 1px; padding-top: 780px; margin-left: 878px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">lib</font></div></div></div></foreignObject><text x="899" y="784" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">lib</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-187"><g><rect x="739" y="830" width="80" height="25" rx="3.75" ry="3.75" fill="#f5f5f5" style="fill: light-dark(rgb(245, 245, 245), rgb(26, 26, 26)); stroke: light-dark(rgb(102, 102, 102), rgb(149, 149, 149));" stroke="#666666" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 843px; margin-left: 740px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #333333; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#333333, #c1c1c1); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">hellolib.h</div></div></div></foreignObject><text x="779" y="846" fill="#333333" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">hellolib.h</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-189"><g><rect x="837" y="837.5" width="120" height="20" rx="3" ry="3" fill="#f5f5f5" style="fill: light-dark(rgb(245, 245, 245), rgb(26, 26, 26)); stroke: light-dark(rgb(102, 102, 102), rgb(149, 149, 149));" stroke="#666666" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 848px; margin-left: 838px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #333333; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#333333, #c1c1c1); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">libhello.so.1</div></div></div></foreignObject><text x="897" y="851" fill="#333333" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">libhello.so.1</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-190"><g><rect x="837" y="862.5" width="120" height="25" rx="3.75" ry="3.75" fill="#f5f5f5" style="fill: light-dark(rgb(245, 245, 245), rgb(26, 26, 26)); stroke: light-dark(rgb(102, 102, 102), rgb(149, 149, 149));" stroke="#666666" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 875px; margin-left: 838px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #333333; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#333333, #c1c1c1); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">libhello.so.1.0</div></div></div></foreignObject><text x="897" y="879" fill="#333333" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">libhello.so.1.0</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-191"><g><rect x="830" y="830" width="137" height="62.5" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-dasharray="3 3" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-286"><g><path d="M 1107 900 Q 1107 940 1244.5 940 Q 1382 940 1382 910.1" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke-width="3" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1382 903.35 L 1386.5 912.35 L 1382 910.1 L 1377.5 912.35 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="#000000" stroke-width="3" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-209"><g><rect x="1017" y="660" width="120" height="240" rx="18" ry="18" fill="#eeeeee" style="fill: light-dark(rgb(238, 238, 238), rgb(32, 32, 32)); stroke: light-dark(rgb(54, 57, 61), rgb(186, 189, 192));" stroke="#36393d" stroke-dasharray="3 3" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 780px; margin-left: 1018px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">Everything in <b>image</b> folder that is present in <b>SYSROOT_DIRS</b> will be copied here.</div></div></div></foreignObject><text x="1077" y="784" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">Everything in image...</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-233"><g><path d="M 919.5 900 Q 919.5 940 998.25 940 Q 1077 940 1077 910.1" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke-width="3" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1077 903.35 L 1081.5 912.35 L 1077 910.1 L 1072.5 912.35 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="#000000" stroke-width="3" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-212"><g><path d="M 607 900 Q 607 940 735.3 940 Q 863.6 940 863.61 909.86" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke-width="3" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 863.61 903.11 L 868.11 912.12 L 863.61 909.86 L 859.11 912.11 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="#000000" stroke-width="3" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-213"><g><rect x="687" y="920" width="90" height="30" fill="#eeeeee" style="fill: light-dark(rgb(238, 238, 238), rgb(32, 32, 32)); stroke: light-dark(rgb(54, 57, 61), rgb(186, 189, 192));" stroke="#36393d" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 935px; margin-left: 732px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: nowrap; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">do_install</font></div></div></div></foreignObject><text x="732" y="939" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">do_install</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-214"><g><rect x="555" y="837.5" width="114" height="27.5" rx="4.13" ry="4.13" fill="#eeeeee" style="fill: light-dark(rgb(238, 238, 238), rgb(32, 32, 32)); stroke: light-dark(rgb(54, 57, 61), rgb(186, 189, 192));" stroke="#36393d" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 112px; height: 1px; padding-top: 851px; margin-left: 556px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">libhello.so.1.0</div></div></div></foreignObject><text x="612" y="855" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">libhello.so.1.0</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-217"><g><rect x="417" y="795" width="110" height="30" fill="#eeeeee" style="fill: light-dark(rgb(238, 238, 238), rgb(32, 32, 32)); stroke: light-dark(rgb(54, 57, 61), rgb(186, 189, 192));" stroke="#36393d" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 810px; margin-left: 472px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: nowrap; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">do_configure<br /></font></div></div></div></foreignObject><text x="472" y="814" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">do_configure&#xa;</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-218"><g><rect x="553" y="800" width="114" height="20" rx="3" ry="3" fill="#f5f5f5" style="fill: light-dark(rgb(245, 245, 245), rgb(26, 26, 26)); stroke: light-dark(rgb(102, 102, 102), rgb(149, 149, 149));" stroke="#666666" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 112px; height: 1px; padding-top: 810px; margin-left: 554px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #333333; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#333333, #c1c1c1); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">hellolib.h</div></div></div></foreignObject><text x="610" y="814" fill="#333333" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">hellolib.h</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-221"><g><rect x="447" y="750" width="80" height="30" fill="#eeeeee" style="fill: light-dark(rgb(238, 238, 238), rgb(32, 32, 32)); stroke: light-dark(rgb(54, 57, 61), rgb(186, 189, 192));" stroke="#36393d" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 765px; margin-left: 487px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: nowrap; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">do_patch<br /></font></div></div></div></foreignObject><text x="487" y="769" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">do_patch&#xa;</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-224"><g><rect x="623.5" y="405" width="90" height="30" fill="#eeeeee" style="fill: light-dark(rgb(238, 238, 238), rgb(32, 32, 32)); stroke: light-dark(rgb(54, 57, 61), rgb(186, 189, 192));" stroke="#36393d" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 420px; margin-left: 669px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: nowrap; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">do_unpack<br /></font></div></div></div></foreignObject><text x="669" y="424" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">do_unpack&#xa;</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-225"><g><ellipse cx="608.5" cy="420" rx="15" ry="15" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(86, 81, 126), rgb(164, 160, 198));" stroke="#56517e" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 28px; height: 1px; padding-top: 420px; margin-left: 595px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter" color="#ffffff" size="1" style="color: light-dark(rgb(255, 255, 255), rgb(18, 18, 18));"><b style="font-size: 15px;">6</b></font></div></div></div></foreignObject><text x="609" y="424" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">6</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-226"><g><ellipse cx="432" cy="765" rx="15" ry="15" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(86, 81, 126), rgb(164, 160, 198));" stroke="#56517e" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 28px; height: 1px; padding-top: 765px; margin-left: 418px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter" color="#ffffff" size="1" style="color: light-dark(rgb(255, 255, 255), rgb(18, 18, 18));"><b style="font-size: 15px;">7</b></font></div></div></div></foreignObject><text x="432" y="769" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">7</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-227"><g><ellipse cx="402" cy="810" rx="15" ry="15" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(86, 81, 126), rgb(164, 160, 198));" stroke="#56517e" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 28px; height: 1px; padding-top: 810px; margin-left: 388px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter" color="#ffffff" size="1" style="color: light-dark(rgb(255, 255, 255), rgb(18, 18, 18));"><b style="font-size: 15px;">8</b></font></div></div></div></foreignObject><text x="402" y="814" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">8</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-229"><g><rect x="437" y="827.5" width="90" height="30" fill="#eeeeee" style="fill: light-dark(rgb(238, 238, 238), rgb(32, 32, 32)); stroke: light-dark(rgb(54, 57, 61), rgb(186, 189, 192));" stroke="#36393d" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 843px; margin-left: 482px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: nowrap; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">do_compile<br /></font></div></div></div></foreignObject><text x="482" y="846" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">do_compile&#xa;</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-228"><g><ellipse cx="422" cy="842.5" rx="15" ry="15" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(86, 81, 126), rgb(164, 160, 198));" stroke="#56517e" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 28px; height: 1px; padding-top: 843px; margin-left: 408px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter" color="#ffffff" size="1" style="color: light-dark(rgb(255, 255, 255), rgb(18, 18, 18));"><b style="font-size: 15px;">9</b></font></div></div></div></foreignObject><text x="422" y="846" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">9</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-231"><g><ellipse cx="672" cy="935" rx="15" ry="15" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(86, 81, 126), rgb(164, 160, 198));" stroke="#56517e" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 28px; height: 1px; padding-top: 935px; margin-left: 658px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter" color="#ffffff" size="1" style="color: light-dark(rgb(255, 255, 255), rgb(18, 18, 18));"><b style="font-size: 15px;">10</b></font></div></div></div></foreignObject><text x="672" y="939" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">10</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-235"><g><rect x="932" y="920" width="160" height="30" fill="#eeeeee" style="fill: light-dark(rgb(238, 238, 238), rgb(32, 32, 32)); stroke: light-dark(rgb(54, 57, 61), rgb(186, 189, 192));" stroke="#36393d" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 935px; margin-left: 1012px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: nowrap; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">do_populate_sysroot</font></div></div></div></foreignObject><text x="1012" y="939" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">do_populate_sysroot</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-236"><g><ellipse cx="917" cy="935" rx="15" ry="15" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(86, 81, 126), rgb(164, 160, 198));" stroke="#56517e" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 28px; height: 1px; padding-top: 935px; margin-left: 903px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter" color="#ffffff" size="1" style="color: light-dark(rgb(255, 255, 255), rgb(18, 18, 18));"><b style="font-size: 15px;">11</b></font></div></div></div></foreignObject><text x="917" y="939" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">11</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-355"><g><path d="M 1757 820 Q 1757 940 1843 940 Q 1929 940 1928.99 910.1" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke-width="3" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1928.99 903.35 L 1933.49 912.35 L 1928.99 910.1 L 1924.49 912.36 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="#000000" stroke-width="3" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-238"><g><rect x="1687" y="660" width="140" height="160" rx="21" ry="21" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-dasharray="3 3" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-239"><g><path d="M 1756.5 580 Q 1756.5 620 1756.92 653.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1756.99 658.88 L 1753.4 651.93 L 1756.92 653.63 L 1760.4 651.84 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="w4JjUiD6-ryT0rcgaIPJ-1"><g><path d="M 1724 560 L 1723.37 560" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1718.12 560 L 1725.12 556.5 L 1723.37 560 L 1725.12 563.5 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-240"><g><rect x="1724" y="540" width="65" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 63px; height: 1px; padding-top: 560px; margin-left: 1725px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><div>sources/sayhello-0.1</div><div><br /></div></div></div></div></foreignObject><text x="1757" y="564" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">sources/say...</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-241"><g><rect x="1700" y="680" width="114" height="20" rx="3" ry="3" fill="#f5f5f5" style="fill: light-dark(rgb(245, 245, 245), rgb(26, 26, 26)); stroke: light-dark(rgb(102, 102, 102), rgb(149, 149, 149));" stroke="#666666" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 112px; height: 1px; padding-top: 690px; margin-left: 1701px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #333333; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#333333, #c1c1c1); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">Makefile</div></div></div></foreignObject><text x="1757" y="694" fill="#333333" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">Makefile</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-242"><g><rect x="1700" y="710" width="114" height="20" rx="3" ry="3" fill="#f5f5f5" style="fill: light-dark(rgb(245, 245, 245), rgb(26, 26, 26)); stroke: light-dark(rgb(102, 102, 102), rgb(149, 149, 149));" stroke="#666666" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 112px; height: 1px; padding-top: 720px; margin-left: 1701px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #333333; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#333333, #c1c1c1); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">LICENSE</div></div></div></foreignObject><text x="1757" y="724" fill="#333333" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">LICENSE</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-330"><g><path d="M 1700 750 Q 1647 750 1647 771.9 Q 1647 793.8 1689.9 793.76" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke-width="3" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1696.65 793.75 L 1687.65 798.26 L 1689.9 793.76 L 1687.64 789.26 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="#000000" stroke-width="3" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-244"><g><rect x="1700" y="740" width="114" height="20" rx="3" ry="3" fill="#f5f5f5" style="fill: light-dark(rgb(245, 245, 245), rgb(26, 26, 26)); stroke: light-dark(rgb(102, 102, 102), rgb(149, 149, 149));" stroke="#666666" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 112px; height: 1px; padding-top: 750px; margin-left: 1701px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #333333; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#333333, #c1c1c1); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">sayhello.c</div></div></div></foreignObject><text x="1757" y="754" fill="#333333" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">sayhello.c</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-245"><g><rect x="1700" y="780" width="114" height="27.5" rx="4.13" ry="4.13" fill="#eeeeee" style="fill: light-dark(rgb(238, 238, 238), rgb(32, 32, 32)); stroke: light-dark(rgb(54, 57, 61), rgb(186, 189, 192));" stroke="#36393d" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 112px; height: 1px; padding-top: 794px; margin-left: 1701px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">sayhello</div></div></div></foreignObject><text x="1757" y="797" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">sayhello</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-363"><g><path d="M 1958.99 900 Q 1957 900 1957 920 Q 1957 940 2022.75 940 Q 2088.5 940 2088.5 910.1" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke-width="3" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 2088.5 903.35 L 2093 912.35 L 2088.5 910.1 L 2084 912.35 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="#000000" stroke-width="3" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-247"><g><rect x="1868.99" y="660" width="120" height="240" rx="18" ry="18" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-dasharray="3 3" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-248"><g><path d="M 1928.99 580 L 1928.99 653.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1928.99 658.88 L 1926.66 651.88 L 1928.99 653.63 L 1931.32 651.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-249"><g><rect x="1897.49" y="540" width="63" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 61px; height: 1px; padding-top: 560px; margin-left: 1898px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">image</font></div></div></div></foreignObject><text x="1929" y="564" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">image</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-250"><g><path d="M 1929.1 720 L 1929.1 735 Q 1929.1 745 1929.06 754.32 L 1929.03 763.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1929.01 768.88 L 1926.7 761.87 L 1929.03 763.63 L 1931.37 761.89 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-252"><g><rect x="1907.25" y="680" width="43.5" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 42px; height: 1px; padding-top: 700px; margin-left: 1908px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">usr</font></div></div></div></foreignObject><text x="1929" y="704" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">usr</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-253"><g><path d="M 1929.01 810 L 1929 848.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1929 853.88 L 1926.67 846.88 L 1929 848.63 L 1931.33 846.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-254"><g><rect x="1902.13" y="770" width="53.75" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 52px; height: 1px; padding-top: 790px; margin-left: 1903px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">bin</font></div></div></div></foreignObject><text x="1929" y="794" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">bin</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-266"><g><path d="M 416.5 430 Q 506.5 430 506.5 507.5 Q 506.5 585 558.76 585" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke-width="2" stroke-miterlimit="10" stroke-dasharray="2 4" pointer-events="stroke"/><path d="M 564.76 585 L 556.76 587.67 L 558.76 585 L 556.76 582.33 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="#000000" stroke-width="2" stroke-miterlimit="10" pointer-events="all"/></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-267"><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 421px; margin-left: 438px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; background-color: #ffffff; border-color: #000000; "><div style="display: inline-block; font-size: 11px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; background-color: light-dark(#ffffff, var(--ge-dark-color, #121212)); border-width: 1px; border-style: solid; border-color: inherit; border: 1px solid light-dark(#000000, #ffffff); white-space: nowrap; "><div><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter" style="font-size: 14px;">S = "${UNPACKDIR}/${BP}"</font></div></div></div></div></foreignObject><text x="438" y="424" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="11px" text-anchor="middle">S = "${UNPACKDIR}/${BP}"</text></switch></g></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-270"><g><rect x="800.75" y="405" width="63" height="25" rx="3.75" ry="3.75" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 61px; height: 1px; padding-top: 418px; margin-left: 802px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #ffffff; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#ffffff, #121212); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">WORKDIR</font></div></div></div></foreignObject><text x="832" y="421" fill="#ffffff" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle" font-weight="bold">WORKDIR</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-271"><g><rect x="730.75" y="540" width="26.5" height="25" rx="3.75" ry="3.75" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 25px; height: 1px; padding-top: 553px; margin-left: 732px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #ffffff; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#ffffff, #121212); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">D</font></div></div></div></foreignObject><text x="744" y="556" fill="#ffffff" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle" font-weight="bold">D</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-272"><g><rect x="567" y="540" width="26.5" height="25" rx="3.75" ry="3.75" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 25px; height: 1px; padding-top: 553px; margin-left: 568px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #ffffff; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#ffffff, #121212); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">S</font></div></div></div></foreignObject><text x="580" y="556" fill="#ffffff" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle" font-weight="bold">S</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-273"><g><rect x="540.5" y="540" width="26.5" height="25" rx="3.75" ry="3.75" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 25px; height: 1px; padding-top: 553px; margin-left: 542px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #ffffff; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#ffffff, #121212); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">B</font></div></div></div></foreignObject><text x="554" y="556" fill="#ffffff" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle" font-weight="bold">B</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-275"><g><rect x="458.75" y="540" width="26.5" height="25" rx="3.75" ry="3.75" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 25px; height: 1px; padding-top: 553px; margin-left: 460px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #ffffff; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#ffffff, #121212); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">T</font></div></div></div></foreignObject><text x="472" y="556" fill="#ffffff" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle" font-weight="bold">T</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-276"><g><rect x="907" y="790" width="50" height="25" rx="3.75" ry="3.75" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 48px; height: 1px; padding-top: 803px; margin-left: 908px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #ffffff; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#ffffff, #121212); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">libdir</font></div></div></div></foreignObject><text x="932" y="806" fill="#ffffff" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle" font-weight="bold">libdir</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-277"><g><rect x="783.75" y="790" width="80" height="25" rx="3.75" ry="3.75" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 803px; margin-left: 785px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #ffffff; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#ffffff, #121212); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">includedir</font></div></div></div></foreignObject><text x="824" y="806" fill="#ffffff" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle" font-weight="bold">includedir</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-279"><g><rect x="1400.87" y="570" width="116.13" height="25" rx="3.75" ry="3.75" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 114px; height: 1px; padding-top: 583px; margin-left: 1402px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #ffffff; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#ffffff, #121212); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">RECIPE_SYSROOT</font></div></div></div></foreignObject><text x="1459" y="586" fill="#ffffff" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle" font-weight="bold">RECIPE_SYSROOT</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-351"><g><path d="M 1806.8 565 Q 1806.8 527.5 1799.35 527.5 Q 1791.9 527.5 1791.88 496.37" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 1791.88 491.12 L 1794.21 498.12 L 1791.88 496.37 L 1789.55 498.12 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-281"><g><rect x="1793.5" y="565" width="26.5" height="25" rx="3.75" ry="3.75" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 25px; height: 1px; padding-top: 578px; margin-left: 1795px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #ffffff; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#ffffff, #121212); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">S</font></div></div></div></foreignObject><text x="1807" y="581" fill="#ffffff" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle" font-weight="bold">S</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-282"><g><rect x="1767" y="565" width="26.5" height="25" rx="3.75" ry="3.75" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 25px; height: 1px; padding-top: 578px; margin-left: 1768px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #ffffff; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#ffffff, #121212); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">B</font></div></div></div></foreignObject><text x="1780" y="581" fill="#ffffff" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle" font-weight="bold">B</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-283"><g><rect x="1950.75" y="565" width="26.5" height="25" rx="3.75" ry="3.75" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 25px; height: 1px; padding-top: 578px; margin-left: 1952px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #ffffff; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#ffffff, #121212); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">D</font></div></div></div></foreignObject><text x="1964" y="581" fill="#ffffff" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle" font-weight="bold">D</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-284"><g><rect x="1447" y="395" width="63" height="25" rx="3.75" ry="3.75" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 61px; height: 1px; padding-top: 408px; margin-left: 1448px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #ffffff; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#ffffff, #121212); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">WORKDIR</font></div></div></div></foreignObject><text x="1479" y="411" fill="#ffffff" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle" font-weight="bold">WORKDIR</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-287"><g><rect x="1160" y="920" width="200" height="30" fill="#eeeeee" style="fill: light-dark(rgb(238, 238, 238), rgb(32, 32, 32)); stroke: light-dark(rgb(54, 57, 61), rgb(186, 189, 192));" stroke="#36393d" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 935px; margin-left: 1260px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: nowrap; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">do_prepare_recipe_sysroot</font></div></div></div></foreignObject><text x="1260" y="939" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">do_prepare_recipe_sysroot</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-292"><g><rect x="1884" y="855" width="90" height="27.5" rx="4.13" ry="4.13" fill="#eeeeee" style="fill: light-dark(rgb(238, 238, 238), rgb(32, 32, 32)); stroke: light-dark(rgb(54, 57, 61), rgb(186, 189, 192));" stroke="#36393d" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 88px; height: 1px; padding-top: 869px; margin-left: 1885px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">sayhello</div></div></div></foreignObject><text x="1929" y="872" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">sayhello</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-293"><g><rect x="1247" y="660" width="270" height="240" rx="36" ry="36" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-dasharray="3 3" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-294"><g><path d="M 1309.1 720 Q 1309.1 740 1309.03 753.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1309 758.88 L 1306.7 751.87 L 1309.03 753.63 L 1311.37 751.89 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-295"><g><path d="M 1309 720 Q 1309 740 1368.75 740 Q 1428.5 740 1428.5 753.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1428.5 758.88 L 1426.17 751.88 L 1428.5 753.63 L 1430.83 751.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-296"><g><rect x="1287.25" y="680" width="43.5" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 42px; height: 1px; padding-top: 700px; margin-left: 1288px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">usr</font></div></div></div></foreignObject><text x="1309" y="704" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">usr</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-297"><g><path d="M 1308.99 800 L 1309 823.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1309 828.88 L 1306.67 821.88 L 1309 823.63 L 1311.33 821.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-298"><g><rect x="1282.12" y="760" width="53.75" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 52px; height: 1px; padding-top: 780px; margin-left: 1283px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">include</font></div></div></div></foreignObject><text x="1309" y="784" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">include</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-299"><g><path d="M 1428.6 800 L 1428.6 810 Q 1428.6 820 1428.58 821.82 L 1428.56 823.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1428.51 828.88 L 1426.25 821.86 L 1428.56 823.63 L 1430.91 821.91 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-300"><g><rect x="1406.75" y="760" width="43.5" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 42px; height: 1px; padding-top: 780px; margin-left: 1408px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">lib</font></div></div></div></foreignObject><text x="1429" y="784" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">lib</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-301"><g><rect x="1269" y="830" width="80" height="25" rx="3.75" ry="3.75" fill="#f5f5f5" style="fill: light-dark(rgb(245, 245, 245), rgb(26, 26, 26)); stroke: light-dark(rgb(102, 102, 102), rgb(149, 149, 149));" stroke="#666666" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 843px; margin-left: 1270px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #333333; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#333333, #c1c1c1); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">hellolib.h</div></div></div></foreignObject><text x="1309" y="846" fill="#333333" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">hellolib.h</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-302"><g><rect x="1367" y="837.5" width="120" height="20" rx="3" ry="3" fill="#f5f5f5" style="fill: light-dark(rgb(245, 245, 245), rgb(26, 26, 26)); stroke: light-dark(rgb(102, 102, 102), rgb(149, 149, 149));" stroke="#666666" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 848px; margin-left: 1368px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #333333; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#333333, #c1c1c1); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">libhello.so.1</div></div></div></foreignObject><text x="1427" y="851" fill="#333333" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">libhello.so.1</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-303"><g><rect x="1367" y="862.5" width="120" height="25" rx="3.75" ry="3.75" fill="#f5f5f5" style="fill: light-dark(rgb(245, 245, 245), rgb(26, 26, 26)); stroke: light-dark(rgb(102, 102, 102), rgb(149, 149, 149));" stroke="#666666" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 875px; margin-left: 1368px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #333333; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#333333, #c1c1c1); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">libhello.so.1.0</div></div></div></foreignObject><text x="1427" y="879" fill="#333333" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">libhello.so.1.0</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-304"><g><rect x="1360" y="830" width="137" height="62.5" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-dasharray="3 3" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-308"><g><rect x="970" y="420" width="390" height="70" fill="none" stroke="#36393d" style="stroke: light-dark(rgb(54, 57, 61), rgb(186, 189, 192));" stroke-dasharray="3 3" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 455px; margin-left: 1165px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: nowrap; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter" style="font-size: 15px;">This also contains other files from other <br />dependencies. Default dependencies are:<br />basically <b style=""><u>gcc</u></b>, <b style=""><u>compilerlibs</u></b> and <b style=""><u style="">libc</u></b></font></div></div></div></foreignObject><text x="1165" y="459" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">This also contains other files from other...</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-310"><g><rect x="1092" y="570" width="127.5" height="25" rx="3.75" ry="3.75" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 126px; height: 1px; padding-top: 583px; margin-left: 1093px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #ffffff; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#ffffff, #121212); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">SYSROOT_DESTDIR</font></div></div></div></foreignObject><text x="1156" y="586" fill="#ffffff" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle" font-weight="bold">SYSROOT_DESTDIR</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-322"><g><path d="M 82.5 240 L 280.4 240" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke-width="3" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 287.15 240 L 278.15 244.5 L 280.4 240 L 278.15 235.5 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="#000000" stroke-width="3" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-323"><g><path d="M 82.5 290 L 280.4 290" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke-width="3" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 287.15 290 L 278.15 294.5 L 280.4 290 L 278.15 285.5 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="#000000" stroke-width="3" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-314"><g><rect x="0.5" y="215" width="82" height="100" rx="12.3" ry="12.3" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(35, 68, 93), rgb(160, 188, 210));" stroke="#23445d" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 80px; height: 1px; padding-top: 265px; margin-left: 2px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font color="#fcfcfc" style="color: light-dark(rgb(252, 252, 252), rgb(20, 20, 20));">Github</font></div></div></div></foreignObject><text x="42" y="269" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">Github</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-316"><g><rect x="133.75" y="225" width="80" height="30" fill="#eeeeee" style="fill: light-dark(rgb(238, 238, 238), rgb(32, 32, 32)); stroke: light-dark(rgb(54, 57, 61), rgb(186, 189, 192));" stroke="#36393d" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 240px; margin-left: 174px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: nowrap; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">do_fetch<br /></font></div></div></div></foreignObject><text x="174" y="244" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">do_fetch&#xa;</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-317"><g><ellipse cx="118.75" cy="240" rx="15" ry="15" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(86, 81, 126), rgb(164, 160, 198));" stroke="#56517e" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 28px; height: 1px; padding-top: 240px; margin-left: 105px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter" color="#ffffff" size="1" style="color: light-dark(rgb(255, 255, 255), rgb(18, 18, 18));"><b style="font-size: 15px;">1</b></font></div></div></div></foreignObject><text x="119" y="244" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">1</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-326"><g><rect x="133.75" y="275" width="80" height="30" fill="#eeeeee" style="fill: light-dark(rgb(238, 238, 238), rgb(32, 32, 32)); stroke: light-dark(rgb(54, 57, 61), rgb(186, 189, 192));" stroke="#36393d" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 290px; margin-left: 174px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: nowrap; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">do_fetch<br /></font></div></div></div></foreignObject><text x="174" y="294" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">do_fetch&#xa;</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-327"><g><ellipse cx="118.75" cy="290" rx="15" ry="15" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(86, 81, 126), rgb(164, 160, 198));" stroke="#56517e" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 28px; height: 1px; padding-top: 290px; margin-left: 105px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter" color="#ffffff" size="1" style="color: light-dark(rgb(255, 255, 255), rgb(18, 18, 18));"><b style="font-size: 15px;">5</b></font></div></div></div></foreignObject><text x="119" y="294" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">5</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-331"><g><rect x="1557" y="745" width="110" height="30" fill="#eeeeee" style="fill: light-dark(rgb(238, 238, 238), rgb(32, 32, 32)); stroke: light-dark(rgb(54, 57, 61), rgb(186, 189, 192));" stroke="#36393d" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 760px; margin-left: 1612px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: nowrap; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">do_configure<br /></font></div></div></div></foreignObject><text x="1612" y="764" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">do_configure&#xa;</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-332"><g><ellipse cx="1542" cy="760" rx="15" ry="15" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(86, 81, 126), rgb(164, 160, 198));" stroke="#56517e" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 28px; height: 1px; padding-top: 760px; margin-left: 1528px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter" color="#ffffff" size="1" style="color: light-dark(rgb(255, 255, 255), rgb(18, 18, 18));"><b style="font-size: 15px;">12</b></font></div></div></div></foreignObject><text x="1542" y="764" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">12</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-333"><g><rect x="1577" y="777.5" width="90" height="30" fill="#eeeeee" style="fill: light-dark(rgb(238, 238, 238), rgb(32, 32, 32)); stroke: light-dark(rgb(54, 57, 61), rgb(186, 189, 192));" stroke="#36393d" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 793px; margin-left: 1622px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: nowrap; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">do_compile<br /></font></div></div></div></foreignObject><text x="1622" y="796" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">do_compile&#xa;</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-334"><g><ellipse cx="1562" cy="792.5" rx="15" ry="15" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(86, 81, 126), rgb(164, 160, 198));" stroke="#56517e" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 28px; height: 1px; padding-top: 793px; margin-left: 1548px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter" color="#ffffff" size="1" style="color: light-dark(rgb(255, 255, 255), rgb(18, 18, 18));"><b style="font-size: 15px;">13</b></font></div></div></div></foreignObject><text x="1562" y="796" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">13</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-340"><g><rect x="627" y="225" width="90" height="30" fill="#eeeeee" style="fill: light-dark(rgb(238, 238, 238), rgb(32, 32, 32)); stroke: light-dark(rgb(54, 57, 61), rgb(186, 189, 192));" stroke="#36393d" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 240px; margin-left: 672px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: nowrap; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">do_unpack<br /></font></div></div></div></foreignObject><text x="672" y="244" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">do_unpack&#xa;</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-341"><g><ellipse cx="612" cy="240" rx="15" ry="15" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(86, 81, 126), rgb(164, 160, 198));" stroke="#56517e" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 28px; height: 1px; padding-top: 240px; margin-left: 598px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter" color="#ffffff" size="1" style="color: light-dark(rgb(255, 255, 255), rgb(18, 18, 18));"><b style="font-size: 15px;">2</b></font></div></div></div></foreignObject><text x="612" y="244" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">2</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-349"><g><path d="M 1462 130 Q 1462 150 1462.07 148.64" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1461.81 153.88 L 1458.66 146.72 L 1462.07 148.64 L 1465.65 147.07 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-438"><g><path d="M 1462 130 Q 1462 140 1398.15 140 Q 1334.3 140 1334.27 148.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1334.25 153.88 L 1330.78 146.87 L 1334.27 148.63 L 1337.78 146.89 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-439"><g><path d="M 1462 130 Q 1462 140 1527 140 Q 1592 140 1592 148.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1592 153.88 L 1588.5 146.88 L 1592 148.63 L 1595.5 146.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-343"><g><rect x="1427" y="90" width="70" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 68px; height: 1px; padding-top: 110px; margin-left: 1428px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">conf</font></div></div></div></foreignObject><text x="1462" y="114" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">conf</text></switch></g></g></g><g data-cell-id="utO5BPZsFb6q0V3ioqD--26"><g><path d="M 1287.25 165 Q 1277 165 1277 127.5 Q 1277 90 1313 90 Q 1349 90 1349 51.37" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 1349 46.12 L 1351.33 53.12 L 1349 51.37 L 1346.67 53.12 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-345"><g><rect x="1287.25" y="155" width="94" height="20" rx="3" ry="3" fill="#eeeeee" style="fill: light-dark(rgb(238, 238, 238), rgb(32, 32, 32)); stroke: light-dark(rgb(54, 57, 61), rgb(186, 189, 192));" stroke="#36393d" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 92px; height: 1px; padding-top: 165px; margin-left: 1288px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">local.conf</div></div></div></foreignObject><text x="1334" y="169" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">local.conf</text></switch></g></g></g><g data-cell-id="utO5BPZsFb6q0V3ioqD--24"><g><path d="M 1461.8 175 Q 1461.8 215 1511.9 215 Q 1562 215 1562 248.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 1562 253.88 L 1559.67 246.88 L 1562 248.63 L 1564.33 246.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-346"><g><rect x="1406.75" y="155" width="110" height="20" rx="3" ry="3" fill="#eeeeee" style="fill: light-dark(rgb(238, 238, 238), rgb(32, 32, 32)); stroke: light-dark(rgb(54, 57, 61), rgb(186, 189, 192));" stroke="#36393d" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 108px; height: 1px; padding-top: 165px; margin-left: 1408px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">bblayers.conf</div></div></div></foreignObject><text x="1462" y="169" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">bblayers.conf</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-350"><g><rect x="1676.75" y="340" width="230.25" height="150" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-dasharray="3 3" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 228px; height: 1px; padding-top: 415px; margin-left: 1678px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font style="font-size: 15px;"><b><u>S</u></b> defaults generally to <b><u>${UNPACKDIR}/${BP}</u></b><br /></font></div></div></div></foreignObject><text x="1792" y="419" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">S defaults generally to ${UNPACKDIR}/$...</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-352"><g><rect x="1557" y="675" width="110" height="40" fill="#eeeeee" style="fill: light-dark(rgb(238, 238, 238), rgb(32, 32, 32)); stroke: light-dark(rgb(54, 57, 61), rgb(186, 189, 192));" stroke="#36393d" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 695px; margin-left: 1612px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: nowrap; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">do_patch<br /><i>(No patches)</i><br /></font></div></div></div></foreignObject><text x="1612" y="699" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">do_patch...</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-353"><g><ellipse cx="1542" cy="695" rx="15" ry="15" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(86, 81, 126), rgb(164, 160, 198));" stroke="#56517e" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 28px; height: 1px; padding-top: 695px; margin-left: 1528px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter" color="#ffffff" size="1" style="color: light-dark(rgb(255, 255, 255), rgb(18, 18, 18));"><b style="font-size: 15px;">3</b></font></div></div></div></foreignObject><text x="1542" y="699" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">3</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-354"><g><ellipse cx="1145" cy="935" rx="15" ry="15" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(86, 81, 126), rgb(164, 160, 198));" stroke="#56517e" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 28px; height: 1px; padding-top: 935px; margin-left: 1131px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter" color="#ffffff" size="1" style="color: light-dark(rgb(255, 255, 255), rgb(18, 18, 18));"><b style="font-size: 15px;">4</b></font></div></div></div></foreignObject><text x="1145" y="939" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">4</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-356"><g><rect x="1731.75" y="890" width="90" height="30" fill="#eeeeee" style="fill: light-dark(rgb(238, 238, 238), rgb(32, 32, 32)); stroke: light-dark(rgb(54, 57, 61), rgb(186, 189, 192));" stroke="#36393d" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 905px; margin-left: 1777px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: nowrap; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">do_install<br /></font></div></div></div></foreignObject><text x="1777" y="909" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">do_install&#xa;</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-357"><g><ellipse cx="1717" cy="905" rx="15" ry="15" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(86, 81, 126), rgb(164, 160, 198));" stroke="#56517e" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 28px; height: 1px; padding-top: 905px; margin-left: 1703px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter" color="#ffffff" size="1" style="color: light-dark(rgb(255, 255, 255), rgb(18, 18, 18));"><b style="font-size: 15px;">14</b></font></div></div></div></foreignObject><text x="1717" y="909" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">14</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-362"><g><path d="M 2088.51 580 L 2088.51 653.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 2088.51 658.88 L 2086.17 651.88 L 2088.51 653.63 L 2090.84 651.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-358"><g><rect x="2057" y="540" width="63" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 61px; height: 1px; padding-top: 560px; margin-left: 2058px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">package</font></div></div></div></foreignObject><text x="2089" y="564" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">package</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-359"><g><rect x="2110.26" y="565" width="36.74" height="25" rx="3.75" ry="3.75" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 35px; height: 1px; padding-top: 578px; margin-left: 2111px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #ffffff; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#ffffff, #121212); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">PKGD</font></div></div></div></foreignObject><text x="2129" y="581" fill="#ffffff" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle" font-weight="bold">PKGD</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-384"><g><path d="M 2115.44 900 Q 2115.4 940 2196.2 940 Q 2277 940 2277 910.1" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke-width="3" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 2277 903.35 L 2281.5 912.35 L 2277 910.1 L 2272.5 912.35 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="#000000" stroke-width="3" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-361"><g><rect x="2034.63" y="660" width="107.75" height="240" rx="16.16" ry="16.16" fill="#eeeeee" style="fill: light-dark(rgb(238, 238, 238), rgb(32, 32, 32)); stroke: light-dark(rgb(54, 57, 61), rgb(186, 189, 192));" stroke="#36393d" stroke-dasharray="3 3" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 106px; height: 1px; padding-top: 780px; margin-left: 2036px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">A copy of <b>${D}<br /></b>excluding<br /><b>/sysroot-only</b></div></div></div></foreignObject><text x="2089" y="784" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">A copy of ${D}...</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-364"><g><rect x="1990.24" y="920" width="90" height="30" fill="#eeeeee" style="fill: light-dark(rgb(238, 238, 238), rgb(32, 32, 32)); stroke: light-dark(rgb(54, 57, 61), rgb(186, 189, 192));" stroke="#36393d" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 935px; margin-left: 2035px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: nowrap; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">do_package<br /></font></div></div></div></foreignObject><text x="2035" y="939" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">do_package&#xa;</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-365"><g><ellipse cx="1975.49" cy="935" rx="15" ry="15" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(86, 81, 126), rgb(164, 160, 198));" stroke="#56517e" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 28px; height: 1px; padding-top: 935px; margin-left: 1961px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter" color="#ffffff" size="1" style="color: light-dark(rgb(255, 255, 255), rgb(18, 18, 18));"><b style="font-size: 15px;">15</b></font></div></div></div></foreignObject><text x="1975" y="939" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">15</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-381"><g><path d="M 2277 580 L 2277 653.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 2277 658.88 L 2274.67 651.88 L 2277 653.63 L 2279.33 651.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-366"><g><rect x="2217" y="540" width="120" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 560px; margin-left: 2218px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">packages-split</font></div></div></div></foreignObject><text x="2277" y="564" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">packages-split</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-367"><g><rect x="2327" y="565" width="60" height="25" rx="3.75" ry="3.75" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 578px; margin-left: 2328px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #ffffff; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#ffffff, #121212); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">PKGDEST</font></div></div></div></foreignObject><text x="2357" y="581" fill="#ffffff" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle" font-weight="bold">PKGDEST</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-377"><g><path d="M 2277 710 L 2277 723.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 2277 728.88 L 2274.67 721.88 L 2277 723.63 L 2279.33 721.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-369"><g><rect x="2245.5" y="670" width="63" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 61px; height: 1px; padding-top: 690px; margin-left: 2247px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">sayhello</font></div></div></div></foreignObject><text x="2277" y="694" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">sayhello</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-372"><g><path d="M 2277.1 770 L 2277.1 780 Q 2277.1 790 2277.09 790.57 L 2277.08 791.13" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 2277.01 796.38 L 2274.78 789.35 L 2277.08 791.13 L 2279.44 789.42 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-373"><g><rect x="2255.25" y="730" width="43.5" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 42px; height: 1px; padding-top: 750px; margin-left: 2256px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">usr</font></div></div></div></foreignObject><text x="2277" y="754" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">usr</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-374"><g><path d="M 2276.99 837.5 L 2276.99 853.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 2276.99 858.88 L 2274.66 851.88 L 2276.99 853.63 L 2279.33 851.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-375"><g><rect x="2250.12" y="797.5" width="53.75" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 52px; height: 1px; padding-top: 818px; margin-left: 2251px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">bin</font></div></div></div></foreignObject><text x="2277" y="821" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">bin</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-382"><g><rect x="1922.37" y="340" width="321.75" height="148.75" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-dasharray="3 3" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 320px; height: 1px; padding-top: 414px; margin-left: 1923px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><span style="font-size: 15px;">Folders created here are present in <b><u>PACKAGES</u></b> variable, BitBake knows what and where to put things using the <b><u>FILES</u></b> variable, example: <b><u>FILES:${PN}</u></b> files will go to <b><u>${PN}</u></b> folder which is in <b><u>PACKAGES</u></b></span></div></div></div></foreignObject><text x="2083" y="418" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">Folders created here are present in PACKAGES variable...</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-385"><g><rect x="2160.12" y="920" width="90" height="30" fill="#eeeeee" style="fill: light-dark(rgb(238, 238, 238), rgb(32, 32, 32)); stroke: light-dark(rgb(54, 57, 61), rgb(186, 189, 192));" stroke="#36393d" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 935px; margin-left: 2205px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: nowrap; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">do_package<br /></font></div></div></div></foreignObject><text x="2205" y="939" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">do_package&#xa;</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-386"><g><ellipse cx="2145.37" cy="935" rx="15" ry="15" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(86, 81, 126), rgb(164, 160, 198));" stroke="#56517e" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 28px; height: 1px; padding-top: 935px; margin-left: 2131px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter" color="#ffffff" size="1" style="color: light-dark(rgb(255, 255, 255), rgb(18, 18, 18));"><b style="font-size: 15px;">16</b></font></div></div></div></foreignObject><text x="2145" y="939" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">16</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-390"><g><path d="M 2497 580 L 2497 668.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 2497 673.88 L 2494.67 666.88 L 2497 668.63 L 2499.33 666.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-387"><g><rect x="2437" y="540" width="120" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 560px; margin-left: 2438px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">deploy-<b><i>pkg</i></b></font></div></div></div></foreignObject><text x="2497" y="564" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">deploy-pkg</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-396"><g><path d="M 2497 715 L 2497 753.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 2497 758.88 L 2494.67 751.88 L 2497 753.63 L 2499.33 751.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-389"><g><rect x="2437" y="675" width="120" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 695px; margin-left: 2438px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter"><b>${PACKAGE_ARCH}</b></font></div></div></div></foreignObject><text x="2497" y="699" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">${PACKAGE_ARCH}</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-393"><g><rect x="2257" y="340" width="410" height="148.75" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-dasharray="3 3" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 408px; height: 1px; padding-top: 414px; margin-left: 2258px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font style="font-size: 15px;">This can be <b><u>rpms</u></b>, <b><u>debs</u></b> or <b><u>ipks</u></b>.<br />These are provided by<br /><b><u>package_rpm</u></b>, <b><u>package_deb</u></b> and <b><u>package_ipk</u></b> classes respectively, use <b><u>PACKAGE_CLASSES</u></b> for that as<br />content of <b><u>PACKAGE_CLASSES</u></b> will be appended<br />to <b><u>INHERIT</u></b><br /></font></div></div></div></foreignObject><text x="2462" y="418" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">This can be rpms, debs or ipks....</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-415"><g><path d="M 2630.5 776.25 L 2677 776.29 Q 2687 776.3 2687 766.3 L 2687 330 Q 2687 320 2677 320 L 1838.5 320 Q 1828.5 320 1828.5 310 L 1828.5 295.1" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke-width="3" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1828.5 288.35 L 1833 297.35 L 1828.5 295.1 L 1824 297.35 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="#000000" stroke-width="3" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-395"><g><rect x="2363.5" y="760" width="267" height="32.5" rx="4.88" ry="4.88" fill="#eeeeee" style="fill: light-dark(rgb(238, 238, 238), rgb(32, 32, 32)); stroke: light-dark(rgb(54, 57, 61), rgb(186, 189, 192));" stroke="#36393d" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 265px; height: 1px; padding-top: 776px; margin-left: 2365px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">sayhello-0.1-r0.${PACKAGE_ARCH}.<i>pkg</i></div></div></div></foreignObject><text x="2497" y="780" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">sayhello-0.1-r0.${PACKAGE_ARCH}.pkg</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-397"><g><rect x="2697" y="660" width="370" height="170" fill="none" stroke="#36393d" style="stroke: light-dark(rgb(54, 57, 61), rgb(186, 189, 192));" stroke-dasharray="3 3" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 368px; height: 1px; padding-top: 745px; margin-left: 2698px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font style="font-size: 15px;">This task also depends on <b><u>PACKAGE_CLASSES</u></b>,<br /><b><u><i>pkg</i></u></b> can be <b><u>rpm</u></b>, <b><u>deb</u></b> or <b><u>ipk</u></b> for <b><u>package_rpm</u></b>,<br /><b><u>package_deb</u></b> or <u style="font-weight: bold;">package_ipk</u> respectively.<br />The generated package generally named using:<br /><b><u>${PN}</u></b>, <b><u>${PR}</u></b>, <b><u>${PACKAGE_ARCH}</u></b> and <b><u><i>pkg</i></u></b><br /></font></div></div></div></foreignObject><text x="2882" y="749" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">This task also depends on PACKAGE_CLASSES,...</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-404"><g><path d="M 1828.5 130 L 1828.5 163.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1828.5 168.88 L 1825 161.88 L 1828.5 163.63 L 1832 161.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="utO5BPZsFb6q0V3ioqD--21"><g><path d="M 1863.5 110 Q 1863.5 110 1935.63 110" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 1940.88 110 L 1933.88 112.33 L 1935.63 110 L 1933.88 107.67 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-401"><g><rect x="1793.5" y="90" width="70" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 68px; height: 1px; padding-top: 110px; margin-left: 1795px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">deploy</font></div></div></div></foreignObject><text x="1829" y="114" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">deploy</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-414"><g><path d="M 1828.5 210 L 1828.5 220 Q 1828.5 230 1828.5 227.5 L 1828.5 226.25 Q 1828.5 225 1828.5 231.82 L 1828.5 238.63" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" pointer-events="stroke"/><path d="M 1828.5 243.88 L 1825 236.88 L 1828.5 238.63 L 1832 236.88 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-403"><g><rect x="1763.62" y="170" width="129.75" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 128px; height: 1px; padding-top: 190px; margin-left: 1765px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><b>${DEPLOY_DIR_<i>pkg</i>}</b></div></div></div></foreignObject><text x="1828" y="194" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">${DEPLOY_DIR_pkg}</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-408"><g><rect x="2372" y="920" width="150" height="30" fill="#eeeeee" style="fill: light-dark(rgb(238, 238, 238), rgb(32, 32, 32)); stroke: light-dark(rgb(54, 57, 61), rgb(186, 189, 192));" stroke="#36393d" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 935px; margin-left: 2447px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: nowrap; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">do_package_write_<i>pkg</i><br /></font></div></div></div></foreignObject><text x="2447" y="939" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">do_package_write_pkg&#xa;</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-409"><g><ellipse cx="2352" cy="935" rx="15" ry="15" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(86, 81, 126), rgb(164, 160, 198));" stroke="#56517e" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 28px; height: 1px; padding-top: 935px; margin-left: 2338px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter" color="#ffffff" size="1" style="color: light-dark(rgb(255, 255, 255), rgb(18, 18, 18));"><b style="font-size: 15px;">17</b></font></div></div></div></foreignObject><text x="2352" y="939" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">17</text></switch></g></g></g><g data-cell-id="utO5BPZsFb6q0V3ioqD--11"><g><path d="M 2512 935 Q 2882 935 2882 836.37" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 2882 831.12 L 2884.33 838.12 L 2882 836.37 L 2879.67 838.12 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-413"><g><rect x="1768.5" y="245" width="120" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 265px; margin-left: 1770px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">${PACKAGE_ARCH}</div></div></div></foreignObject><text x="1829" y="269" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">${PACKAGE_ARCH}</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-416"><g><rect x="1942" y="168.13" width="415" height="41.87" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-dasharray="3 3" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 413px; height: 1px; padding-top: 189px; margin-left: 1943px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font style="font-size: 15px;">For packages, this can be <b><u>IPK</u></b>, <b><u>RPM</u></b> or <b><u>DEB</u></b> (<i>check step 17</i>)</font></div></div></div></foreignObject><text x="2150" y="193" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">For packages, this can be IPK, RPM or DEB (check step 17)</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-417"><g><rect x="1842.37" y="120" width="80" height="25" rx="3.75" ry="3.75" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 78px; height: 1px; padding-top: 133px; margin-left: 1843px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #ffffff; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#ffffff, #121212); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">DEPLOY_DIR</font></div></div></div></foreignObject><text x="1882" y="136" fill="#ffffff" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle" font-weight="bold">DEPLOY_DIR</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-418"><g><rect x="1247" y="20" width="60" height="25" rx="3.75" ry="3.75" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 33px; margin-left: 1248px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #ffffff; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#ffffff, #121212); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">TMPDIR</font></div></div></div></foreignObject><text x="1277" y="36" fill="#ffffff" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle" font-weight="bold">TMPDIR</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-419"><g><rect x="417" y="120" width="62.68" height="25" rx="3.75" ry="3.75" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 61px; height: 1px; padding-top: 133px; margin-left: 418px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #ffffff; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#ffffff, #121212); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">DL_DIR</font></div></div></div></foreignObject><text x="448" y="136" fill="#ffffff" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle" font-weight="bold">DL_DIR</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-422"><g><path d="M 1893.37 190 L 1907.7 190 Q 1917.7 190 1926.67 189.65 L 1935.64 189.31" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 1940.88 189.11 L 1933.98 191.71 L 1935.64 189.31 L 1933.8 187.05 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-424"><g><rect x="2622" y="595" width="150" height="30" fill="#eeeeee" style="fill: light-dark(rgb(238, 238, 238), rgb(32, 32, 32)); stroke: light-dark(rgb(54, 57, 61), rgb(186, 189, 192));" stroke="#36393d" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 610px; margin-left: 2697px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: nowrap; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">do_package_write_<i>pkg</i><br /></font></div></div></div></foreignObject><text x="2697" y="614" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">do_package_write_pkg&#xa;</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-425"><g><ellipse cx="2602" cy="610" rx="15" ry="15" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237)); stroke: light-dark(rgb(86, 81, 126), rgb(164, 160, 198));" stroke="#56517e" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 28px; height: 1px; padding-top: 610px; margin-left: 2588px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter" color="#ffffff" size="1" style="color: light-dark(rgb(255, 255, 255), rgb(18, 18, 18));"><b style="font-size: 15px;">18</b></font></div></div></div></foreignObject><text x="2602" y="614" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">18</text></switch></g></g></g><g data-cell-id="utO5BPZsFb6q0V3ioqD--8"><g><path d="M 2567 577.5 Q 2720 577.5 2720 499.75 Q 2720 422 2719.68 285.12" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 2719.66 279.87 L 2722.01 286.86 L 2719.68 285.12 L 2717.35 286.87 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-427"><g><rect x="2537" y="565" width="30" height="25" rx="3.75" ry="3.75" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="none" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-428"><g><path d="M 2522 550 Q 2522 519.4 2543.25 519.4 Q 2564.5 519.4 2564.5 495.12" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 2564.5 489.87 L 2566.83 496.87 L 2564.5 495.12 L 2562.17 496.87 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-429"><g><rect x="2407" y="201.25" width="416.88" height="77.5" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-dasharray="3 3" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 415px; height: 1px; padding-top: 240px; margin-left: 2408px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font style="font-size: 15px;">This can be <b><u>PKGWRITEDIRRPM</u></b>, <b><u>PKGWRITEDIRDEB</u></b> or <b><u>PKGWRITEDIRIPK</u></b> for <b><u>package_rpm</u></b>, <b><u>package_deb</u></b><br />or <b><u>package_ipk</u></b> respectively<br /></font></div></div></div></foreignObject><text x="2615" y="244" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">This can be PKGWRITEDIRRPM, PKGWRITEDIRDEB or PKGWRITEDIRIPK for pack...</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-432"><g><rect x="157" y="617.5" width="328.25" height="102.5" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-dasharray="3 3" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 326px; height: 1px; padding-top: 669px; margin-left: 158px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><span style="font-size: 15px;">License checking happens in <b><u>do_populate_lic</u></b> after <b><u>do_patch<br /></u></b>and before that a checksum check<br />happends on <b><u>LIC_FILES_CHKSUM</u></b> if the<br />license is not <b><u>CLOSED</u></b><br /></span></div></div></div></foreignObject><text x="321" y="672" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">License checking happens in do_populate_lic after do_pa...</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-434"><g><rect x="882.12" y="340" width="434.88" height="70" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-dasharray="3 3" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 433px; height: 1px; padding-top: 375px; margin-left: 883px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><span style="font-size: 15px;">This variable is used to separate recipes<br />based on their target. This has value of<br /><b><u>${PACKAGE_ARCH}${TARGET_VENDOR}-${TARGET_OS}</u></b><br /></span></div></div></div></foreignObject><text x="1100" y="379" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">This variable is used to separate recipes...</text></switch></g></g></g><g data-cell-id="utO5BPZsFb6q0V3ioqD--28"><g><path d="M 1647 165 Q 1715.8 165 1715.84 126.37" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 1715.85 121.12 L 1718.17 128.12 L 1715.84 126.37 L 1713.51 128.12 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-436"><g><rect x="1537" y="155" width="110" height="20" rx="3" ry="3" fill="#eeeeee" style="fill: light-dark(rgb(238, 238, 238), rgb(32, 32, 32)); stroke: light-dark(rgb(54, 57, 61), rgb(186, 189, 192));" stroke="#36393d" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 108px; height: 1px; padding-top: 165px; margin-left: 1538px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">conf-notes.txt</div></div></div></foreignObject><text x="1592" y="169" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">conf-notes.txt</text></switch></g></g></g><g data-cell-id="utO5BPZsFb6q0V3ioqD--16"><g><path d="M 645.01 130 Q 645 165 760.63 165" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 765.88 165 L 758.88 167.33 L 760.63 165 L 758.88 162.67 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="utO5BPZsFb6q0V3ioqD--18"><g><path d="M 593.5 110 Q 553.8 110 553.75 51.37" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 553.75 46.12 L 556.09 53.12 L 553.75 51.37 L 551.42 53.12 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-440"><g><rect x="593.5" y="90" width="103.01" height="40" rx="6" ry="6" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 101px; height: 1px; padding-top: 110px; margin-left: 595px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">sstate-cache</font></div></div></div></foreignObject><text x="645" y="114" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">sstate-cache</text></switch></g></g></g><g data-cell-id="eV5wDCu3Df9HtTySJIbg-442"><g><rect x="660.98" y="120" width="83.01" height="25" rx="3.75" ry="3.75" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(237, 237, 237));" stroke="none" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 81px; height: 1px; padding-top: 133px; margin-left: 662px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #ffffff; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#ffffff, #121212); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: normal; word-wrap: normal; "><font data-font-src="https://fonts.googleapis.com/css?family=Architects+Daughter">SSTATE_DIR</font></div></div></div></foreignObject><text x="702" y="136" fill="#ffffff" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle" font-weight="bold">SSTATE_DIR</text></switch></g></g></g><g data-cell-id="utO5BPZsFb6q0V3ioqD--10"><g><rect x="2231.99" y="860" width="90" height="27.5" rx="4.13" ry="4.13" fill="#eeeeee" style="fill: light-dark(rgb(238, 238, 238), rgb(32, 32, 32)); stroke: light-dark(rgb(54, 57, 61), rgb(186, 189, 192));" stroke="#36393d" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 88px; height: 1px; padding-top: 874px; margin-left: 2233px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; ">sayhello</div></div></div></foreignObject><text x="2277" y="877" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">sayhello</text></switch></g></g></g><g data-cell-id="utO5BPZsFb6q0V3ioqD--13"><g><path d="M 1165 490 Q 1165 575 1226.1 575 Q 1287.2 575 1287.23 652.91" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-miterlimit="10" stroke-dasharray="3 3" pointer-events="stroke"/><path d="M 1287.23 658.16 L 1284.89 651.16 L 1287.23 652.91 L 1289.56 651.16 Z" fill="#000000" style="fill: light-dark(rgb(0, 0, 0), rgb(255, 255, 255)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-miterlimit="10" pointer-events="all"/></g></g><g data-cell-id="utO5BPZsFb6q0V3ioqD--15"><g><rect x="767" y="120" width="410" height="90" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-dasharray="3 3" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 408px; height: 1px; padding-top: 165px; margin-left: 768px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><span style="font-size: 15px;">This folder contains cache for recipes build output, this is used by BitBake, if the recipe checksum did not change it knows that the output to use is the same.<br /></span></div></div></div></foreignObject><text x="972" y="169" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">This folder contains cache for recipes build output, this is used by...</text></switch></g></g></g><g data-cell-id="utO5BPZsFb6q0V3ioqD--17"><g><rect x="348.75" y="0" width="410" height="45" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-dasharray="3 3" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 408px; height: 1px; padding-top: 23px; margin-left: 350px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><span style="font-size: 15px;"><font data-font-src="https://fonts.googleapis.com/css?family=Liberation+Sans">These directories can be shared accross builds to save disk space and build time</font><br /></span></div></div></div></foreignObject><text x="554" y="26" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">These directories can be shared accross builds to save disk space an...</text></switch></g></g></g><g data-cell-id="utO5BPZsFb6q0V3ioqD--20"><g><rect x="1942" y="87.5" width="416.88" height="45" fill="#ffffff" style="fill: light-dark(#ffffff, var(--ge-dark-color, #121212)); stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke="#000000" stroke-dasharray="3 3" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 415px; height: 1px; padding-top: 110px; margin-left: 1943px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font style="font-size: 15px;">This directory contains other output directories such as <b><u>images</u></b>, <b><u>sdk</u></b> and <b><u>licenses</u></b><br /></font></div></div></div></foreignObject><text x="2150" y="114" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">This directory contains other output directories such as images, sdk...</text></switch></g></g></g><g data-cell-id="utO5BPZsFb6q0V3ioqD--22"><g><rect x="1477" y="255" width="170" height="130" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-dasharray="3 3" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 168px; height: 1px; padding-top: 320px; margin-left: 1478px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font style="font-size: 15px;">This file contains all <b>layers</b> that BitBake should consider when looking for metadata.<br /></font></div></div></div></foreignObject><text x="1562" y="324" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">This file contains all layer...</text></switch></g></g></g><g data-cell-id="utO5BPZsFb6q0V3ioqD--25"><g><rect x="1349" y="5" width="440" height="40" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-dasharray="3 3" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 438px; height: 1px; padding-top: 25px; margin-left: 1350px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font style="font-size: 15px;">This is base configuration file containing essential user config such as <b><u>MACHINE</u></b> and <b><u>DISTRO</u></b><br /></font></div></div></div></foreignObject><text x="1569" y="29" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">This is base configuration file containing essential user config such as...</text></switch></g></g></g><g data-cell-id="utO5BPZsFb6q0V3ioqD--27"><g><rect x="1535" y="80" width="241.13" height="40" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" stroke-dasharray="3 3" pointer-events="all"/></g><g><g transform="translate(-0.5 -0.5)"><switch><foreignObject style="overflow: visible; text-align: left;" pointer-events="none" width="100%" height="100%" requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"><div xmlns="http://www.w3.org/1999/xhtml" style="display: flex; align-items: unsafe center; justify-content: unsafe center; width: 239px; height: 1px; padding-top: 100px; margin-left: 1536px;"><div style="box-sizing: border-box; font-size: 0; text-align: center; color: #000000; "><div style="display: inline-block; font-size: 12px; font-family: &quot;Liberation Sans&quot;; color: light-dark(#000000, #ffffff); line-height: 1.2; pointer-events: all; white-space: normal; word-wrap: normal; "><font style="font-size: 15px;">The message to show after <b>source oe-init-build-env</b><br /></font></div></div></div></foreignObject><text x="1656" y="104" fill="light-dark(#000000, #ffffff)" font-family="&quot;Liberation Sans&quot;" font-size="12px" text-anchor="middle">The message to show after source oe-init...</text></switch></g></g></g><g data-cell-id="IR5jgyizBFApjn6Bth0e-1"><g><rect x="2737" y="600" width="30" height="20" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" pointer-events="all"/></g></g><g data-cell-id="IR5jgyizBFApjn6Bth0e-2"><g><rect x="2587" y="766.25" width="20" height="20" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" pointer-events="all"/></g></g><g data-cell-id="IR5jgyizBFApjn6Bth0e-3"><g><rect x="2487" y="925" width="25" height="20" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" pointer-events="all"/></g></g><g data-cell-id="IR5jgyizBFApjn6Bth0e-4"><g><rect x="2507" y="550" width="20" height="20" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" pointer-events="all"/></g></g><g data-cell-id="IR5jgyizBFApjn6Bth0e-5"><g><rect x="1863.5" y="181.25" width="20" height="20" fill="none" stroke="#000000" style="stroke: light-dark(rgb(0, 0, 0), rgb(255, 255, 255));" pointer-events="all"/></g></g></g></g></g><switch><g requiredFeatures="http://www.w3.org/TR/SVG11/feature#Extensibility"/><a transform="translate(0,-5)" xlink:href="https://www.drawio.com/doc/faq/svg-export-text-problems" target="_blank"><text text-anchor="middle" font-size="10px" x="50%" y="100%">Text is not SVG - cannot display</text></a></switch></svg> \ No newline at end of file
diff --git a/documentation/overview-manual/svg/configuration-compile-autoreconf.svg b/documentation/overview-manual/svg/configuration-compile-autoreconf.svg
new file mode 100644
index 0000000000..3be08018cb
--- /dev/null
+++ b/documentation/overview-manual/svg/configuration-compile-autoreconf.svg
@@ -0,0 +1,1497 @@
1<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2<svg
3 version="1.1"
4 id="svg2"
5 width="715.68933"
6 height="568.14496"
7 viewBox="0 0 715.68933 568.14495"
8 sodipodi:docname="configuration-compile-autoreconf.svg"
9 inkscape:version="1.4 (e7c3feb100, 2024-10-09)"
10 xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
11 xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
12 xmlns="http://www.w3.org/2000/svg"
13 xmlns:svg="http://www.w3.org/2000/svg"
14 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
15 xmlns:cc="http://creativecommons.org/ns#"
16 xmlns:dc="http://purl.org/dc/elements/1.1/">
17 <sodipodi:namedview
18 pagecolor="#ffffff"
19 bordercolor="#666666"
20 borderopacity="1"
21 objecttolerance="10"
22 gridtolerance="10"
23 guidetolerance="10"
24 inkscape:pageopacity="0"
25 inkscape:pageshadow="2"
26 inkscape:window-width="2255"
27 inkscape:window-height="1999"
28 id="namedview4"
29 showgrid="false"
30 inkscape:zoom="1.4472045"
31 inkscape:cx="219.38849"
32 inkscape:cy="537.58817"
33 inkscape:window-x="2271"
34 inkscape:window-y="115"
35 inkscape:window-maximized="0"
36 inkscape:current-layer="g10"
37 inkscape:document-rotation="0"
38 inkscape:snap-perpendicular="true"
39 fit-margin-top="30"
40 lock-margins="true"
41 fit-margin-left="30"
42 fit-margin-right="30"
43 fit-margin-bottom="30"
44 inkscape:pagecheckerboard="0"
45 inkscape:showpageshadow="2"
46 inkscape:deskcolor="#d1d1d1">
47 <inkscape:grid
48 type="xygrid"
49 id="grid1257"
50 originx="56.164611"
51 originy="6.8221063"
52 spacingy="1"
53 spacingx="1"
54 units="px" />
55 </sodipodi:namedview>
56 <metadata
57 id="metadata8">
58 <rdf:RDF>
59 <cc:Work
60 rdf:about="">
61 <dc:format>image/svg+xml</dc:format>
62 <dc:type
63 rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
64 </cc:Work>
65 </rdf:RDF>
66 </metadata>
67 <defs
68 id="defs6">
69 <rect
70 x="-345.93011"
71 y="-568.73254"
72 width="776.87695"
73 height="667.43011"
74 id="rect28" />
75 <rect
76 x="23.839064"
77 y="148.04404"
78 width="87.237152"
79 height="79.809036"
80 id="rect2" />
81 <inkscape:path-effect
82 effect="powerstroke"
83 id="path-effect6121"
84 is_visible="true"
85 lpeversion="1"
86 offset_points="0,0.5"
87 sort_points="true"
88 interpolator_type="CubicBezierJohan"
89 interpolator_beta="0.2"
90 start_linecap_type="zerowidth"
91 linejoin_type="extrp_arc"
92 miter_limit="4"
93 scale_width="1"
94 end_linecap_type="zerowidth"
95 not_jump="false"
96 message="" />
97 <marker
98 style="overflow:visible"
99 id="marker5783"
100 refX="0"
101 refY="0"
102 orient="auto"
103 inkscape:stockid="Arrow2Mend"
104 inkscape:isstock="true"
105 viewBox="0 0 6.93045877 5.19622555"
106 markerWidth="6.93045877"
107 markerHeight="5.19622555"
108 preserveAspectRatio="xMidYMid">
109 <path
110 transform="scale(-0.6)"
111 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
112 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
113 id="path5781" />
114 </marker>
115 <marker
116 style="overflow:visible"
117 id="marker5623"
118 refX="0"
119 refY="0"
120 orient="auto"
121 inkscape:stockid="Arrow2Mend"
122 inkscape:isstock="true"
123 viewBox="0 0 6.9304588 5.1962256"
124 markerWidth="6.9304585"
125 markerHeight="5.1962256"
126 preserveAspectRatio="xMidYMid">
127 <path
128 transform="scale(-0.6)"
129 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
130 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
131 id="path5621" />
132 </marker>
133 <marker
134 style="overflow:visible"
135 id="marker5487"
136 refX="0"
137 refY="0"
138 orient="auto"
139 inkscape:stockid="Arrow2Mend"
140 inkscape:isstock="true">
141 <path
142 transform="scale(-0.6)"
143 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
144 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
145 id="path5485" />
146 </marker>
147 <marker
148 style="overflow:visible"
149 id="marker5285"
150 refX="0"
151 refY="0"
152 orient="auto"
153 inkscape:stockid="Arrow2Mstart"
154 inkscape:isstock="true">
155 <path
156 transform="scale(0.6)"
157 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
158 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
159 id="path5283" />
160 </marker>
161 <marker
162 style="overflow:visible"
163 id="marker5161"
164 refX="0"
165 refY="0"
166 orient="auto"
167 inkscape:stockid="Arrow2Mend"
168 inkscape:isstock="true">
169 <path
170 transform="scale(-0.6)"
171 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
172 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
173 id="path5159" />
174 </marker>
175 <marker
176 style="overflow:visible"
177 id="marker4860"
178 refX="0"
179 refY="0"
180 orient="auto"
181 inkscape:stockid="Arrow2Mend"
182 inkscape:isstock="true">
183 <path
184 transform="scale(-0.6)"
185 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
186 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
187 id="path4858" />
188 </marker>
189 <marker
190 style="overflow:visible"
191 id="marker4504"
192 refX="0"
193 refY="0"
194 orient="auto"
195 inkscape:stockid="Arrow2Mend"
196 inkscape:isstock="true">
197 <path
198 transform="scale(-0.6)"
199 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
200 style="fill:#ffa348;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
201 id="path4502" />
202 </marker>
203 <marker
204 style="overflow:visible"
205 id="Arrow1Mend"
206 refX="0"
207 refY="0"
208 orient="auto"
209 inkscape:stockid="Arrow1Mend"
210 inkscape:isstock="true">
211 <path
212 transform="matrix(-0.4,0,0,-0.4,-4,0)"
213 style="fill:#62a0ea;fill-opacity:1;fill-rule:evenodd;stroke:#62a0ea;stroke-width:1pt;stroke-opacity:1"
214 d="M 0,0 5,-5 -12.5,0 5,5 Z"
215 id="path3318" />
216 </marker>
217 <marker
218 style="overflow:visible"
219 id="marker4174"
220 refX="0"
221 refY="0"
222 orient="auto"
223 inkscape:stockid="Arrow2Mstart"
224 inkscape:isstock="true">
225 <path
226 transform="scale(0.6)"
227 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
228 style="fill:#62a0ea;fill-opacity:1;fill-rule:evenodd;stroke:#62a0ea;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
229 id="path4172" />
230 </marker>
231 <marker
232 style="overflow:visible"
233 id="Arrow2Mend"
234 refX="0"
235 refY="0"
236 orient="auto"
237 inkscape:stockid="Arrow2Mend"
238 inkscape:isstock="true">
239 <path
240 transform="scale(-0.6)"
241 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
242 style="fill:#ffa348;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
243 id="path3336" />
244 </marker>
245 <marker
246 style="overflow:visible"
247 id="Arrow1Mstart"
248 refX="0"
249 refY="0"
250 orient="auto"
251 inkscape:stockid="Arrow1Mstart"
252 inkscape:isstock="true">
253 <path
254 transform="matrix(0.4,0,0,0.4,4,0)"
255 style="fill:#ff7800;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:1pt;stroke-opacity:1"
256 d="M 0,0 5,-5 -12.5,0 5,5 Z"
257 id="path3315" />
258 </marker>
259 <marker
260 style="overflow:visible"
261 id="Arrow2Lstart"
262 refX="0"
263 refY="0"
264 orient="auto"
265 inkscape:stockid="Arrow2Lstart"
266 inkscape:isstock="true">
267 <path
268 transform="matrix(1.1,0,0,1.1,1.1,0)"
269 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
270 style="fill:#ff7800;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
271 id="path3327" />
272 </marker>
273 <marker
274 style="overflow:visible"
275 id="Arrow1Lstart"
276 refX="0"
277 refY="0"
278 orient="auto"
279 inkscape:stockid="Arrow1Lstart"
280 inkscape:isstock="true">
281 <path
282 transform="matrix(0.8,0,0,0.8,10,0)"
283 style="fill:#ff7800;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:1pt;stroke-opacity:1"
284 d="M 0,0 5,-5 -12.5,0 5,5 Z"
285 id="path3309" />
286 </marker>
287 <linearGradient
288 id="linearGradient921"
289 inkscape:swatch="solid">
290 <stop
291 style="stop-color:#deddda;stop-opacity:1;"
292 offset="0"
293 id="stop919" />
294 </linearGradient>
295 <linearGradient
296 id="linearGradient6035-4">
297 <stop
298 id="stop6037-2"
299 style="stop-color:#ffffff"
300 offset="0" />
301 <stop
302 id="stop6039-9"
303 style="stop-color:#ffffff;stop-opacity:0"
304 offset="1" />
305 </linearGradient>
306 <marker
307 style="overflow:visible"
308 id="Arrow2Mstart-4"
309 refX="0"
310 refY="0"
311 orient="auto"
312 inkscape:stockid="Arrow2Mstart"
313 inkscape:isstock="true">
314 <path
315 transform="scale(0.6)"
316 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
317 style="fill:#ffa348;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
318 id="path3333-2" />
319 </marker>
320 <marker
321 style="overflow:visible"
322 id="Arrow2Mend-2"
323 refX="0"
324 refY="0"
325 orient="auto"
326 inkscape:stockid="Arrow2Mend"
327 inkscape:isstock="true">
328 <path
329 transform="scale(-0.6)"
330 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
331 style="fill:#ffa348;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
332 id="path3336-7" />
333 </marker>
334 <marker
335 style="overflow:visible"
336 id="marker5623-2"
337 refX="0"
338 refY="0"
339 orient="auto"
340 inkscape:stockid="Arrow2Mend"
341 inkscape:isstock="true">
342 <path
343 transform="scale(-0.6)"
344 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
345 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
346 id="path5621-3" />
347 </marker>
348 <marker
349 style="overflow:visible"
350 id="Arrow2Mend-4"
351 refX="0"
352 refY="0"
353 orient="auto"
354 inkscape:stockid="Arrow2Mend"
355 inkscape:isstock="true">
356 <path
357 transform="scale(-0.6)"
358 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
359 style="fill:#ffa348;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
360 id="path3336-3" />
361 </marker>
362 <marker
363 style="overflow:visible"
364 id="marker5285-1"
365 refX="0"
366 refY="0"
367 orient="auto"
368 inkscape:stockid="Arrow2Mstart"
369 inkscape:isstock="true">
370 <path
371 transform="scale(0.6)"
372 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
373 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
374 id="path5283-7" />
375 </marker>
376 <marker
377 style="overflow:visible"
378 id="marker5161-4"
379 refX="0"
380 refY="0"
381 orient="auto"
382 inkscape:stockid="Arrow2Mend"
383 inkscape:isstock="true">
384 <path
385 transform="scale(-0.6)"
386 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
387 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
388 id="path5159-3" />
389 </marker>
390 <marker
391 style="overflow:visible"
392 id="marker5285-1-4"
393 refX="0"
394 refY="0"
395 orient="auto"
396 inkscape:stockid="Arrow2Mstart"
397 inkscape:isstock="true">
398 <path
399 transform="scale(0.6)"
400 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
401 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
402 id="path5283-7-6" />
403 </marker>
404 <marker
405 style="overflow:visible"
406 id="marker5161-4-9"
407 refX="0"
408 refY="0"
409 orient="auto"
410 inkscape:stockid="Arrow2Mend"
411 inkscape:isstock="true">
412 <path
413 transform="scale(-0.6)"
414 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
415 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
416 id="path5159-3-4" />
417 </marker>
418 <marker
419 style="overflow:visible"
420 id="marker4174-8"
421 refX="0"
422 refY="0"
423 orient="auto"
424 inkscape:stockid="Arrow2Mstart"
425 inkscape:isstock="true">
426 <path
427 transform="scale(0.6)"
428 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
429 style="fill:#62a0ea;fill-opacity:1;fill-rule:evenodd;stroke:#62a0ea;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
430 id="path4172-8" />
431 </marker>
432 <marker
433 style="overflow:visible"
434 id="marker5285-9"
435 refX="0"
436 refY="0"
437 orient="auto"
438 inkscape:stockid="Arrow2Mstart"
439 inkscape:isstock="true">
440 <path
441 transform="scale(0.6)"
442 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
443 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
444 id="path5283-5" />
445 </marker>
446 <marker
447 style="overflow:visible"
448 id="marker5161-0"
449 refX="0"
450 refY="0"
451 orient="auto"
452 inkscape:stockid="marker5161-0"
453 inkscape:isstock="true">
454 <path
455 transform="scale(-0.6)"
456 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
457 style="fill:#deddda;fill-opacity:1;fill-rule:evenodd;stroke:#deddda;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
458 id="path5159-4" />
459 </marker>
460 <marker
461 style="overflow:visible"
462 id="marker5285-17"
463 refX="0"
464 refY="0"
465 orient="auto"
466 inkscape:stockid="Arrow2Mstart"
467 inkscape:isstock="true">
468 <path
469 transform="scale(0.6)"
470 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
471 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
472 id="path5283-2" />
473 </marker>
474 <marker
475 style="overflow:visible"
476 id="marker5161-7"
477 refX="0"
478 refY="0"
479 orient="auto"
480 inkscape:stockid="Arrow2Mend"
481 inkscape:isstock="true">
482 <path
483 transform="scale(-0.6)"
484 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
485 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
486 id="path5159-2" />
487 </marker>
488 <marker
489 style="overflow:visible"
490 id="marker5285-17-6"
491 refX="0"
492 refY="0"
493 orient="auto"
494 inkscape:stockid="Arrow2Mstart"
495 inkscape:isstock="true">
496 <path
497 transform="scale(0.6)"
498 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
499 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
500 id="path5283-2-1" />
501 </marker>
502 <marker
503 style="overflow:visible"
504 id="marker5285-17-6-6"
505 refX="0"
506 refY="0"
507 orient="auto"
508 inkscape:stockid="Arrow2Mstart"
509 inkscape:isstock="true">
510 <path
511 transform="scale(0.6)"
512 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
513 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
514 id="path5283-2-1-1" />
515 </marker>
516 <marker
517 style="overflow:visible"
518 id="marker5285-17-9"
519 refX="0"
520 refY="0"
521 orient="auto"
522 inkscape:stockid="Arrow2Mstart"
523 inkscape:isstock="true">
524 <path
525 transform="scale(0.6)"
526 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
527 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
528 id="path5283-2-4" />
529 </marker>
530 <marker
531 style="overflow:visible"
532 id="marker5285-17-9-0"
533 refX="0"
534 refY="0"
535 orient="auto"
536 inkscape:stockid="Arrow2Mstart"
537 inkscape:isstock="true">
538 <path
539 transform="scale(0.6)"
540 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
541 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
542 id="path5283-2-4-9" />
543 </marker>
544 <marker
545 style="overflow:visible"
546 id="marker5285-17-9-2"
547 refX="0"
548 refY="0"
549 orient="auto"
550 inkscape:stockid="Arrow2Mstart"
551 inkscape:isstock="true">
552 <path
553 transform="scale(0.6)"
554 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
555 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
556 id="path5283-2-4-93" />
557 </marker>
558 <marker
559 style="overflow:visible"
560 id="marker5285-17-9-2-0"
561 refX="0"
562 refY="0"
563 orient="auto"
564 inkscape:stockid="Arrow2Mstart"
565 inkscape:isstock="true">
566 <path
567 transform="scale(0.6)"
568 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
569 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
570 id="path5283-2-4-93-9" />
571 </marker>
572 <marker
573 style="overflow:visible"
574 id="marker5285-17-9-3"
575 refX="0"
576 refY="0"
577 orient="auto"
578 inkscape:stockid="Arrow2Mstart"
579 inkscape:isstock="true">
580 <path
581 transform="scale(0.6)"
582 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
583 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
584 id="path5283-2-4-8" />
585 </marker>
586 <marker
587 style="overflow:visible"
588 id="marker5285-17-9-2-5"
589 refX="0"
590 refY="0"
591 orient="auto"
592 inkscape:stockid="Arrow2Mstart"
593 inkscape:isstock="true"
594 viewBox="0 0 6.9304588 5.1962256"
595 markerWidth="6.9304585"
596 markerHeight="5.1962256"
597 preserveAspectRatio="xMidYMid">
598 <path
599 transform="scale(0.6)"
600 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
601 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
602 id="path5283-2-4-93-6" />
603 </marker>
604 <marker
605 style="overflow:visible"
606 id="marker5285-17-6-1"
607 refX="0"
608 refY="0"
609 orient="auto"
610 inkscape:stockid="Arrow2Mstart"
611 inkscape:isstock="true">
612 <path
613 transform="scale(0.6)"
614 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
615 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
616 id="path5283-2-1-15" />
617 </marker>
618 <marker
619 style="overflow:visible"
620 id="marker5285-17-4"
621 refX="0"
622 refY="0"
623 orient="auto"
624 inkscape:stockid="Arrow2Mstart"
625 inkscape:isstock="true">
626 <path
627 transform="scale(0.6)"
628 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
629 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
630 id="path5283-2-7" />
631 </marker>
632 <marker
633 style="overflow:visible"
634 id="marker5285-17-4-4"
635 refX="0"
636 refY="0"
637 orient="auto"
638 inkscape:stockid="Arrow2Mstart"
639 inkscape:isstock="true">
640 <path
641 transform="scale(0.6)"
642 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
643 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
644 id="path5283-2-7-3" />
645 </marker>
646 <marker
647 style="overflow:visible"
648 id="marker5285-17-4-4-3"
649 refX="0"
650 refY="0"
651 orient="auto"
652 inkscape:stockid="Arrow2Mstart"
653 inkscape:isstock="true">
654 <path
655 transform="scale(0.6)"
656 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
657 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
658 id="path5283-2-7-3-8" />
659 </marker>
660 <marker
661 style="overflow:visible"
662 id="marker5285-17-4-7"
663 refX="0"
664 refY="0"
665 orient="auto"
666 inkscape:stockid="Arrow2Mstart"
667 inkscape:isstock="true">
668 <path
669 transform="scale(0.6)"
670 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
671 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
672 id="path5283-2-7-7" />
673 </marker>
674 <marker
675 style="overflow:visible"
676 id="marker5285-17-4-7-6"
677 refX="0"
678 refY="0"
679 orient="auto"
680 inkscape:stockid="Arrow2Mstart"
681 inkscape:isstock="true">
682 <path
683 transform="scale(0.6)"
684 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
685 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
686 id="path5283-2-7-7-4" />
687 </marker>
688 <marker
689 style="overflow:visible"
690 id="marker5285-17-4-7-0"
691 refX="0"
692 refY="0"
693 orient="auto"
694 inkscape:stockid="Arrow2Mstart"
695 inkscape:isstock="true">
696 <path
697 transform="scale(0.6)"
698 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
699 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
700 id="path5283-2-7-7-3" />
701 </marker>
702 <marker
703 style="overflow:visible"
704 id="marker5285-17-4-7-0-9"
705 refX="0"
706 refY="0"
707 orient="auto"
708 inkscape:stockid="Arrow2Mstart"
709 inkscape:isstock="true">
710 <path
711 transform="scale(0.6)"
712 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
713 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
714 id="path5283-2-7-7-3-2" />
715 </marker>
716 <marker
717 style="overflow:visible"
718 id="marker5285-17-4-7-0-9-4"
719 refX="0"
720 refY="0"
721 orient="auto"
722 inkscape:stockid="Arrow2Mstart"
723 inkscape:isstock="true">
724 <path
725 transform="scale(0.6)"
726 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
727 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
728 id="path5283-2-7-7-3-2-0" />
729 </marker>
730 <marker
731 style="overflow:visible"
732 id="marker5285-17-9-2-5-4"
733 refX="0"
734 refY="0"
735 orient="auto"
736 inkscape:stockid="Arrow2Mstart"
737 inkscape:isstock="true"
738 viewBox="0 0 6.9304588 5.1962256"
739 markerWidth="6.9304585"
740 markerHeight="5.1962256"
741 preserveAspectRatio="xMidYMid">
742 <path
743 transform="scale(0.6)"
744 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
745 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
746 id="path5283-2-4-93-6-7" />
747 </marker>
748 <marker
749 style="overflow:visible"
750 id="marker5285-17-9-2-8"
751 refX="0"
752 refY="0"
753 orient="auto"
754 inkscape:stockid="Arrow2Mstart"
755 inkscape:isstock="true">
756 <path
757 transform="scale(0.6)"
758 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
759 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
760 id="path5283-2-4-93-1" />
761 </marker>
762 <marker
763 style="overflow:visible"
764 id="marker5285-17-9-2-8-3"
765 refX="0"
766 refY="0"
767 orient="auto"
768 inkscape:stockid="Arrow2Mstart"
769 inkscape:isstock="true">
770 <path
771 transform="scale(0.6)"
772 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
773 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
774 id="path5283-2-4-93-1-6" />
775 </marker>
776 <marker
777 style="overflow:visible"
778 id="marker5285-17-9-2-5-5"
779 refX="0"
780 refY="0"
781 orient="auto"
782 inkscape:stockid="Arrow2Mstart"
783 inkscape:isstock="true"
784 viewBox="0 0 6.9304588 5.1962256"
785 markerWidth="6.9304585"
786 markerHeight="5.1962256"
787 preserveAspectRatio="xMidYMid">
788 <path
789 transform="scale(0.6)"
790 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
791 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
792 id="path5283-2-4-93-6-6" />
793 </marker>
794 <marker
795 style="overflow:visible"
796 id="marker5285-17-9-2-5-5-7"
797 refX="0"
798 refY="0"
799 orient="auto"
800 inkscape:stockid="Arrow2Mstart"
801 inkscape:isstock="true"
802 viewBox="0 0 6.9304588 5.1962256"
803 markerWidth="6.9304585"
804 markerHeight="5.1962256"
805 preserveAspectRatio="xMidYMid">
806 <path
807 transform="scale(0.6)"
808 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
809 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
810 id="path5283-2-4-93-6-6-4" />
811 </marker>
812 </defs>
813 <g
814 inkscape:groupmode="layer"
815 inkscape:label="Image"
816 id="g10"
817 transform="translate(56.164608,6.8220881)">
818 <rect
819 style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:3.18457;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-opacity:0"
820 id="rect1"
821 width="712.50476"
822 height="564.96039"
823 x="-54.572323"
824 y="-5.2298031" />
825 <text
826 xml:space="preserve"
827 style="font-weight:bold;font-size:42.5884px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
828 x="142.22464"
829 y="565.10297"
830 id="text907"><tspan
831 sodipodi:role="line"
832 id="tspan905"
833 x="142.22464"
834 y="565.10297" /></text>
835 <text
836 xml:space="preserve"
837 style="font-weight:bold;font-size:42.5884px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
838 x="98.363503"
839 y="637.8432"
840 id="text911"><tspan
841 sodipodi:role="line"
842 id="tspan909"
843 x="98.363503"
844 y="637.8432" /></text>
845 <text
846 xml:space="preserve"
847 style="font-weight:bold;font-size:42.5884px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
848 x="-59.575905"
849 y="580.05695"
850 id="text915"><tspan
851 sodipodi:role="line"
852 id="tspan913"
853 x="-59.575905"
854 y="580.05695" /></text>
855 <text
856 xml:space="preserve"
857 style="font-weight:bold;font-size:42.5884px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
858 x="313.46567"
859 y="412.9321"
860 id="text3781"><tspan
861 sodipodi:role="line"
862 id="tspan3779"
863 x="313.46567"
864 y="412.9321" /></text>
865 <g
866 id="g72820-3"
867 transform="matrix(3.2001899,0,0,4.5594279,-282.17456,-390.84179)">
868 <rect
869 style="fill:#00b0f0;fill-opacity:1;fill-rule:evenodd;stroke:#62a0ea;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
870 id="rect917-2-4-5-6"
871 width="196.16678"
872 height="75.164169"
873 x="74.926918"
874 y="125.14306"
875 ry="3.7680609" />
876 <rect
877 style="fill:#00b0f0;fill-opacity:1;fill-rule:evenodd;stroke:#62a0ea;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
878 id="rect917-2-4-5-6-5"
879 width="79.107689"
880 height="90.871338"
881 x="73.251595"
882 y="116.89642"
883 ry="4.5554776" />
884 </g>
885 <text
886 xml:space="preserve"
887 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:4.07299px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.3431px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
888 x="72.493103"
889 y="148.14941"
890 id="text1185-3-5-5-9-7"
891 transform="matrix(3.87937,0,0,3.7611867,-282.17456,-390.84179)"><tspan
892 sodipodi:role="line"
893 x="72.493103"
894 y="148.14941"
895 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:4.07299px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;stroke:none;stroke-width:0.3431px"
896 id="tspan60047-3">BitBake</tspan></text>
897 <text
898 xml:space="preserve"
899 style="font-weight:bold;font-size:42.5884px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
900 x="-16.290483"
901 y="345.7359"
902 id="text3116"><tspan
903 sodipodi:role="line"
904 id="tspan3114"
905 x="-16.290483"
906 y="345.7359" /></text>
907 <rect
908 style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:2.77342;stroke-dasharray:none;stroke-opacity:1"
909 id="rect917-0-6"
910 width="311.86728"
911 height="319.61835"
912 x="255.71458"
913 y="192.37657"
914 ry="16.022812" />
915 <rect
916 style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:1.55846;stroke-dasharray:none;stroke-opacity:1"
917 id="rect917-0-6-27"
918 width="252.62085"
919 height="124.59291"
920 x="-40.744541"
921 y="6.4460955"
922 ry="6.245976" />
923 <g
924 id="g3"
925 transform="translate(22.091254,28.226313)">
926 <rect
927 style="fill:#a0a0a0;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
928 id="rect917-0-6-27-0"
929 width="77.51136"
930 height="60.565445"
931 x="-57.536053"
932 y="-15.779959"
933 ry="3.0362105" />
934 </g>
935 <rect
936 style="fill:#deddda;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
937 id="rect917-0-6-2"
938 width="270.12872"
939 height="275.32745"
940 x="276.16855"
941 y="220.72719"
942 ry="13.80246" />
943 <rect
944 style="fill:#deddda;fill-opacity:1;fill-rule:evenodd;stroke:#deddda;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
945 id="rect917-0-6-2-5"
946 width="121.85956"
947 height="217.05815"
948 x="23.647911"
949 y="220.42442"
950 ry="10.881358" />
951 <g
952 id="g3-3"
953 transform="translate(103.61005,28.946859)">
954 <rect
955 style="fill:#a0a0a0;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
956 id="rect917-0-6-27-0-61"
957 width="77.51136"
958 height="60.565445"
959 x="-57.536053"
960 y="-15.779959"
961 ry="3.0362105" />
962 </g>
963 <text
964 xml:space="preserve"
965 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
966 x="84.219093"
967 y="39.632309"
968 id="text1185-3-5-5-9-7-93-9"
969 transform="scale(1.0010629,0.99893822)"><tspan
970 sodipodi:role="line"
971 x="84.219093"
972 y="39.632309"
973 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.42682px"
974 id="tspan2-9">Local</tspan><tspan
975 sodipodi:role="line"
976 x="84.219093"
977 y="52.965641"
978 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.42682px"
979 id="tspan5">Projects</tspan></text>
980 <g
981 id="g3-3-4"
982 transform="translate(183.7924,29.447932)">
983 <rect
984 style="fill:#a0a0a0;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
985 id="rect917-0-6-27-0-61-7"
986 width="77.51136"
987 height="60.565445"
988 x="-57.536053"
989 y="-15.779959"
990 ry="3.0362105" />
991 </g>
992 <text
993 xml:space="preserve"
994 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
995 x="165.86943"
996 y="39.960983"
997 id="text1185-3-5-5-9-7-93-9-4"
998 transform="scale(1.0010629,0.99893822)"><tspan
999 sodipodi:role="line"
1000 x="165.86943"
1001 y="39.960983"
1002 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.42682px"
1003 id="tspan2-9-3">SCMs</tspan><tspan
1004 sodipodi:role="line"
1005 x="165.86943"
1006 y="53.294315"
1007 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.42682px"
1008 id="tspan7">(optional)</tspan></text>
1009 <g
1010 id="g3-3-0"
1011 transform="matrix(3.0548289,0,0,0.817457,141.66394,89.23804)">
1012 <rect
1013 style="fill:#656565;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
1014 id="rect917-0-6-27-0-61-6"
1015 width="77.51136"
1016 height="60.565445"
1017 x="-57.536053"
1018 y="-15.779959"
1019 ry="2.4245923"
1020 rx="0.72017127" />
1021 </g>
1022 <rect
1023 style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
1024 id="rect917-0-6-27-0-6-3"
1025 width="19.926487"
1026 height="18.934353"
1027 x="45.831524"
1028 y="42.644245"
1029 ry="0"
1030 transform="rotate(43.365087)" />
1031 <rect
1032 style="fill:#a1a1a1;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
1033 id="rect917-0-6-27-0-6-3-2"
1034 width="19.926487"
1035 height="18.934353"
1036 x="43.716328"
1037 y="40.412731"
1038 ry="0"
1039 transform="rotate(43.365087)" />
1040 <rect
1041 style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
1042 id="rect917-0-6-27-0-6-3-5"
1043 width="19.926487"
1044 height="18.934353"
1045 x="103.70976"
1046 y="-11.862627"
1047 ry="0"
1048 transform="rotate(43.365087)" />
1049 <rect
1050 style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
1051 id="rect917-0-6-27-0-6-3-5-4"
1052 width="19.926487"
1053 height="18.934353"
1054 x="149.74034"
1055 y="34.173923"
1056 ry="0"
1057 transform="rotate(43.365087)" />
1058 <rect
1059 style="fill:#00b0f0;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
1060 id="rect917-0-6-27-0-6-3-5-4-2"
1061 width="19.926487"
1062 height="18.934353"
1063 x="202.05275"
1064 y="91.83194"
1065 ry="0"
1066 transform="rotate(43.365087)" />
1067 <rect
1068 style="fill:#dddcd9;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
1069 id="rect917-0-6-27-0-6-3-5-4-2-5"
1070 width="11.829602"
1071 height="11.269682"
1072 x="350.43219"
1073 y="246.40115"
1074 ry="0"
1075 transform="matrix(0.71126059,0.70292843,-0.67005221,0.74231397,0,0)" />
1076 <rect
1077 style="fill:#a1a1a1;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
1078 id="rect917-0-6-27-0-6-3-2-4"
1079 width="19.926487"
1080 height="18.934353"
1081 x="101.59456"
1082 y="-14.094144"
1083 ry="0"
1084 transform="rotate(43.365087)" />
1085 <rect
1086 style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
1087 id="rect917-0-6-27-0-6-3-5-7"
1088 width="19.926487"
1089 height="18.934353"
1090 x="162.23598"
1091 y="-67.150581"
1092 ry="0"
1093 transform="rotate(43.365087)" />
1094 <rect
1095 style="fill:#a1a1a1;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
1096 id="rect917-0-6-27-0-6-3-2-4-6"
1097 width="19.926487"
1098 height="18.934353"
1099 x="160.12079"
1100 y="-69.382095"
1101 ry="0"
1102 transform="rotate(43.365087)" />
1103 <rect
1104 style="fill:#666666;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
1105 id="rect917-0-6-27-0-6-3-2-4-6-7"
1106 width="19.926487"
1107 height="18.934353"
1108 x="138.76538"
1109 y="22.819752"
1110 ry="0"
1111 transform="rotate(43.365087)" />
1112 <text
1113 xml:space="preserve"
1114 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:15.5581px;line-height:119%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1115 x="324.94836"
1116 y="209.74802"
1117 id="text1185-3-5-5-9-7-9"
1118 transform="scale(1.0010629,0.99893822)"><tspan
1119 sodipodi:role="line"
1120 x="324.94836"
1121 y="209.74802"
1122 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:15.5581px;line-height:119%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;stroke:none;stroke-width:1.42682px"
1123 id="tspan60047-3-1">Build Directory</tspan></text>
1124 <text
1125 xml:space="preserve"
1126 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1127 x="3.9948041"
1128 y="32.339645"
1129 id="text1185-3-5-5-9-7-93"
1130 transform="scale(1.0010629,0.99893822)"><tspan
1131 sodipodi:role="line"
1132 x="3.9948034"
1133 y="32.339645"
1134 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.42682px"
1135 id="tspan60047-3-6">Upstream</tspan><tspan
1136 sodipodi:role="line"
1137 x="3.9948037"
1138 y="45.672977"
1139 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.42682px"
1140 id="tspan1">Project</tspan><tspan
1141 sodipodi:role="line"
1142 x="3.9948041"
1143 y="59.006313"
1144 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.42682px"
1145 id="tspan2">Releases</tspan></text>
1146 <rect
1147 style="fill:#92d050;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
1148 id="rect917-0-6-2-5-4"
1149 width="72.495255"
1150 height="33.113335"
1151 x="48.76759"
1152 y="262.15137" />
1153 <text
1154 xml:space="preserve"
1155 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:7.92165px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.84771px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1156 x="88.260292"
1157 y="240.17499"
1158 id="text1185-3-5-5-9-7-4"
1159 transform="scale(0.97863561,1.0218308)"><tspan
1160 sodipodi:role="line"
1161 x="88.260292"
1162 y="240.17499"
1163 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:7.92165px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;stroke:none;stroke-width:0.84771px"
1164 id="tspan60047-3-7">Configure / Compile / </tspan><tspan
1165 sodipodi:role="line"
1166 x="88.260292"
1167 y="250.07706"
1168 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:7.92165px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;stroke:none;stroke-width:0.84771px"
1169 id="tspan46">Autoreconf as needed</tspan></text>
1170 <text
1171 xml:space="preserve"
1172 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8px;line-height:125%;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.84771px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1173 x="92.404968"
1174 y="485.89694"
1175 id="text1185-3-5-5-9-7-4-2"
1176 transform="scale(0.97863561,1.0218308)"><tspan
1177 sodipodi:role="line"
1178 x="92.404968"
1179 y="485.89694"
1180 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;stroke:none;stroke-width:0.84771px"
1181 id="tspan46-0">EXTRA_OECONF = &quot;&lt;extra configure script options&gt;&quot;</tspan></text>
1182 <text
1183 xml:space="preserve"
1184 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8px;line-height:125%;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.84771px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1185 x="-25.569267"
1186 y="482.02933"
1187 id="text1185-3-5-5-9-7-4-2-7"
1188 transform="scale(0.97863561,1.0218308)"><tspan
1189 sodipodi:role="line"
1190 x="-25.569267"
1191 y="482.02933"
1192 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;stroke:none;stroke-width:0.84771px"
1193 id="tspan46-0-8">*</tspan></text>
1194 <text
1195 xml:space="preserve"
1196 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.84771px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1197 x="86.689705"
1198 y="275.88089"
1199 id="text1185-3-5-5-9-7-4-3"
1200 transform="scale(0.97863562,1.0218308)"><tspan
1201 sodipodi:role="line"
1202 x="86.689705"
1203 y="275.88089"
1204 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;stroke:none;stroke-width:0.84771px"
1205 id="tspan60047-3-7-0">do_configure*</tspan></text>
1206 <rect
1207 style="fill:#92d050;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
1208 id="rect917-0-6-2-5-4-0"
1209 width="72.495255"
1210 height="33.113335"
1211 x="49.58181"
1212 y="318.39053" />
1213 <text
1214 xml:space="preserve"
1215 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.84771px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1216 x="87.521706"
1217 y="330.91858"
1218 id="text1185-3-5-5-9-7-4-3-4"
1219 transform="scale(0.97863561,1.0218308)"><tspan
1220 sodipodi:role="line"
1221 x="87.521706"
1222 y="330.91858"
1223 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;stroke:none;stroke-width:0.84771px"
1224 id="tspan60047-3-7-0-8">do_compile</tspan></text>
1225 <rect
1226 style="fill:#92d050;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
1227 id="rect917-0-6-2-5-4-0-8"
1228 width="72.495255"
1229 height="33.113335"
1230 x="50.855366"
1231 y="379.17896" />
1232 <text
1233 xml:space="preserve"
1234 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.84771px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1235 x="88.823059"
1236 y="390.40823"
1237 id="text1185-3-5-5-9-7-4-3-4-8"
1238 transform="scale(0.97863561,1.0218308)"><tspan
1239 sodipodi:role="line"
1240 x="88.823059"
1241 y="390.40823"
1242 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;stroke:none;stroke-width:0.84771px"
1243 id="tspan60047-3-7-0-8-9">do_install</tspan></text>
1244 <text
1245 xml:space="preserve"
1246 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;line-height:125%;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1247 x="287.2186"
1248 y="234.09459"
1249 id="text1185-3-5-5-9-7-4-3-6"
1250 transform="scale(1.0010629,0.99893822)"><tspan
1251 sodipodi:role="line"
1252 x="287.2186"
1253 y="234.09459"
1254 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1255 id="tspan4">tmp &lt;───────────────────────────────────────── TMPDIR</tspan><tspan
1256 sodipodi:role="line"
1257 x="287.2186"
1258 y="247.42796"
1259 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1260 id="tspan6"> work</tspan><tspan
1261 sodipodi:role="line"
1262 x="287.2186"
1263 y="260.76135"
1264 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1265 id="tspan8"> ${PACKAGE_ARCH}-poky-${TARGET_OS}</tspan><tspan
1266 sodipodi:role="line"
1267 x="287.2186"
1268 y="274.09473"
1269 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1270 id="tspan12"> ${PN}</tspan><tspan
1271 sodipodi:role="line"
1272 x="287.2186"
1273 y="287.4281"
1274 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1275 id="tspan20"> ${PV} &lt;──────────────────────────────── WORKDIR</tspan><tspan
1276 sodipodi:role="line"
1277 x="287.2186"
1278 y="300.76147"
1279 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1280 id="tspan21"> sources &lt;──────────────────────────── UNPACKDIR</tspan><tspan
1281 sodipodi:role="line"
1282 x="287.2186"
1283 y="314.09485"
1284 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1285 id="tspan22"> ${BP} &lt;──────────────────────────── S / B</tspan><tspan
1286 sodipodi:role="line"
1287 x="287.2186"
1288 y="327.42822"
1289 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1290 id="tspan26"> image &lt;────────────────────────────── D</tspan><tspan
1291 sodipodi:role="line"
1292 x="287.2186"
1293 y="340.7616"
1294 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1295 id="tspan27"> ${PN} </tspan><tspan
1296 sodipodi:role="line"
1297 x="287.2186"
1298 y="354.09497"
1299 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1300 id="tspan28"> recipe-sysroot</tspan><tspan
1301 sodipodi:role="line"
1302 x="287.2186"
1303 y="367.42834"
1304 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1305 id="tspan31"> recipe-sysroot-native</tspan><tspan
1306 sodipodi:role="line"
1307 x="287.2186"
1308 y="380.76172"
1309 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1310 id="tspan32"> ${MACHINE}-poky-${TARGET_OS}</tspan><tspan
1311 sodipodi:role="line"
1312 x="287.2186"
1313 y="394.09509"
1314 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1315 id="tspan33"> ${PN}</tspan><tspan
1316 sodipodi:role="line"
1317 x="287.2186"
1318 y="407.42847"
1319 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1320 id="tspan34"> ${PV} &lt;──────────────────────────────── WORKDIR</tspan><tspan
1321 sodipodi:role="line"
1322 x="287.2186"
1323 y="420.76184"
1324 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1325 id="tspan35"> sources &lt;──────────────────────────── UNPACKDIR</tspan><tspan
1326 sodipodi:role="line"
1327 x="287.2186"
1328 y="434.09521"
1329 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1330 id="tspan36"> ${BP} &lt;──────────────────────────── S / B</tspan><tspan
1331 sodipodi:role="line"
1332 x="287.2186"
1333 y="447.42859"
1334 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1335 id="tspan40"> image &lt;────────────────────────────── D</tspan><tspan
1336 sodipodi:role="line"
1337 x="287.2186"
1338 y="460.76196"
1339 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1340 id="tspan41"> ${PN}</tspan><tspan
1341 sodipodi:role="line"
1342 x="287.2186"
1343 y="474.09534"
1344 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1345 id="tspan42"> recipe-sysroot</tspan><tspan
1346 sodipodi:role="line"
1347 x="287.2186"
1348 y="487.42871"
1349 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1350 id="tspan43"> recipe-sysroot-native</tspan></text>
1351 <text
1352 xml:space="preserve"
1353 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.4555px;line-height:125%;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1354 x="193.64195"
1355 y="301.45981"
1356 id="text1185-3-5-5-9-7-4-3-6-7-6-6-0-4"
1357 transform="scale(1.0010629,0.99893822)"><tspan
1358 sodipodi:role="line"
1359 x="193.64195"
1360 y="301.45981"
1361 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.4555px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1362 id="tspan19-3-5-3-8-6">S</tspan></text>
1363 <text
1364 xml:space="preserve"
1365 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.4555px;line-height:125%;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1366 x="193.36331"
1367 y="340.31906"
1368 id="text1185-3-5-5-9-7-4-3-6-7-6-6-0-4-2"
1369 transform="scale(1.0010629,0.99893822)"><tspan
1370 sodipodi:role="line"
1371 x="193.36331"
1372 y="340.31906"
1373 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.4555px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1374 id="tspan19-3-5-3-8-6-2">B</tspan></text>
1375 <text
1376 xml:space="preserve"
1377 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.4555px;line-height:125%;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1378 x="193.43362"
1379 y="400.95511"
1380 id="text1185-3-5-5-9-7-4-3-6-7-6-6-0-4-2-5"
1381 transform="scale(1.0010629,0.99893822)"><tspan
1382 sodipodi:role="line"
1383 x="193.43362"
1384 y="400.95511"
1385 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.4555px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1386 id="tspan19-3-5-3-8-6-2-4">D</tspan></text>
1387 <text
1388 xml:space="preserve"
1389 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1390 x="83.74826"
1391 y="106.97425"
1392 id="text1185-3-5-5-9-7-93-9-5"
1393 transform="scale(1.0010629,0.99893822)"><tspan
1394 sodipodi:role="line"
1395 x="83.74826"
1396 y="106.97425"
1397 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.42682px"
1398 id="tspan5-9">Source Mirror(s)</tspan></text>
1399 <text
1400 xml:space="preserve"
1401 transform="translate(-82.778014,-165.84268)"
1402 id="text2"
1403 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;line-height:119%;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;writing-mode:lr-tb;direction:ltr;white-space:pre;shape-inside:url(#rect2);display:inline;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none" />
1404 <text
1405 xml:space="preserve"
1406 transform="translate(-82.778014,-165.84268)"
1407 id="text28"
1408 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;line-height:119%;font-family:'Liberation Mono';-inkscape-font-specification:'Liberation Mono';text-align:start;writing-mode:lr-tb;direction:ltr;white-space:pre;shape-inside:url(#rect28);display:inline;fill:#808080;fill-opacity:1;stroke:#deddda;stroke-width:1.893;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
1409 <path
1410 style="display:inline;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.13623;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-start:url(#marker5285-17-4-7)"
1411 d="M 84.107321,316.8924 83.916347,295.45352"
1412 id="path5151-2-6"
1413 inkscape:connector-type="polyline"
1414 inkscape:connector-curvature="0" />
1415 <path
1416 style="display:inline;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.13623;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-start:url(#marker5285-17-4-7-0)"
1417 d="m 121.84721,276.95178 21.43888,-0.19098"
1418 id="path5151-2-6-0"
1419 inkscape:connector-type="polyline"
1420 inkscape:connector-curvature="0" />
1421 <path
1422 style="display:inline;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.13623;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-start:url(#marker5285-17-4-7-0-9)"
1423 d="m 122.16274,332.20494 21.43888,-0.19098"
1424 id="path5151-2-6-0-5"
1425 inkscape:connector-type="polyline"
1426 inkscape:connector-curvature="0" />
1427 <path
1428 style="display:inline;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.20639;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1429 d="m 142.72419,276.78776 0.18052,55.11154"
1430 id="path5151-2-6-0-5-5"
1431 inkscape:connector-type="polyline"
1432 inkscape:connector-curvature="0" />
1433 <path
1434 style="display:inline;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.197;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1435 d="m 142.8223,303.82265 111.46136,-0.17668"
1436 id="path5151-2-6-0-5-5-9"
1437 inkscape:connector-type="polyline"
1438 inkscape:connector-curvature="0" />
1439 <path
1440 style="display:inline;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.18805;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-start:url(#marker5285-17-9-2-5);marker-end:url(#marker5783)"
1441 d="m 123.78754,341.99278 129.49107,-0.17595"
1442 id="path5151-2-6-0-5-5-9-9"
1443 inkscape:connector-type="polyline"
1444 inkscape:connector-curvature="0" />
1445 <text
1446 xml:space="preserve"
1447 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.4555px;line-height:125%;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1448 x="193.32457"
1449 y="266.90759"
1450 id="text1185-3-5-5-9-7-4-3-6-7-6-6-0-4-2-9"
1451 transform="scale(1.0010629,0.99893822)"><tspan
1452 sodipodi:role="line"
1453 x="193.32457"
1454 y="266.90759"
1455 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.4555px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1456 id="tspan19-3-5-3-8-6-2-3">B</tspan></text>
1457 <path
1458 style="display:inline;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.19251;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-start:url(#marker5285-17-9-2-5-5)"
1459 d="m 122.88894,268.65887 131.39539,-0.17471"
1460 id="path5151-2-6-0-5-5-9-9-74"
1461 inkscape:connector-type="polyline"
1462 inkscape:connector-curvature="0" />
1463 <text
1464 xml:space="preserve"
1465 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.4555px;line-height:125%;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1466 x="193.47418"
1467 y="382.88867"
1468 id="text1185-3-5-5-9-7-4-3-6-7-6-6-0-4-2-9-4"
1469 transform="scale(1.0010629,0.99893822)"><tspan
1470 sodipodi:role="line"
1471 x="193.47418"
1472 y="382.88867"
1473 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.4555px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1474 id="tspan19-3-5-3-8-6-2-3-3">B</tspan></text>
1475 <path
1476 style="display:inline;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.18751;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-start:url(#marker5285-17-9-2-5-5-7)"
1477 d="M 124.73989,384.51678 254.4195,384.34124"
1478 id="path5151-2-6-0-5-5-9-9-74-0"
1479 inkscape:connector-type="polyline"
1480 inkscape:connector-curvature="0" />
1481 <path
1482 style="display:inline;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.19;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker5623)"
1483 d="m 123.0117,403.26392 130.52871,-0.17513"
1484 id="path5151-2-6-0-5-5-9-9-7"
1485 inkscape:connector-type="polyline"
1486 inkscape:connector-curvature="0" />
1487 <path
1488 style="display:inline;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.20636;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-start:url(#marker5285-17-4-7-6)"
1489 d="M 84.096686,377.39393 83.919385,351.36334"
1490 id="path5151-2-6-3"
1491 inkscape:connector-type="polyline"
1492 inkscape:connector-curvature="0" />
1493 </g>
1494 <style
1495 type="text/css"
1496 id="style1021"> .st0{fill:#4A97D2;} .st1{fill:#333333;} </style>
1497</svg>
diff --git a/documentation/overview-manual/svg/git-workflow.svg b/documentation/overview-manual/svg/git-workflow.svg
new file mode 100644
index 0000000000..7747e35d9c
--- /dev/null
+++ b/documentation/overview-manual/svg/git-workflow.svg
@@ -0,0 +1,1205 @@
1<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2<svg
3 xmlns:osb="http://www.openswatchbook.org/uri/2009/osb"
4 xmlns:dc="http://purl.org/dc/elements/1.1/"
5 xmlns:cc="http://creativecommons.org/ns#"
6 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
7 xmlns:svg="http://www.w3.org/2000/svg"
8 xmlns="http://www.w3.org/2000/svg"
9 xmlns:xlink="http://www.w3.org/1999/xlink"
10 xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
11 xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
12 version="1.1"
13 id="svg2"
14 width="914.0769"
15 height="379.81961"
16 viewBox="0 0 914.0769 379.81961"
17 sodipodi:docname="git-workflow.svg"
18 inkscape:version="1.0.2 (394de47547, 2021-03-26)">
19 <metadata
20 id="metadata8">
21 <rdf:RDF>
22 <cc:Work
23 rdf:about="">
24 <dc:format>image/svg+xml</dc:format>
25 <dc:type
26 rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
27 <dc:title></dc:title>
28 </cc:Work>
29 </rdf:RDF>
30 </metadata>
31 <defs
32 id="defs6">
33 <inkscape:path-effect
34 effect="powerstroke"
35 id="path-effect6121"
36 is_visible="true"
37 lpeversion="1"
38 offset_points="0,0.5"
39 sort_points="true"
40 interpolator_type="CubicBezierJohan"
41 interpolator_beta="0.2"
42 start_linecap_type="zerowidth"
43 linejoin_type="extrp_arc"
44 miter_limit="4"
45 scale_width="1"
46 end_linecap_type="zerowidth" />
47 <marker
48 style="overflow:visible"
49 id="marker5783"
50 refX="0"
51 refY="0"
52 orient="auto"
53 inkscape:stockid="Arrow2Mend"
54 inkscape:isstock="true">
55 <path
56 transform="scale(-0.6)"
57 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
58 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
59 id="path5781" />
60 </marker>
61 <marker
62 style="overflow:visible"
63 id="marker5623"
64 refX="0"
65 refY="0"
66 orient="auto"
67 inkscape:stockid="Arrow2Mend"
68 inkscape:isstock="true">
69 <path
70 transform="scale(-0.6)"
71 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
72 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
73 id="path5621" />
74 </marker>
75 <marker
76 style="overflow:visible"
77 id="marker5487"
78 refX="0"
79 refY="0"
80 orient="auto"
81 inkscape:stockid="Arrow2Mend"
82 inkscape:isstock="true">
83 <path
84 transform="scale(-0.6)"
85 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
86 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
87 id="path5485" />
88 </marker>
89 <marker
90 style="overflow:visible"
91 id="marker5285"
92 refX="0"
93 refY="0"
94 orient="auto"
95 inkscape:stockid="Arrow2Mstart"
96 inkscape:isstock="true">
97 <path
98 transform="scale(0.6)"
99 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
100 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
101 id="path5283" />
102 </marker>
103 <marker
104 style="overflow:visible"
105 id="marker5161"
106 refX="0"
107 refY="0"
108 orient="auto"
109 inkscape:stockid="Arrow2Mend"
110 inkscape:isstock="true">
111 <path
112 transform="scale(-0.6)"
113 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
114 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
115 id="path5159" />
116 </marker>
117 <marker
118 style="overflow:visible"
119 id="marker4978"
120 refX="0"
121 refY="0"
122 orient="auto"
123 inkscape:stockid="Arrow2Mend"
124 inkscape:isstock="true"
125 inkscape:collect="always">
126 <path
127 transform="scale(-0.6)"
128 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
129 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
130 id="path4976" />
131 </marker>
132 <marker
133 style="overflow:visible"
134 id="marker4860"
135 refX="0"
136 refY="0"
137 orient="auto"
138 inkscape:stockid="Arrow2Mend"
139 inkscape:isstock="true">
140 <path
141 transform="scale(-0.6)"
142 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
143 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
144 id="path4858" />
145 </marker>
146 <marker
147 style="overflow:visible"
148 id="marker4712"
149 refX="0"
150 refY="0"
151 orient="auto"
152 inkscape:stockid="Arrow2Mend"
153 inkscape:isstock="true"
154 inkscape:collect="always">
155 <path
156 transform="scale(-0.6)"
157 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
158 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
159 id="path4710" />
160 </marker>
161 <marker
162 style="overflow:visible"
163 id="marker4604"
164 refX="0"
165 refY="0"
166 orient="auto"
167 inkscape:stockid="Arrow2Mend"
168 inkscape:isstock="true"
169 inkscape:collect="always">
170 <path
171 transform="scale(-0.6)"
172 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
173 style="fill:#ffa348;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
174 id="path4602" />
175 </marker>
176 <marker
177 style="overflow:visible"
178 id="marker4504"
179 refX="0"
180 refY="0"
181 orient="auto"
182 inkscape:stockid="Arrow2Mend"
183 inkscape:isstock="true">
184 <path
185 transform="scale(-0.6)"
186 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
187 style="fill:#ffa348;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
188 id="path4502" />
189 </marker>
190 <marker
191 style="overflow:visible"
192 id="marker4414"
193 refX="0"
194 refY="0"
195 orient="auto"
196 inkscape:stockid="Arrow2Mend"
197 inkscape:isstock="true"
198 inkscape:collect="always">
199 <path
200 transform="scale(-0.6)"
201 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
202 style="fill:#62a0ea;fill-opacity:1;fill-rule:evenodd;stroke:#62a0ea;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
203 id="path4412" />
204 </marker>
205 <marker
206 style="overflow:visible"
207 id="marker4286"
208 refX="0"
209 refY="0"
210 orient="auto"
211 inkscape:stockid="Arrow2Mend"
212 inkscape:isstock="true"
213 inkscape:collect="always">
214 <path
215 transform="scale(-0.6)"
216 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
217 style="fill:#62a0ea;fill-opacity:1;fill-rule:evenodd;stroke:#62a0ea;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
218 id="path4284" />
219 </marker>
220 <marker
221 style="overflow:visible"
222 id="Arrow1Mend"
223 refX="0"
224 refY="0"
225 orient="auto"
226 inkscape:stockid="Arrow1Mend"
227 inkscape:isstock="true">
228 <path
229 transform="matrix(-0.4,0,0,-0.4,-4,0)"
230 style="fill:#62a0ea;fill-opacity:1;fill-rule:evenodd;stroke:#62a0ea;stroke-width:1pt;stroke-opacity:1"
231 d="M 0,0 5,-5 -12.5,0 5,5 Z"
232 id="path3318" />
233 </marker>
234 <marker
235 style="overflow:visible"
236 id="marker4174"
237 refX="0"
238 refY="0"
239 orient="auto"
240 inkscape:stockid="Arrow2Mstart"
241 inkscape:isstock="true">
242 <path
243 transform="scale(0.6)"
244 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
245 style="fill:#62a0ea;fill-opacity:1;fill-rule:evenodd;stroke:#62a0ea;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
246 id="path4172" />
247 </marker>
248 <marker
249 style="overflow:visible"
250 id="Arrow2Mend"
251 refX="0"
252 refY="0"
253 orient="auto"
254 inkscape:stockid="Arrow2Mend"
255 inkscape:isstock="true">
256 <path
257 transform="scale(-0.6)"
258 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
259 style="fill:#ffa348;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
260 id="path3336" />
261 </marker>
262 <marker
263 style="overflow:visible"
264 id="Arrow2Mstart"
265 refX="0"
266 refY="0"
267 orient="auto"
268 inkscape:stockid="Arrow2Mstart"
269 inkscape:isstock="true"
270 inkscape:collect="always">
271 <path
272 transform="scale(0.6)"
273 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
274 style="fill:#ffa348;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
275 id="path3333" />
276 </marker>
277 <marker
278 style="overflow:visible"
279 id="Arrow1Mstart"
280 refX="0"
281 refY="0"
282 orient="auto"
283 inkscape:stockid="Arrow1Mstart"
284 inkscape:isstock="true">
285 <path
286 transform="matrix(0.4,0,0,0.4,4,0)"
287 style="fill:#ff7800;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:1pt;stroke-opacity:1"
288 d="M 0,0 5,-5 -12.5,0 5,5 Z"
289 id="path3315" />
290 </marker>
291 <marker
292 style="overflow:visible"
293 id="Arrow2Lstart"
294 refX="0"
295 refY="0"
296 orient="auto"
297 inkscape:stockid="Arrow2Lstart"
298 inkscape:isstock="true">
299 <path
300 transform="matrix(1.1,0,0,1.1,1.1,0)"
301 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
302 style="fill:#ff7800;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
303 id="path3327" />
304 </marker>
305 <marker
306 style="overflow:visible"
307 id="Arrow1Lstart"
308 refX="0"
309 refY="0"
310 orient="auto"
311 inkscape:stockid="Arrow1Lstart"
312 inkscape:isstock="true">
313 <path
314 transform="matrix(0.8,0,0,0.8,10,0)"
315 style="fill:#ff7800;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:1pt;stroke-opacity:1"
316 d="M 0,0 5,-5 -12.5,0 5,5 Z"
317 id="path3309" />
318 </marker>
319 <linearGradient
320 id="linearGradient921"
321 osb:paint="solid">
322 <stop
323 style="stop-color:#deddda;stop-opacity:1;"
324 offset="0"
325 id="stop919" />
326 </linearGradient>
327 <linearGradient
328 id="linearGradient6035-4">
329 <stop
330 id="stop6037-2"
331 style="stop-color:#ffffff"
332 offset="0" />
333 <stop
334 id="stop6039-9"
335 style="stop-color:#ffffff;stop-opacity:0"
336 offset="1" />
337 </linearGradient>
338 <linearGradient
339 id="linearGradient11801"
340 y2="511.97"
341 spreadMethod="reflect"
342 gradientUnits="userSpaceOnUse"
343 x2="286.63"
344 gradientTransform="matrix(4.9627,0,0,4.9627,278.63,-3355.4)"
345 y1="511.97"
346 x1="269.97"
347 inkscape:collect="always">
348 <stop
349 id="stop5497-7"
350 style="stop-color:#497bb3"
351 offset="0" />
352 <stop
353 id="stop5501-5"
354 style="stop-color:#a5c4e6"
355 offset=".20485" />
356 <stop
357 id="stop5499-8"
358 style="stop-color:#3b5d8b"
359 offset="1" />
360 </linearGradient>
361 <linearGradient
362 id="linearGradient11803"
363 y2="527.34003"
364 gradientUnits="userSpaceOnUse"
365 x2="286.63"
366 y1="518.56"
367 x1="282.35999"
368 inkscape:collect="always">
369 <stop
370 id="stop5468-4"
371 style="stop-color:#a5c4e6"
372 offset="0" />
373 <stop
374 id="stop5470-8"
375 style="stop-color:#497bb3"
376 offset="1" />
377 </linearGradient>
378 <linearGradient
379 id="linearGradient11805"
380 y2="520.33002"
381 xlink:href="#linearGradient6035-4"
382 spreadMethod="reflect"
383 gradientUnits="userSpaceOnUse"
384 x2="327.78"
385 gradientTransform="matrix(4.1992,0,0,4.1992,407.33,-3062.9)"
386 y1="522.60999"
387 x1="308.5"
388 inkscape:collect="always" />
389 <linearGradient
390 id="linearGradient11807"
391 y2="520.33002"
392 xlink:href="#linearGradient6035-4"
393 spreadMethod="reflect"
394 gradientUnits="userSpaceOnUse"
395 x2="327.78"
396 gradientTransform="matrix(4.1992,0,0,4.1992,407.33,-3015.8)"
397 y1="522.60999"
398 x1="308.5"
399 inkscape:collect="always" />
400 <linearGradient
401 id="linearGradient11809"
402 y2="520.33002"
403 xlink:href="#linearGradient6035-4"
404 spreadMethod="reflect"
405 gradientUnits="userSpaceOnUse"
406 x2="327.78"
407 gradientTransform="matrix(4.1992,0,0,4.1992,407.33,-2971.6)"
408 y1="522.60999"
409 x1="308.5"
410 inkscape:collect="always" />
411 <marker
412 style="overflow:visible"
413 id="Arrow2Mstart-4"
414 refX="0"
415 refY="0"
416 orient="auto"
417 inkscape:stockid="Arrow2Mstart"
418 inkscape:isstock="true">
419 <path
420 transform="scale(0.6)"
421 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
422 style="fill:#ffa348;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
423 id="path3333-2" />
424 </marker>
425 <marker
426 style="overflow:visible"
427 id="Arrow2Mend-2"
428 refX="0"
429 refY="0"
430 orient="auto"
431 inkscape:stockid="Arrow2Mend"
432 inkscape:isstock="true">
433 <path
434 transform="scale(-0.6)"
435 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
436 style="fill:#ffa348;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
437 id="path3336-7" />
438 </marker>
439 <marker
440 style="overflow:visible"
441 id="marker5623-2"
442 refX="0"
443 refY="0"
444 orient="auto"
445 inkscape:stockid="Arrow2Mend"
446 inkscape:isstock="true">
447 <path
448 transform="scale(-0.6)"
449 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
450 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
451 id="path5621-3" />
452 </marker>
453 </defs>
454 <sodipodi:namedview
455 pagecolor="#ffffff"
456 bordercolor="#666666"
457 borderopacity="1"
458 objecttolerance="10"
459 gridtolerance="10"
460 guidetolerance="10"
461 inkscape:pageopacity="0"
462 inkscape:pageshadow="2"
463 inkscape:window-width="1848"
464 inkscape:window-height="983"
465 id="namedview4"
466 showgrid="false"
467 inkscape:zoom="1.0233281"
468 inkscape:cx="782.70306"
469 inkscape:cy="243.82083"
470 inkscape:window-x="1992"
471 inkscape:window-y="27"
472 inkscape:window-maximized="1"
473 inkscape:current-layer="g10"
474 inkscape:document-rotation="0"
475 inkscape:snap-perpendicular="true"
476 fit-margin-top="30"
477 lock-margins="true"
478 fit-margin-left="30"
479 fit-margin-right="30"
480 fit-margin-bottom="30">
481 <inkscape:grid
482 type="xygrid"
483 id="grid1257"
484 originx="52.044543"
485 originy="-399.74243" />
486 </sodipodi:namedview>
487 <g
488 inkscape:groupmode="layer"
489 inkscape:label="Image"
490 id="g10"
491 transform="translate(52.044543,-399.74244)">
492 <g
493 id="g5149"
494 transform="translate(-6.511663,12.941792)">
495 <g
496 id="g3925"
497 transform="matrix(0.4122756,0,0,0.4122756,-131.50883,333.4483)"
498 style="stroke-width:2.42556">
499 <g
500 id="layer1-3-5-2"
501 inkscape:label="Capa 1"
502 transform="matrix(1.1196,0,0,1.1196,-122.82057,267.39056)"
503 style="stroke-width:2.42556">
504 <g
505 id="g10-5-2"
506 transform="matrix(0.0423,0,0,0.0423,319.39,59.128)"
507 class="Graphic"
508 style="stroke-width:2.42556">
509 <g
510 id="g12-4-2"
511 style="stroke-width:2.42556">
512 <g
513 id="g14-64-0"
514 style="fill:#c7c7c7;stroke-width:2.42556">
515 <path
516 id="path16-1-5"
517 inkscape:connector-curvature="0"
518 d="m 5903,2361 c 50,82 34,3995 -31,4149 -51,122 -1703,1495 -1789,1531 -1117,-7 -1870,-414 -1995,-629 -48,-270 -7,-4433 38,-4520 40,-76 2153,-833 2227,-851 67,-15 1493,229 1550,320 z"
519 style="stroke-width:2.42556" />
520 </g>
521 <g
522 id="g18-6-5"
523 style="fill:#000000;stroke-width:2.42556">
524 <path
525 id="path20-8-2"
526 inkscape:connector-curvature="0"
527 d="m 5881,2374 2,-1 -2,2 c 0,-1 -1,-1 -1,-1 v -2 l 7,-3 -2,2 -5,1 5,-1 -2,2 z m 2,-1 2,-2 2,-2 5,-2 -5,4 5,-4 h 1 l -6,3 v 1 -1 z m 10,-6 h -1 1 -1 l 11,-6 -10,5 z m 11,-4 -11,4 v -1 z m 20,-15 c -2,-3 -4,-6 -7,-9 -2,-3 -5,-5 -8,-7 -5,-4 -12,-8 -20,-12 -7,-4 -15,-7 -24,-11 -9,-4 -19,-7 -30,-11 -21,-8 -47,-16 -75,-24 -29,-8 -61,-16 -95,-25 -136,-34 -313,-72 -494,-106 -181,-35 -364,-66 -511,-90 -73,-11 -138,-21 -189,-27 -25,-3 -47,-6 -65,-8 -9,-1 -17,-1 -24,-2 -4,0 -7,0 -10,-1 h -9 c -3,0 -5,0 -7,1 h -4 c -2,0 -3,0 -4,1 -2,0 -4,1 -7,2 -2,0 -5,1 -8,2 -3,1 -7,2 -11,3 -4,2 -8,3 -13,5 -10,3 -22,7 -35,12 -13,4 -28,9 -44,15 -33,11 -71,25 -115,40 -43,15 -91,32 -144,51 -209,75 -481,173 -753,274 -271,101 -542,203 -747,285 -51,21 -98,40 -140,57 -43,18 -80,34 -111,48 -16,7 -30,14 -42,20 -13,6 -24,12 -33,17 -5,2 -9,5 -13,7 -4,3 -8,5 -10,7 -4,3 -7,5 -9,7 -5,4 -7,8 -9,11 -1,2 -2,5 -4,9 0,3 -1,6 -1,9 -1,3 -1,7 -2,11 -1,4 -1,8 -2,13 0,9 -1,20 -3,32 0,13 -1,27 -2,42 -2,31 -4,69 -6,111 -2,43 -4,91 -5,144 -7,213 -14,504 -19,835 -11,662 -19,1482 -19,2144 0,308 2,583 5,791 1,52 2,100 3,143 1,43 3,82 4,115 1,34 3,62 4,85 1,12 2,22 3,30 1,5 1,9 1,13 1,3 2,7 2,10 l 1,4 2,4 c 9,15 20,30 33,46 14,16 30,32 48,49 35,32 80,66 135,101 107,70 249,142 423,207 173,65 377,124 608,167 231,43 489,70 769,72 h 6 l 5,-2 8,-4 c 2,-2 5,-3 8,-6 3,-2 6,-4 10,-6 l 12,-9 c 9,-6 19,-13 30,-22 11,-8 23,-17 37,-28 27,-20 58,-45 93,-73 35,-28 74,-59 116,-93 169,-136 385,-315 600,-497 215,-181 430,-366 593,-512 41,-37 79,-71 113,-103 34,-31 64,-59 89,-84 13,-13 24,-24 34,-35 11,-11 20,-20 28,-29 8,-9 14,-17 19,-23 3,-4 5,-8 7,-10 2,-4 4,-8 6,-11 0,-2 1,-5 2,-8 1,-3 2,-5 3,-9 1,-6 2,-13 3,-22 2,-8 3,-17 4,-28 1,-11 2,-22 3,-35 2,-25 4,-55 7,-89 1,-34 3,-72 5,-113 8,-166 14,-391 19,-648 10,-516 16,-1164 16,-1743 0,-389 -3,-747 -8,-1012 -1,-66 -2,-127 -4,-181 -1,-53 -3,-100 -5,-139 -1,-20 -2,-38 -3,-53 -1,-16 -2,-30 -3,-41 -1,-6 -1,-11 -2,-16 -1,-5 -1,-10 -2,-13 -1,-4 -1,-8 -2,-11 -1,-2 -1,-4 -2,-5 -1,-3 -2,-5 -3,-6 z m -37,21 12,-12 z m -6,9 c 1,3 1,7 2,11 0,4 1,9 1,15 1,11 3,24 4,39 0,15 1,33 2,52 2,39 4,86 6,139 1,53 2,114 4,180 5,264 7,622 7,1011 0,578 -5,1227 -15,1742 -6,257 -12,481 -19,646 -2,42 -4,79 -6,113 -2,33 -4,63 -6,88 -1,12 -2,24 -4,34 0,10 -2,18 -3,26 -1,7 -2,14 -3,18 0,3 -1,4 -1,6 0,1 -1,2 -1,2 0,1 -1,2 -2,4 -1,1 -3,4 -4,6 -5,6 -10,13 -17,21 -7,7 -16,17 -26,27 l -34,34 c -25,24 -54,52 -88,83 -33,31 -71,66 -112,102 -163,146 -377,330 -592,512 -215,181 -431,360 -598,495 -42,34 -81,65 -116,93 -35,28 -66,52 -93,73 -13,10 -26,20 -37,28 -10,8 -20,15 -28,21 -4,3 -8,6 -12,8 -3,2 -6,4 -8,6 -2,1 -4,2 -5,3 -276,-2 -528,-29 -755,-71 -228,-42 -429,-100 -600,-164 -169,-64 -308,-134 -413,-202 -51,-33 -94,-66 -128,-97 -17,-15 -31,-30 -43,-44 -10,-12 -19,-23 -26,-34 v -4 c -1,-3 -1,-7 -1,-11 -1,-8 -2,-18 -3,-28 -2,-23 -3,-51 -5,-84 -1,-33 -2,-71 -3,-115 -1,-42 -2,-90 -3,-142 -3,-208 -5,-482 -5,-790 0,-662 7,-1481 18,-2143 6,-330 12,-622 19,-834 2,-53 4,-101 6,-144 2,-42 3,-79 5,-109 1,-16 2,-30 3,-42 1,-12 2,-22 3,-31 0,-4 1,-8 1,-11 1,-4 1,-6 2,-9 v -2 c 0,-1 1,-1 2,-2 2,-1 4,-3 7,-5 4,-1 7,-4 11,-6 9,-5 19,-10 31,-16 12,-6 26,-12 41,-19 31,-14 67,-29 109,-47 42,-17 89,-37 140,-57 205,-82 475,-184 746,-284 271,-101 543,-200 752,-274 52,-19 101,-36 144,-51 43,-16 82,-29 114,-40 17,-6 31,-11 44,-16 13,-4 25,-8 35,-11 4,-2 9,-3 13,-4 4,-2 7,-3 10,-4 3,-1 5,-1 8,-2 l 3,-1 -2,-8 1,8 h 1 4 7 c 2,0 5,0 8,1 7,0 14,1 23,2 17,1 39,4 64,7 50,6 114,16 187,27 147,23 329,55 509,89 180,35 357,72 492,106 34,9 65,17 92,25 28,8 53,15 73,23 10,3 20,7 28,10 7,3 15,6 20,9 5,3 10,5 13,8 0,0 1,0 1,1 0,1 1,3 1,4 z M 4075,8017 c 1,0 1,-1 2,-1 h 6 v 14 l -8,-13 8,13 v 11 l -10,-23 c 0,0 1,-1 2,-1 z M 2110,7400 c 1,1 1,3 2,4 1,1 1,3 1,4 l -25,4 21,-11 1,-1 -1,1 1,-1 h 2 z m 39,-4498 v 3 c -1,0 -1,1 -2,1 l -5,-6 -17,-4 17,4 -2,-1 4,2 z m -7,-2 2,1 z m -16,-8 14,7 z m 14,7 -10,-11 z m 2217,-841 -2,-17 z m -4,-17 4,17 v 1 z"
528 style="stroke-width:2.42556" />
529 </g>
530 <g
531 id="g22-8-9"
532 style="fill:#ffffff;fill-opacity:0.54118;stroke:#ffffff;stroke-width:2.42556;stroke-opacity:0.54118">
533 <path
534 id="path24-1-0"
535 inkscape:connector-curvature="0"
536 d="m 5822,2442 -52,22 -52,23 -52,23 -53,25 -53,25 -53,26 -53,26 -54,27 -54,27 -54,28 -55,28 -54,29 -55,29 -55,29 -111,60 -112,60 -112,60 -113,61 -114,60 -114,60 -114,59 -57,29 -57,29 -58,28 -57,28 -27,-6 -28,-7 -56,-13 -58,-14 -59,-13 -60,-14 -61,-14 -61,-14 -63,-14 -62,-14 -63,-15 -127,-28 -127,-28 -64,-14 -63,-14 -62,-13 -62,-13 -61,-13 -60,-13 -60,-13 -58,-12 -57,-12 -28,-5 -28,-6 -27,-5 -27,-6 -27,-5 -26,-5 -26,-5 -25,-6 -25,-4 -24,-5 -24,-5 -24,-4 -23,-4 -22,-5 -22,-4 -21,-3 -21,-4 -20,-4 52,16 52,16 53,16 54,15 55,16 55,15 57,16 56,15 57,16 58,15 116,31 117,30 118,31 118,31 117,30 116,31 58,15 57,16 57,15 56,16 55,15 55,16 54,15 53,16 52,16 52,16 1,60 2,61 1,61 1,63 1,64 2,64 1,65 1,66 1,67 1,67 1,68 v 69 l 1,69 1,70 1,70 v 71 l 1,71 v 72 l 1,72 1,73 1,146 1,147 v 149 l 1,149 2,299 1,300 1,149 1,148 1,147 1,146 1,73 v 72 l 1,72 1,71 v 71 l 1,71 1,69 1,70 v 68 l 1,68 1,67 1,67 1,66 1,65 1,65 2,63 1,63 1,62 2,61 1,60 1,-61 1,-61 v -63 l 1,-63 1,-64 1,-65 1,-66 1,-67 1,-67 1,-68 1,-69 2,-69 1,-70 1,-71 1,-71 1,-72 1,-72 2,-73 1,-73 1,-73 3,-148 3,-149 2,-151 3,-151 6,-303 5,-303 3,-151 3,-150 2,-149 3,-149 1,-73 2,-73 1,-73 1,-72 1,-71 1,-72 1,-70 2,-70 1,-70 1,-68 1,-68 1,-68 1,-66 1,-66 1,-65 1,-64 1,-64 v -62 l 1,-62 1,-60 110,-59 109,-59 109,-57 109,-58 108,-57 107,-58 107,-57 107,-58 105,-58 105,-58 104,-60 103,-60 51,-30 50,-31 51,-31 50,-31 50,-31 50,-32 49,-32 z"
537 style="stroke-width:2.42556" />
538 </g>
539 <g
540 id="g28-1-8"
541 style="fill:none;stroke-width:2.42556">
542 <path
543 id="path30-7-3"
544 inkscape:connector-curvature="0"
545 d="m 5822,2442 c -549,232 -1156,606 -1768,901 -580,-138 -1417,-322 -1839,-396 543,169 1257,327 1800,496 32,1271 16,3196 48,4467 16,-1282 59,-3238 75,-4519 586,-317 1161,-601 1684,-949 z"
546 style="stroke-width:2.42556" />
547 </g>
548 <g
549 id="g32-7-8"
550 style="fill:#000000;fill-opacity:0.16078;stroke:#ffffff;stroke-width:2.42556;stroke-opacity:0.16078">
551 <path
552 id="path34-1-0"
553 inkscape:connector-curvature="0"
554 d="m 2420,6628 10,14 10,13 11,13 12,13 12,12 12,12 14,12 13,12 14,12 15,11 15,11 16,11 15,11 17,10 16,10 17,11 18,9 18,10 18,9 18,8 19,9 19,8 19,8 19,8 40,15 40,14 41,12 41,11 42,10 41,9 42,8 41,6 41,6 41,3 21,2 20,1 19,1 h 20 20 19 l 19,-1 19,-1 18,-1 19,-1 17,-2 18,-3 17,-2 17,-3 17,-4 16,-4 15,-4 15,-4 15,-5 15,-5 -2,-1 h -1 l -5,-2 -6,-1 -7,-2 -8,-2 -10,-3 -10,-3 -12,-3 -13,-4 -14,-3 -15,-4 -16,-5 -16,-4 -18,-5 -18,-5 -19,-5 -20,-6 -20,-5 -21,-6 -22,-6 -22,-6 -22,-6 -23,-7 -24,-6 -48,-13 -49,-14 -50,-14 -50,-13 -50,-15 -50,-13 -49,-14 -49,-13 -23,-7 -24,-6 -23,-7 -22,-6 -22,-6 -21,-6 -21,-6 -20,-5 -19,-6 -19,-5 -18,-5 -17,-5 -16,-4 -15,-5 -15,-4 -13,-4 -12,-3 -12,-3 -10,-3 -9,-3 -7,-2 -7,-2 -5,-2 h -2 z"
555 style="stroke-width:2.42556" />
556 </g>
557 <g
558 id="g38-5-0"
559 style="fill:none;stroke-width:2.42556">
560 <path
561 id="path40-7-9"
562 inkscape:connector-curvature="0"
563 d="m 2420,6628 c 201,289 833,431 1133,315 -53,-14 -1066,-293 -1133,-315 z"
564 style="stroke-width:2.42556" />
565 </g>
566 <g
567 id="g42-6-1"
568 style="fill:#ffffff;fill-opacity:0.38824;stroke:#ffffff;stroke-width:2.42556;stroke-opacity:0.38824">
569 <path
570 id="path44-7-9"
571 inkscape:connector-curvature="0"
572 d="m 3454,6093 -936,-361 -9,4 -8,4 -8,4 -6,5 -6,6 -6,6 -5,7 -5,6 -4,7 -4,7 -3,7 -3,8 -3,8 -2,7 -3,15 -2,15 -2,14 v 6 7 5 6 5 4 4 l 1,4 v 2 2 1 1 l 146,51 1,1 1,1 1,1 1,2 2,2 1,3 3,3 2,3 3,4 3,4 3,4 4,5 4,4 4,6 5,4 10,12 10,11 13,12 13,12 14,13 15,12 17,13 17,12 19,12 19,11 21,11 22,10 11,4 11,5 12,4 12,4 13,3 12,3 13,3 13,3 13,2 13,1 14,2 14,1 h 14 15 15 l 15,-1 15,-2 15,-2 16,-2 16,-3 16,-4 16,-4 17,-5 17,-6 h 1 l 2,1 h 3 l 6,1 6,1 7,1 8,1 9,1 10,1 11,1 12,1 12,1 h 12 l 13,1 h 26 l 14,-1 13,-1 14,-1 13,-2 13,-2 12,-3 12,-3 12,-3 10,-5 11,-5 9,-6 8,-6 8,-8 3,-4 3,-4 3,-4 2,-4 2,-5 z"
573 style="stroke-width:2.42556" />
574 </g>
575 <g
576 id="g48-57-2"
577 style="fill:none;stroke-width:2.42556">
578 <path
579 id="path50-0-5"
580 inkscape:connector-curvature="0"
581 d="m 3454,6093 -936,-361 c -97,34 -78,177 -78,177 l 146,51 c 0,0 204,319 566,194 0,0 269,48 302,-61 z"
582 style="stroke-width:2.42556" />
583 </g>
584 <g
585 id="g52-5-4"
586 style="fill:#606060;stroke-width:2.42556">
587 <path
588 id="path54-7-4"
589 inkscape:connector-curvature="0"
590 d="m 3446,5971 c -311,-81 -622,-161 -933,-242 -12,44 -13,107 6,140 47,23 142,41 189,64 136,131 255,142 472,124 84,17 168,31 251,48 26,-51 33,-72 15,-134 z"
591 style="stroke-width:2.42556" />
592 </g>
593 <g
594 id="g56-7-9"
595 style="fill:none;stroke-width:2.42556">
596 <path
597 id="path58-8-9"
598 inkscape:connector-curvature="0"
599 d="m 3446,5971 c -311,-81 -622,-161 -933,-242 -12,44 -13,107 6,140 47,23 142,41 189,64 136,131 255,142 472,124 84,17 168,31 251,48 26,-51 33,-72 15,-134 z"
600 style="stroke-width:2.42556" />
601 </g>
602 <g
603 id="g60-5-3"
604 style="fill:#ffffff;fill-opacity:0.4;stroke:#ffffff;stroke-width:2.42556;stroke-opacity:0.4">
605 <path
606 id="path62-2-6"
607 inkscape:connector-curvature="0"
608 d="m 5856,2414 -1813,1017 7,4549 1775,-1494 z"
609 style="stroke-width:2.42556" />
610 </g>
611 <g
612 id="g66-2-5"
613 style="fill:none;stroke-width:2.42556">
614 <path
615 id="path68-9-0"
616 inkscape:connector-curvature="0"
617 d="m 5856,2414 -1813,1017 7,4549 1775,-1494 z"
618 style="stroke-width:2.42556" />
619 </g>
620 <g
621 id="g70-9-2"
622 style="fill:#000000;fill-opacity:0.16078;stroke:#ffffff;stroke-width:2.42556;stroke-opacity:0.16078">
623 <path
624 id="path72-9-9"
625 inkscape:connector-curvature="0"
626 d="m 2525,6916 10,13 11,12 10,13 11,11 11,12 11,11 12,11 12,10 12,10 12,10 13,10 12,9 13,9 13,8 27,17 28,15 28,14 28,13 29,11 29,11 30,9 30,8 29,8 30,6 30,5 30,4 30,3 30,2 29,2 h 29 l 29,-1 27,-2 28,-2 27,-3 26,-5 25,-5 24,-6 24,-6 22,-8 -2,-1 h -4 l -4,-2 -5,-1 -6,-2 -8,-2 -8,-2 -9,-2 -10,-3 -10,-3 -11,-3 -12,-3 -13,-4 -13,-3 -14,-4 -15,-4 -15,-4 -15,-5 -16,-4 -16,-5 -17,-4 -18,-5 -35,-10 -36,-10 -38,-10 -38,-10 -38,-11 -76,-21 -37,-10 -37,-11 -36,-10 -17,-4 -17,-5 -17,-5 -16,-4 -16,-5 -15,-4 -15,-4 -14,-4 -14,-4 -13,-4 -12,-3 -11,-3 -12,-3 -10,-3 -9,-3 -8,-2 -8,-3 -7,-1 -6,-2 -5,-2 -4,-1 z"
627 style="stroke-width:2.42556" />
628 </g>
629 <g
630 id="g76-2-3"
631 style="fill:none;stroke-width:2.42556">
632 <path
633 id="path78-7-5"
634 inkscape:connector-curvature="0"
635 d="m 2525,6916 c 209,276 627,323 861,239 -39,-10 -810,-222 -861,-239 z"
636 style="stroke-width:2.42556" />
637 </g>
638 <g
639 id="g80-6-1"
640 style="fill:#000000;fill-opacity:0.16078;stroke:#ffffff;stroke-width:2.42556;stroke-opacity:0.16078">
641 <path
642 id="path82-0-7"
643 inkscape:connector-curvature="0"
644 d="m 2680,7199 12,15 12,14 13,14 14,12 14,13 14,11 15,11 16,11 15,9 17,9 16,9 17,7 18,7 17,7 18,5 18,5 18,5 19,3 18,4 19,2 18,2 19,1 h 19 19 l 18,-1 19,-2 18,-2 19,-3 18,-4 18,-4 18,-5 17,-6 h -1 l -2,-1 h -3 l -4,-1 -3,-1 -5,-2 -5,-1 -6,-2 -6,-1 -6,-2 -7,-2 -8,-2 -8,-2 -8,-3 -9,-2 -9,-2 -19,-6 -20,-5 -22,-6 -22,-6 -23,-6 -23,-7 -48,-13 -48,-13 -23,-7 -23,-6 -23,-6 -21,-6 -21,-6 -19,-6 -9,-2 -9,-3 -9,-2 -8,-2 -8,-2 -7,-2 -7,-2 -6,-2 -6,-2 -5,-2 -5,-1 -5,-1 -3,-1 -3,-1 -3,-1 z"
645 style="stroke-width:2.42556" />
646 </g>
647 <g
648 id="g86-0-3"
649 style="fill:none;stroke-width:2.42556">
650 <path
651 id="path88-3-1"
652 inkscape:connector-curvature="0"
653 d="m 2680,7199 c 121,163 355,213 540,149 -25,-6 -507,-139 -540,-149 z"
654 style="stroke-width:2.42556" />
655 </g>
656 <g
657 id="g90-5-4"
658 style="fill:#fcfcfc;fill-opacity:0.43922;stroke:#ffffff;stroke-width:2.42556;stroke-opacity:0.43922">
659 <path
660 id="path92-9-6"
661 inkscape:connector-curvature="0"
662 d="m 2356,3259 -92,13 -17,2173 1425,399 35,-116 -1369,-365 z"
663 style="stroke-width:2.42556" />
664 </g>
665 <g
666 id="g96-7-4"
667 style="fill:none;stroke-width:2.42556">
668 <path
669 id="path98-7-2"
670 inkscape:connector-curvature="0"
671 d="m 2356,3259 -92,13 -17,2173 1425,399 35,-116 -1369,-365 z"
672 style="stroke-width:2.42556" />
673 </g>
674 <g
675 id="g100-1-2"
676 style="fill:#000000;fill-opacity:0.23137;stroke:#ffffff;stroke-width:2.42556;stroke-opacity:0.23137">
677 <path
678 id="path102-64-6"
679 inkscape:connector-curvature="0"
680 d="m 3700,4065 -2,61 -1340,-386 z"
681 style="stroke-width:2.42556" />
682 </g>
683 <g
684 id="g106-1-1"
685 style="fill:#000000;fill-opacity:0.23137;stroke:#ffffff;stroke-width:2.42556;stroke-opacity:0.23137">
686 <path
687 id="path108-3-2"
688 inkscape:connector-curvature="0"
689 d="m 3720,4507 -3,61 -1339,-386 z"
690 style="stroke-width:2.42556" />
691 </g>
692 <g
693 id="g112-9-8"
694 style="fill:#000000;fill-opacity:0.23137;stroke:#ffffff;stroke-width:2.42556;stroke-opacity:0.23137">
695 <path
696 id="path114-09-9"
697 inkscape:connector-curvature="0"
698 d="m 3700,4916 -2,61 -1340,-386 z"
699 style="stroke-width:2.42556" />
700 </g>
701 <g
702 id="g118-8-8"
703 style="fill:#000000;fill-opacity:0.23137;stroke:#ffffff;stroke-width:2.42556;stroke-opacity:0.23137">
704 <path
705 id="path120-3-8"
706 inkscape:connector-curvature="0"
707 d="m 3700,5318 -2,61 -1340,-387 z"
708 style="stroke-width:2.42556" />
709 </g>
710 <g
711 id="g124-5-6"
712 style="fill:#9e9e9e;stroke-width:2.42556">
713 <path
714 id="path126-3-8"
715 inkscape:connector-curvature="0"
716 d="m 2361,3309 1332,333 -11,2197 h 11 11 l 11,-2205 v -9 l -8,-2 -1341,-335 -2,11 z m 1340,335 -8,-2 v -8 h 11 z"
717 style="stroke-width:2.42556" />
718 </g>
719 </g>
720 </g>
721 </g>
722 <g
723 id="g16724-3"
724 transform="matrix(0.52218647,0,0,0.42933357,-400.52138,1028.8214)"
725 style="stroke-width:2.42556">
726 <path
727 id="path5488-8"
728 d="m 1618.4,-890.85 v 126.36 h 0.5249 c -0.3385,1.0131 -0.5249,1.975 -0.5249,3.0182 0,15.228 36.989,27.557 82.672,27.557 45.683,0 82.672,-12.33 82.672,-27.557 0,-1.0447 -0.1856,-2.0037 -0.5249,-3.0182 h 0.5249 v -126.36 h -165.34 z"
729 sodipodi:nodetypes="cccssscccc"
730 style="fill:url(#linearGradient11801);stroke-width:2.42556"
731 inkscape:connector-curvature="0" />
732 <ellipse
733 id="path5460-3"
734 style="fill:url(#linearGradient11803);stroke-width:2.42556"
735 transform="matrix(4.9627,0,0,4.9627,278.63,-3481.3)"
736 cx="286.6308"
737 cy="521.77954"
738 rx="16.667517"
739 ry="5.5558391" />
740 <path
741 id="path6026-3"
742 d="m 1618.3,-800.18 c 0.6187,15.05 37.507,27.164 82.804,27.164 45.168,0 81.851,-12.042 82.672,-27.033 -14.494,12.328 -46.02,20.865 -82.672,20.865 -36.727,0 -68.35,-8.6271 -82.804,-20.996 z"
743 style="fill:#3b5d8b;stroke-width:2.42556"
744 inkscape:connector-curvature="0" />
745 <path
746 id="path6030-3"
747 d="m 1618.3,-891.51 c 0.6187,15.05 37.507,27.164 82.804,27.164 45.168,0 81.851,-12.042 82.672,-27.033 -0.9058,0.77052 -1.8509,1.4911 -2.8869,2.2308 -0.038,0.0491 -0.091,0.0823 -0.131,0.13101 -9.6253,11.663 -41.587,20.209 -79.654,20.209 -38.306,0 -70.487,-8.6955 -79.917,-20.471 -0.1046,-0.0752 -0.1596,-0.18729 -0.2625,-0.26245 -0.9185,-0.67058 -1.8123,-1.2733 -2.6245,-1.9684 z"
748 style="fill:url(#linearGradient11805);stroke-width:2.42556"
749 inkscape:connector-curvature="0" />
750 <path
751 id="path6022-8"
752 style="fill:#3b5d8b;stroke-width:2.42556"
753 inkscape:connector-curvature="0"
754 d="m 1618.3,-844.36 c 0.6187,15.05 37.507,27.164 82.804,27.164 45.168,0 81.851,-12.042 82.672,-27.033 -14.494,12.328 -46.02,20.865 -82.672,20.865 -36.727,0 -68.35,-8.6271 -82.804,-20.996 z" />
755 <path
756 id="path6043-0"
757 d="m 1618.3,-844.36 c 0.6187,15.05 37.507,27.164 82.804,27.164 45.168,0 81.851,-12.042 82.672,-27.033 -0.2087,0.17721 -0.4427,0.3519 -0.6561,0.52491 -5.2161,13.55 -39.937,24.014 -82.016,24.014 -42.466,0 -77.55,-10.545 -82.279,-24.277 -0.1684,-0.13312 -0.3624,-0.2549 -0.5249,-0.39347 z"
758 style="fill:url(#linearGradient11807);stroke-width:2.42556"
759 inkscape:connector-curvature="0" />
760 <path
761 id="path6054-4"
762 style="fill:url(#linearGradient11809);stroke-width:2.42556"
763 inkscape:connector-curvature="0"
764 d="m 1618.3,-800.18 c 0.6187,15.05 37.507,27.164 82.804,27.164 45.168,0 81.851,-12.042 82.672,-27.033 -0.2087,0.17721 -0.4427,0.3519 -0.6561,0.52491 -5.2161,13.55 -39.937,24.014 -82.016,24.014 -42.466,0 -77.55,-10.545 -82.279,-24.277 -0.1684,-0.13312 -0.3624,-0.2549 -0.5249,-0.39347 z" />
765 <path
766 id="path6060-7"
767 d="m 1618.8,-754.64 c 4.7284,13.732 39.813,24.277 82.279,24.277 42.079,0 76.8,-10.464 82.016,-24.014 -14.766,12.043 -45.892,20.34 -82.016,20.34 -36.314,0 -67.608,-8.4562 -82.279,-20.602 z"
768 style="fill:#3b5d8b;stroke-width:2.42556"
769 inkscape:connector-curvature="0" />
770 </g>
771 </g>
772 <text
773 xml:space="preserve"
774 style="font-weight:bold;font-size:13.3333px;line-height:125%;font-family:'Nimbus Roman';-inkscape-font-specification:'Nimbus Roman, Bold';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
775 x="-15.501629"
776 y="651.78131"
777 id="text1185"><tspan
778 sodipodi:role="line"
779 id="tspan1183"
780 x="-15.501629"
781 y="651.78131"
782 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:13.3333px;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans Bold';stroke:none">source repositories </tspan></text>
783 </g>
784 <text
785 xml:space="preserve"
786 style="font-weight:bold;font-size:42.5884px;line-height:125%;font-family:'Nimbus Roman';-inkscape-font-specification:'Nimbus Roman, Bold';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
787 x="142.22464"
788 y="565.10297"
789 id="text907"><tspan
790 sodipodi:role="line"
791 id="tspan905"
792 x="142.22464"
793 y="565.10297" /></text>
794 <text
795 xml:space="preserve"
796 style="font-weight:bold;font-size:42.5884px;line-height:125%;font-family:'Nimbus Roman';-inkscape-font-specification:'Nimbus Roman, Bold';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
797 x="98.363503"
798 y="637.8432"
799 id="text911"><tspan
800 sodipodi:role="line"
801 id="tspan909"
802 x="98.363503"
803 y="637.8432" /></text>
804 <text
805 xml:space="preserve"
806 style="font-weight:bold;font-size:42.5884px;line-height:125%;font-family:'Nimbus Roman';-inkscape-font-specification:'Nimbus Roman, Bold';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
807 x="-59.575905"
808 y="580.05695"
809 id="text915"><tspan
810 sodipodi:role="line"
811 id="tspan913"
812 x="-59.575905"
813 y="580.05695" /></text>
814 <g
815 id="g1153"
816 transform="translate(-10.813715,57.621063)">
817 <rect
818 style="opacity:1;fill:#deddda;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:2;stroke-opacity:1"
819 id="rect917"
820 width="125.52824"
821 height="69.017166"
822 x="196.65169"
823 y="503.49741"
824 ry="3.4599047" />
825 <text
826 xml:space="preserve"
827 style="font-weight:bold;font-size:13.3333px;line-height:125%;font-family:'Nimbus Roman';-inkscape-font-specification:'Nimbus Roman, Bold';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
828 x="259.14236"
829 y="523.42725"
830 id="text1185-3"><tspan
831 sodipodi:role="line"
832 id="tspan1183-8"
833 x="259.14236"
834 y="523.42725"
835 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:13.3333px;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans Bold';text-align:center;text-anchor:middle;stroke:none">project</tspan><tspan
836 sodipodi:role="line"
837 x="259.14236"
838 y="541.42395"
839 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:13.3333px;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans Bold';text-align:center;text-anchor:middle;stroke:none"
840 id="tspan959">&quot;master&quot;</tspan><tspan
841 sodipodi:role="line"
842 x="260.99133"
843 y="559.42059"
844 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:13.3333px;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans Bold';stroke:none"
845 id="tspan957"><tspan
846 style="text-align:center;text-anchor:middle"
847 id="tspan961">git repository</tspan> </tspan></text>
848 </g>
849 <g
850 id="g1125"
851 transform="matrix(0.22552185,0,0,0.22090333,92.716864,465.68288)"
852 style="stroke:none;stroke-width:4.48028">
853 <rect
854 style="opacity:1;fill:#333333;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:8.96054;stroke-opacity:1"
855 id="rect1061"
856 width="452.00439"
857 height="192.0562"
858 x="11.609296"
859 y="276.44562"
860 ry="4.0176301" />
861 <g
862 id="g1109"
863 transform="translate(-2.7615661,-1.7576335)"
864 style="stroke:none;stroke-width:4.48028">
865 <path
866 id="path14"
867 class="st0"
868 d="m 439.74452,358.11274 c 0,4.22 -3.41,7.64 -7.64,7.64 -4.22,0 -7.63,-3.42 -7.63,-7.64 0,-4.22 3.41,-7.64 7.63,-7.64 4.23,0 7.64,3.42 7.64,7.64 v 0"
869 style="fill:#4a97d2;fill-opacity:1;stroke:none;stroke-width:0.448028;stroke-opacity:1" />
870 <path
871 id="path16"
872 class="st1"
873 d="m 114.56452,324.94274 -11.13,-6.3 -22.409996,45.41 -23.9,-45.41 -11.27,6.3 28.41,53.38 c -0.21,0.51 -0.86,1.9 -1.95,4.22 -1.11,2.21 -2.25,4.41 -3.46,6.62 -2.11,3.81 -4.26,6.91 -6.46,9.32 -2.21,2.51 -4.46,4.51 -6.78,6.02 -2.3,1.51 -4.7,2.65 -7.21,3.46 -2.41,0.8 -4.87,1.45 -7.38,1.95 l 5.12,10.68 c 1.6,-0.21 3.75,-0.71 6.46,-1.51 2.81,-0.7 5.86,-2.06 9.17,-4.06 3.3,-2 6.67,-4.86 10.07,-8.57 3.52,-3.71 6.78,-8.62 9.78,-14.73 l 32.939996,-66.78"
874 style="fill:#ffffff;stroke:none;stroke-width:0.448028;stroke-opacity:1" />
875 <path
876 id="path18"
877 class="st1"
878 d="m 175.39452,358.18274 c 0,3.51 -0.6,6.76 -1.81,9.78 -1.21,3 -2.86,5.62 -4.95,7.81 -2.01,2.11 -4.41,3.81 -7.22,5.12 -2.71,1.19 -5.67,1.8 -8.87,1.8 -3.21,0 -6.22,-0.6 -9.02,-1.8 -2.81,-1.31 -5.27,-3.01 -7.38,-5.12 -2,-2.19 -3.6,-4.81 -4.81,-7.81 -1.21,-3.01 -1.81,-6.27 -1.81,-9.78 0,-3.51 0.6,-6.76 1.81,-9.77 1.21,-3 2.81,-5.61 4.81,-7.82 2.11,-2.21 4.57,-3.92 7.38,-5.11 2.8,-1.32 5.81,-1.97 9.02,-1.97 3.21,0 6.16,0.65 8.87,1.97 2.81,1.19 5.21,2.9 7.22,5.11 2.1,2.21 3.75,4.81 4.95,7.82 1.2,3.01 1.81,6.26 1.81,9.77 m 13.98,0 c 0,-5.21 -0.95,-10.08 -2.86,-14.59 -1.81,-4.51 -4.36,-8.42 -7.67,-11.73 -3.32,-3.3 -7.22,-5.86 -11.73,-7.67 -4.51,-1.9 -9.38,-2.86 -14.59,-2.86 -5.21,0 -10.08,0.95 -14.59,2.86 -4.51,1.81 -8.43,4.36 -11.73,7.67 -3.3,3.31 -5.92,7.22 -7.82,11.73 -1.9,4.51 -2.86,9.38 -2.86,14.59 0,5.21 0.95,10.08 2.86,14.59 1.9,4.41 4.52,8.27 7.82,11.57 3.3,3.32 7.22,5.92 11.73,7.82 4.51,1.81 9.38,2.71 14.59,2.71 5.21,0 10.08,-0.9 14.59,-2.71 4.51,-1.91 8.41,-4.51 11.73,-7.82 3.3,-3.3 5.86,-7.16 7.67,-11.57 1.91,-4.51 2.86,-9.38 2.86,-14.59"
879 style="fill:#ffffff;stroke:none;stroke-width:0.448028;stroke-opacity:1" />
880 <path
881 id="path20"
882 class="st1"
883 d="m 373.22452,358.18274 c 0,3.51 -0.6,6.76 -1.81,9.78 -1.21,3 -2.86,5.62 -4.97,7.81 -2,2.11 -4.4,3.81 -7.21,5.12 -2.71,1.19 -5.67,1.8 -8.87,1.8 -3.21,0 -6.22,-0.6 -9.03,-1.8 -2.8,-1.31 -5.26,-3.01 -7.37,-5.12 -2,-2.19 -3.61,-4.81 -4.81,-7.81 -1.21,-3.01 -1.81,-6.27 -1.81,-9.78 0,-3.51 0.6,-6.76 1.81,-9.77 1.21,-3 2.81,-5.61 4.81,-7.82 2.11,-2.21 4.57,-3.92 7.37,-5.11 2.81,-1.32 5.82,-1.97 9.03,-1.97 3.21,0 6.16,0.65 8.87,1.97 2.81,1.19 5.21,2.9 7.21,5.11 2.11,2.21 3.76,4.81 4.97,7.82 1.21,3.01 1.81,6.26 1.81,9.77 m 13.98,0 c 0,-5.21 -0.95,-10.08 -2.86,-14.59 -1.81,-4.51 -4.36,-8.42 -7.67,-11.73 -3.32,-3.3 -7.22,-5.86 -11.73,-7.67 -4.51,-1.9 -9.38,-2.86 -14.59,-2.86 -5.22,0 -10.08,0.95 -14.59,2.86 -4.51,1.81 -8.43,4.36 -11.73,7.67 -3.3,3.31 -5.92,7.22 -7.82,11.73 -1.9,4.51 -2.86,9.38 -2.86,14.59 0,5.21 0.95,10.08 2.86,14.59 1.9,4.41 4.52,8.27 7.82,11.57 3.3,3.32 7.22,5.92 11.73,7.82 4.51,1.81 9.37,2.71 14.59,2.71 5.21,0 10.08,-0.9 14.59,-2.71 4.51,-1.91 8.41,-4.51 11.73,-7.82 3.3,-3.3 5.86,-7.16 7.67,-11.57 1.91,-4.51 2.86,-9.38 2.86,-14.59"
884 style="fill:#ffffff;stroke:none;stroke-width:0.448028;stroke-opacity:1" />
885 <path
886 id="path22"
887 class="st1"
888 d="m 288.05452,298.59274 -13.39,7.52 v 16.45 h -36.21 c -26.15,0 -41.9,12.74 -41.9,35.95 0,36.04 37.55,42.84 64.25,29.96 l -5.63,-10.92 c -21.13,9.23 -44.53,5.3 -44.53,-19.28 0,-15.86 8.26,-24.54 27.49,-24.54 h 36.54 v 43.82 c 0,19.37 22.19,19.81 35.95,11.86 l -5.29,-10.45 c -8.85,4.48 -17.26,5.06 -17.26,-3.53 v -41.7 h 18.32 v -11.17 h -18.32 l -0.02,-23.97 v 0"
889 style="fill:#ffffff;stroke:none;stroke-width:0.448028;stroke-opacity:1" />
890 <path
891 id="path24"
892 class="st1"
893 d="m 136.79452,428.30274 h 3.35 c 1.69,-0.01 3.34,1.19 3.34,2.9 0,2.87 -3.23,3.3 -3.23,3.3 l -3.46,0.02 z m -4.84,-4.1 v 25.3 h 4.83 l 0.06,-10.67 c 8.62,0.54 11.84,-2.46 11.84,-7.75 0,-4.75 -4.26,-6.88 -8.34,-6.88 h -8.39 v 0"
894 style="fill:#ffffff;stroke:none;stroke-width:0.448028;stroke-opacity:1" />
895 <path
896 id="path26"
897 class="st1"
898 d="m 224.38452,436.87274 c 0,1.23 -0.23,2.39 -0.69,3.46 -0.42,1.04 -1.02,1.95 -1.81,2.74 -0.78,0.78 -1.7,1.4 -2.75,1.86 -1.04,0.42 -2.17,0.64 -3.38,0.64 -1.22,0 -2.35,-0.22 -3.39,-0.64 -1.05,-0.46 -1.96,-1.07 -2.75,-1.86 -0.76,-0.78 -1.36,-1.7 -1.81,-2.74 -0.46,-1.07 -0.69,-2.23 -0.69,-3.46 0,-1.23 0.23,-2.37 0.69,-3.42 0.45,-1.06 1.05,-1.99 1.81,-2.77 0.78,-0.78 1.7,-1.39 2.75,-1.82 1.04,-0.45 2.17,-0.67 3.39,-0.67 1.21,0 2.34,0.23 3.38,0.67 1.05,0.43 1.96,1.04 2.75,1.82 0.78,0.78 1.39,1.71 1.81,2.77 0.46,1.05 0.69,2.19 0.69,3.42 m 4.9,0 c 0,-1.81 -0.35,-3.5 -1.06,-5.06 -0.69,-1.59 -1.65,-2.97 -2.89,-4.12 -1.21,-1.17 -2.64,-2.09 -4.3,-2.75 -1.64,-0.69 -3.41,-1.04 -5.3,-1.04 -1.9,0 -3.69,0.35 -5.35,1.04 -1.64,0.66 -3.06,1.58 -4.27,2.75 -1.22,1.16 -2.17,2.53 -2.89,4.12 -0.69,1.57 -1.03,3.25 -1.03,5.06 0,1.83 0.34,3.53 1.03,5.1 0.72,1.57 1.68,2.94 2.89,4.12 1.21,1.17 2.63,2.09 4.27,2.75 1.66,0.66 3.45,1 5.35,1 1.89,0 3.67,-0.34 5.3,-1 1.66,-0.66 3.1,-1.58 4.3,-2.75 1.24,-1.18 2.21,-2.55 2.89,-4.12 0.71,-1.56 1.06,-3.26 1.06,-5.1"
899 style="fill:#ffffff;stroke:none;stroke-width:0.448028;stroke-opacity:1" />
900 <path
901 id="path28"
902 class="st1"
903 d="m 249.02452,424.25274 v 19.18 c 0,0.77 -0.57,1.63 -1.51,1.65 l -1.51,0.06 0.08,4.7 1.41,0.02 c 4.73,0.07 6.36,-4.37 6.36,-6.45 v -19.13"
904 style="fill:#ffffff;stroke:none;stroke-width:0.448028;stroke-opacity:1" />
905 <path
906 id="path30"
907 class="st1"
908 d="m 290.20452,424.19274 h -16.13 v 25.22 h 16.2 l -0.07,-4.06 h -11.28 v -6.58 h 9.44 v -4.06 h -9.44 v -6.38 h 11.21 l 0.07,-4.14"
909 style="fill:#ffffff;stroke:none;stroke-width:0.448028;stroke-opacity:1" />
910 <path
911 id="path32"
912 class="st1"
913 d="m 327.39452,430.24274 c -8.26,-4.53 -16.39,-1.78 -16.39,6.52 0,6.69 6.43,11.84 17,6.31 l 1.53,4.13 c -10.15,5.58 -23.51,1.6 -23.51,-10.44 0,-10.91 11.85,-16.59 23.36,-10.61 l -1.99,4.09"
914 style="fill:#ffffff;stroke:none;stroke-width:0.448028;stroke-opacity:1" />
915 <path
916 id="path34"
917 class="st1"
918 d="m 366.07452,424.19274 0.01,4.13 h -8.05 v 21.16 h -4.85 v -21.15 h -7.73 l 0.11,-4.13 h 20.51"
919 style="fill:#ffffff;stroke:none;stroke-width:0.448028;stroke-opacity:1" />
920 <path
921 id="path36"
922 class="st1"
923 d="m 172.67452,428.30274 h 3.35 c 1.69,-0.01 3.34,1.19 3.34,2.9 0,2.87 -3.23,3.3 -3.23,3.3 l -3.46,0.02 z m -4.82,-4.1 v 25.3 h 4.82 v -10.89 h 3.2 l 5.59,10.89 h 5.5 l -6.67,-12.2 c 2.64,-1.18 4.01,-3.26 4.01,-6.22 0,-4.94 -4.33,-6.88 -9.09,-6.88 h -7.36 v 0"
924 style="fill:#ffffff;stroke:none;stroke-width:0.448028;stroke-opacity:1" />
925 </g>
926 </g>
927 <g
928 id="g1211"
929 transform="translate(26)">
930 <rect
931 style="fill:#ffbe6f;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:2;stroke-opacity:1"
932 id="rect917-2"
933 width="125.52824"
934 height="69.017166"
935 x="400.98758"
936 y="502.18555"
937 ry="3.4599047" />
938 <text
939 xml:space="preserve"
940 style="font-weight:bold;font-size:13.3333px;line-height:125%;font-family:'Nimbus Roman';-inkscape-font-specification:'Nimbus Roman, Bold';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
941 x="463.47824"
942 y="522.11536"
943 id="text1185-3-5"><tspan
944 sodipodi:role="line"
945 id="tspan1183-8-4"
946 x="463.47824"
947 y="522.11536"
948 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:13.3333px;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans Bold';text-align:center;text-anchor:middle;stroke:none">project</tspan><tspan
949 sodipodi:role="line"
950 x="463.47824"
951 y="540.11206"
952 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:13.3333px;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans Bold';text-align:center;text-anchor:middle;stroke:none"
953 id="tspan959-9">&quot;contrib&quot;</tspan><tspan
954 sodipodi:role="line"
955 x="465.32721"
956 y="558.1087"
957 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:13.3333px;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans Bold';stroke:none"
958 id="tspan957-6"><tspan
959 style="text-align:center;text-anchor:middle"
960 id="tspan961-2">git repository</tspan> </tspan></text>
961 </g>
962 <g
963 id="g1211-2"
964 transform="translate(301.39294,0.59191294)">
965 <rect
966 style="fill:#ffbe6f;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:2;stroke-opacity:1"
967 id="rect917-2-7"
968 width="125.52824"
969 height="69.017166"
970 x="400.98758"
971 y="502.18555"
972 ry="3.4599047" />
973 <text
974 xml:space="preserve"
975 style="font-weight:bold;font-size:13.3333px;line-height:125%;font-family:'Nimbus Roman';-inkscape-font-specification:'Nimbus Roman, Bold';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
976 x="463.47824"
977 y="522.11536"
978 id="text1185-3-5-0"><tspan
979 sodipodi:role="line"
980 id="tspan1183-8-4-8"
981 x="463.47824"
982 y="522.11536"
983 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:13.3333px;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans Bold';text-align:center;text-anchor:middle;stroke:none">local</tspan><tspan
984 sodipodi:role="line"
985 x="463.47824"
986 y="540.11206"
987 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:13.3333px;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans Bold';text-align:center;text-anchor:middle;stroke:none"
988 id="tspan959-9-9">development</tspan><tspan
989 sodipodi:role="line"
990 x="465.32721"
991 y="558.1087"
992 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:13.3333px;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans Bold';stroke:none"
993 id="tspan957-6-3"><tspan
994 style="text-align:center;text-anchor:middle"
995 id="tspan961-2-4">git repository</tspan> </tspan></text>
996 </g>
997 <g
998 id="g1315"
999 transform="translate(26,-6.418026)">
1000 <rect
1001 style="fill:#99c1f1;fill-opacity:1;fill-rule:evenodd;stroke:#62a0ea;stroke-width:2;stroke-opacity:1"
1002 id="rect917-2-4"
1003 width="125.52824"
1004 height="69.017166"
1005 x="400.02109"
1006 y="630.14075"
1007 ry="3.4599047" />
1008 <text
1009 xml:space="preserve"
1010 style="font-weight:bold;font-size:13.3333px;line-height:125%;font-family:'Nimbus Roman';-inkscape-font-specification:'Nimbus Roman, Bold';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1011 x="462.51175"
1012 y="650.07056"
1013 id="text1185-3-5-5"><tspan
1014 sodipodi:role="line"
1015 id="tspan1183-8-4-4"
1016 x="462.51175"
1017 y="650.07056"
1018 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:13.3333px;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans Bold';text-align:center;text-anchor:middle;stroke:none">project</tspan><tspan
1019 sodipodi:role="line"
1020 x="462.51175"
1021 y="668.06726"
1022 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:13.3333px;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans Bold';text-align:center;text-anchor:middle;stroke:none"
1023 id="tspan959-9-97">&quot;contrib&quot;</tspan><tspan
1024 sodipodi:role="line"
1025 x="464.36072"
1026 y="686.0639"
1027 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:13.3333px;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans Bold';stroke:none"
1028 id="tspan957-6-5"><tspan
1029 style="text-align:center;text-anchor:middle"
1030 id="tspan961-2-44">git repository</tspan> </tspan></text>
1031 </g>
1032 <g
1033 id="g1315-2"
1034 transform="translate(305.48304,-6.418026)">
1035 <rect
1036 style="fill:#99c1f1;fill-opacity:1;fill-rule:evenodd;stroke:#62a0ea;stroke-width:2;stroke-opacity:1"
1037 id="rect917-2-4-6"
1038 width="125.52824"
1039 height="69.017166"
1040 x="400.02109"
1041 y="630.14075"
1042 ry="3.4599047" />
1043 <text
1044 xml:space="preserve"
1045 style="font-weight:bold;font-size:13.3333px;line-height:125%;font-family:'Nimbus Roman';-inkscape-font-specification:'Nimbus Roman, Bold';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1046 x="462.51175"
1047 y="650.07056"
1048 id="text1185-3-5-5-6"><tspan
1049 sodipodi:role="line"
1050 id="tspan1183-8-4-4-9"
1051 x="462.51175"
1052 y="650.07056"
1053 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:13.3333px;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans Bold';text-align:center;text-anchor:middle;stroke:none">project</tspan><tspan
1054 sodipodi:role="line"
1055 x="462.51175"
1056 y="668.06726"
1057 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:13.3333px;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans Bold';text-align:center;text-anchor:middle;stroke:none"
1058 id="tspan959-9-97-7">development</tspan><tspan
1059 sodipodi:role="line"
1060 x="464.36072"
1061 y="686.0639"
1062 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:13.3333px;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans Bold';stroke:none"
1063 id="tspan957-6-5-4"><tspan
1064 style="text-align:center;text-anchor:middle"
1065 id="tspan961-2-44-8">git repository</tspan> </tspan></text>
1066 </g>
1067 <path
1068 style="fill:#ffa348;fill-rule:evenodd;stroke:#ffa348;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-start:url(#Arrow2Mstart);marker-end:url(#Arrow2Mend)"
1069 d="m 552.51582,536.82903 149.8647,0.32211"
1070 id="path3307"
1071 inkscape:connector-type="polyline"
1072 inkscape:connector-curvature="0"
1073 inkscape:connection-start="#g1211"
1074 inkscape:connection-end="#g1211-2" />
1075 <text
1076 xml:space="preserve"
1077 style="font-weight:bold;font-size:42.5884px;line-height:125%;font-family:'Nimbus Roman';-inkscape-font-specification:'Nimbus Roman, Bold';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1078 x="313.46567"
1079 y="412.9321"
1080 id="text3781"><tspan
1081 sodipodi:role="line"
1082 id="tspan3779"
1083 x="313.46567"
1084 y="412.9321" /></text>
1085 <text
1086 xml:space="preserve"
1087 style="font-weight:bold;font-size:13.3333px;line-height:125%;font-family:'Nimbus Roman';-inkscape-font-specification:'Nimbus Roman, Bold';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1088 x="580.85419"
1089 y="524.23517"
1090 id="text1185-9"><tspan
1091 sodipodi:role="line"
1092 id="tspan1183-1"
1093 x="580.85419"
1094 y="524.23517"
1095 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:13.3333px;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';stroke:none">git pull and push</tspan></text>
1096 <path
1097 style="fill:#62a0ea;fill-opacity:1;fill-rule:evenodd;stroke:#62a0ea;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-start:url(#marker4174);marker-end:url(#marker4286)"
1098 d="M 551.54932,660.2313 H 705.50413"
1099 id="path4056"
1100 inkscape:connector-type="polyline"
1101 inkscape:connector-curvature="0"
1102 inkscape:connection-start="#g1315"
1103 inkscape:connection-end="#g1315-2" />
1104 <text
1105 xml:space="preserve"
1106 style="font-weight:bold;font-size:13.3333px;line-height:125%;font-family:'Nimbus Roman';-inkscape-font-specification:'Nimbus Roman, Bold';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1107 x="580.85419"
1108 y="647.90686"
1109 id="text1185-9-4"><tspan
1110 sodipodi:role="line"
1111 id="tspan1183-1-6"
1112 x="580.85419"
1113 y="647.90686"
1114 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:13.3333px;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';stroke:none">git pull and push</tspan></text>
1115 <path
1116 style="fill:#62a0ea;fill-rule:evenodd;stroke:#62a0ea;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker4414)"
1117 d="M 551.54932,632.30915 702.38052,565.2082"
1118 id="path4404"
1119 inkscape:connector-type="polyline"
1120 inkscape:connector-curvature="0"
1121 inkscape:connection-start="#g1315"
1122 inkscape:connection-end="#g1211-2" />
1123 <path
1124 style="fill:#ffa348;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker4604)"
1125 d="m 552.51582,564.53342 152.98831,67.8586"
1126 id="path4494"
1127 inkscape:connector-type="polyline"
1128 inkscape:connector-curvature="0"
1129 inkscape:connection-start="#g1211"
1130 inkscape:connection-end="#g1315-2" />
1131 <path
1132 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker4712)"
1133 d="M 426.98758,552.03263 311.36621,580.28855"
1134 id="path4702"
1135 inkscape:connector-type="polyline"
1136 inkscape:connector-curvature="0"
1137 inkscape:connection-start="#g1211"
1138 inkscape:connection-end="#g1153" />
1139 <text
1140 xml:space="preserve"
1141 style="font-weight:bold;font-size:13.3333px;line-height:125%;font-family:'Nimbus Roman';-inkscape-font-specification:'Nimbus Roman, Bold';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1142 x="377.95239"
1143 y="595.54547"
1144 id="text1185-9-0"><tspan
1145 sodipodi:role="line"
1146 x="377.95239"
1147 y="595.54547"
1148 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:13.3333px;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:center;text-anchor:middle;stroke:none"
1149 id="tspan4840">git pull from the</tspan><tspan
1150 sodipodi:role="line"
1151 x="377.95239"
1152 y="613.54218"
1153 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:13.3333px;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:center;text-anchor:middle;stroke:none"
1154 id="tspan4844">maintainer</tspan></text>
1155 <path
1156 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker4978)"
1157 d="M 426.02109,643.34906 311.36621,612.50929"
1158 id="path4850"
1159 inkscape:connector-type="polyline"
1160 inkscape:connector-curvature="0"
1161 inkscape:connection-start="#g1315"
1162 inkscape:connection-end="#g1153" />
1163 <path
1164 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:3;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-start:url(#marker5285);marker-end:url(#marker5161)"
1165 d="M 75.034463,595.62705 H 185.83797"
1166 id="path5151"
1167 inkscape:connector-type="polyline"
1168 inkscape:connector-curvature="0" />
1169 <text
1170 xml:space="preserve"
1171 style="font-weight:bold;font-size:13.3333px;line-height:125%;font-family:'Nimbus Roman';-inkscape-font-specification:'Nimbus Roman, Bold';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1172 x="266.03806"
1173 y="439.90387"
1174 id="text1185-9-7"><tspan
1175 sodipodi:role="line"
1176 id="tspan1183-1-2"
1177 x="266.03806"
1178 y="439.90387"
1179 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:13.3333px;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';stroke:none">git pull</tspan></text>
1180 <path
1181 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2.99999;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker5623)"
1182 d="M 250.16567,560.37713 V 455.50595 h 515.77219 l -0.12369,46.24529"
1183 id="path6123"
1184 sodipodi:nodetypes="cccc" />
1185 <path
1186 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2.99999;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker5623-2)"
1187 d="m 250.61744,629.82817 v 107.36644 h 515.77214 v -42.1946"
1188 id="path6123-0"
1189 sodipodi:nodetypes="cccc" />
1190 <text
1191 xml:space="preserve"
1192 style="font-weight:bold;font-size:13.3333px;line-height:125%;font-family:'Nimbus Roman';-inkscape-font-specification:'Nimbus Roman, Bold';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1193 x="266.03806"
1194 y="720.30841"
1195 id="text1185-9-7-7"><tspan
1196 sodipodi:role="line"
1197 id="tspan1183-1-2-6"
1198 x="266.03806"
1199 y="720.30841"
1200 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:13.3333px;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';stroke:none">git pull</tspan></text>
1201 </g>
1202 <style
1203 type="text/css"
1204 id="style1021"> .st0{fill:#4A97D2;} .st1{fill:#333333;} </style>
1205</svg>
diff --git a/documentation/overview-manual/svg/patching.svg b/documentation/overview-manual/svg/patching.svg
new file mode 100644
index 0000000000..5c56b5ac23
--- /dev/null
+++ b/documentation/overview-manual/svg/patching.svg
@@ -0,0 +1,1224 @@
1<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2<svg
3 version="1.1"
4 id="svg2"
5 width="722.07703"
6 height="533.2287"
7 viewBox="0 0 722.07703 533.2286"
8 sodipodi:docname="patching.svg"
9 inkscape:version="1.4 (e7c3feb100, 2024-10-09)"
10 xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
11 xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
12 xmlns="http://www.w3.org/2000/svg"
13 xmlns:svg="http://www.w3.org/2000/svg"
14 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
15 xmlns:cc="http://creativecommons.org/ns#"
16 xmlns:dc="http://purl.org/dc/elements/1.1/">
17 <sodipodi:namedview
18 pagecolor="#ffffff"
19 bordercolor="#666666"
20 borderopacity="1"
21 objecttolerance="10"
22 gridtolerance="10"
23 guidetolerance="10"
24 inkscape:pageopacity="0"
25 inkscape:pageshadow="2"
26 inkscape:window-width="2255"
27 inkscape:window-height="2019"
28 id="namedview4"
29 showgrid="false"
30 inkscape:zoom="1.4472045"
31 inkscape:cx="441.88641"
32 inkscape:cy="475.3993"
33 inkscape:window-x="2271"
34 inkscape:window-y="95"
35 inkscape:window-maximized="0"
36 inkscape:current-layer="g10"
37 inkscape:document-rotation="0"
38 inkscape:snap-perpendicular="true"
39 fit-margin-top="30"
40 lock-margins="true"
41 fit-margin-left="30"
42 fit-margin-right="30"
43 fit-margin-bottom="30"
44 inkscape:pagecheckerboard="0"
45 inkscape:showpageshadow="2"
46 inkscape:deskcolor="#d1d1d1">
47 <inkscape:grid
48 type="xygrid"
49 id="grid1257"
50 originx="69.846748"
51 originy="14.267609"
52 spacingy="1"
53 spacingx="1"
54 units="px" />
55 </sodipodi:namedview>
56 <metadata
57 id="metadata8">
58 <rdf:RDF>
59 <cc:Work
60 rdf:about="">
61 <dc:format>image/svg+xml</dc:format>
62 <dc:type
63 rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
64 </cc:Work>
65 </rdf:RDF>
66 </metadata>
67 <defs
68 id="defs6">
69 <rect
70 x="-345.93011"
71 y="-568.73254"
72 width="776.87695"
73 height="667.43011"
74 id="rect28" />
75 <rect
76 x="23.839064"
77 y="148.04404"
78 width="87.237152"
79 height="79.809036"
80 id="rect2" />
81 <inkscape:path-effect
82 effect="powerstroke"
83 id="path-effect6121"
84 is_visible="true"
85 lpeversion="1"
86 offset_points="0,0.5"
87 sort_points="true"
88 interpolator_type="CubicBezierJohan"
89 interpolator_beta="0.2"
90 start_linecap_type="zerowidth"
91 linejoin_type="extrp_arc"
92 miter_limit="4"
93 scale_width="1"
94 end_linecap_type="zerowidth"
95 not_jump="false"
96 message="" />
97 <marker
98 style="overflow:visible"
99 id="marker5783"
100 refX="0"
101 refY="0"
102 orient="auto"
103 inkscape:stockid="Arrow2Mend"
104 inkscape:isstock="true">
105 <path
106 transform="scale(-0.6)"
107 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
108 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
109 id="path5781" />
110 </marker>
111 <marker
112 style="overflow:visible"
113 id="marker5623"
114 refX="0"
115 refY="0"
116 orient="auto"
117 inkscape:stockid="Arrow2Mend"
118 inkscape:isstock="true">
119 <path
120 transform="scale(-0.6)"
121 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
122 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
123 id="path5621" />
124 </marker>
125 <marker
126 style="overflow:visible"
127 id="marker5487"
128 refX="0"
129 refY="0"
130 orient="auto"
131 inkscape:stockid="Arrow2Mend"
132 inkscape:isstock="true">
133 <path
134 transform="scale(-0.6)"
135 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
136 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
137 id="path5485" />
138 </marker>
139 <marker
140 style="overflow:visible"
141 id="marker5285"
142 refX="0"
143 refY="0"
144 orient="auto"
145 inkscape:stockid="Arrow2Mstart"
146 inkscape:isstock="true">
147 <path
148 transform="scale(0.6)"
149 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
150 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
151 id="path5283" />
152 </marker>
153 <marker
154 style="overflow:visible"
155 id="marker5161"
156 refX="0"
157 refY="0"
158 orient="auto"
159 inkscape:stockid="Arrow2Mend"
160 inkscape:isstock="true">
161 <path
162 transform="scale(-0.6)"
163 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
164 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
165 id="path5159" />
166 </marker>
167 <marker
168 style="overflow:visible"
169 id="marker4860"
170 refX="0"
171 refY="0"
172 orient="auto"
173 inkscape:stockid="Arrow2Mend"
174 inkscape:isstock="true">
175 <path
176 transform="scale(-0.6)"
177 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
178 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
179 id="path4858" />
180 </marker>
181 <marker
182 style="overflow:visible"
183 id="marker4504"
184 refX="0"
185 refY="0"
186 orient="auto"
187 inkscape:stockid="Arrow2Mend"
188 inkscape:isstock="true">
189 <path
190 transform="scale(-0.6)"
191 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
192 style="fill:#ffa348;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
193 id="path4502" />
194 </marker>
195 <marker
196 style="overflow:visible"
197 id="Arrow1Mend"
198 refX="0"
199 refY="0"
200 orient="auto"
201 inkscape:stockid="Arrow1Mend"
202 inkscape:isstock="true">
203 <path
204 transform="matrix(-0.4,0,0,-0.4,-4,0)"
205 style="fill:#62a0ea;fill-opacity:1;fill-rule:evenodd;stroke:#62a0ea;stroke-width:1pt;stroke-opacity:1"
206 d="M 0,0 5,-5 -12.5,0 5,5 Z"
207 id="path3318" />
208 </marker>
209 <marker
210 style="overflow:visible"
211 id="marker4174"
212 refX="0"
213 refY="0"
214 orient="auto"
215 inkscape:stockid="Arrow2Mstart"
216 inkscape:isstock="true">
217 <path
218 transform="scale(0.6)"
219 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
220 style="fill:#62a0ea;fill-opacity:1;fill-rule:evenodd;stroke:#62a0ea;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
221 id="path4172" />
222 </marker>
223 <marker
224 style="overflow:visible"
225 id="Arrow2Mend"
226 refX="0"
227 refY="0"
228 orient="auto"
229 inkscape:stockid="Arrow2Mend"
230 inkscape:isstock="true">
231 <path
232 transform="scale(-0.6)"
233 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
234 style="fill:#ffa348;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
235 id="path3336" />
236 </marker>
237 <marker
238 style="overflow:visible"
239 id="Arrow1Mstart"
240 refX="0"
241 refY="0"
242 orient="auto"
243 inkscape:stockid="Arrow1Mstart"
244 inkscape:isstock="true">
245 <path
246 transform="matrix(0.4,0,0,0.4,4,0)"
247 style="fill:#ff7800;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:1pt;stroke-opacity:1"
248 d="M 0,0 5,-5 -12.5,0 5,5 Z"
249 id="path3315" />
250 </marker>
251 <marker
252 style="overflow:visible"
253 id="Arrow2Lstart"
254 refX="0"
255 refY="0"
256 orient="auto"
257 inkscape:stockid="Arrow2Lstart"
258 inkscape:isstock="true">
259 <path
260 transform="matrix(1.1,0,0,1.1,1.1,0)"
261 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
262 style="fill:#ff7800;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
263 id="path3327" />
264 </marker>
265 <marker
266 style="overflow:visible"
267 id="Arrow1Lstart"
268 refX="0"
269 refY="0"
270 orient="auto"
271 inkscape:stockid="Arrow1Lstart"
272 inkscape:isstock="true">
273 <path
274 transform="matrix(0.8,0,0,0.8,10,0)"
275 style="fill:#ff7800;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:1pt;stroke-opacity:1"
276 d="M 0,0 5,-5 -12.5,0 5,5 Z"
277 id="path3309" />
278 </marker>
279 <linearGradient
280 id="linearGradient921"
281 inkscape:swatch="solid">
282 <stop
283 style="stop-color:#deddda;stop-opacity:1;"
284 offset="0"
285 id="stop919" />
286 </linearGradient>
287 <linearGradient
288 id="linearGradient6035-4">
289 <stop
290 id="stop6037-2"
291 style="stop-color:#ffffff"
292 offset="0" />
293 <stop
294 id="stop6039-9"
295 style="stop-color:#ffffff;stop-opacity:0"
296 offset="1" />
297 </linearGradient>
298 <marker
299 style="overflow:visible"
300 id="Arrow2Mstart-4"
301 refX="0"
302 refY="0"
303 orient="auto"
304 inkscape:stockid="Arrow2Mstart"
305 inkscape:isstock="true">
306 <path
307 transform="scale(0.6)"
308 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
309 style="fill:#ffa348;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
310 id="path3333-2" />
311 </marker>
312 <marker
313 style="overflow:visible"
314 id="Arrow2Mend-2"
315 refX="0"
316 refY="0"
317 orient="auto"
318 inkscape:stockid="Arrow2Mend"
319 inkscape:isstock="true">
320 <path
321 transform="scale(-0.6)"
322 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
323 style="fill:#ffa348;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
324 id="path3336-7" />
325 </marker>
326 <marker
327 style="overflow:visible"
328 id="marker5623-2"
329 refX="0"
330 refY="0"
331 orient="auto"
332 inkscape:stockid="Arrow2Mend"
333 inkscape:isstock="true">
334 <path
335 transform="scale(-0.6)"
336 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
337 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
338 id="path5621-3" />
339 </marker>
340 <marker
341 style="overflow:visible"
342 id="Arrow2Mend-4"
343 refX="0"
344 refY="0"
345 orient="auto"
346 inkscape:stockid="Arrow2Mend"
347 inkscape:isstock="true">
348 <path
349 transform="scale(-0.6)"
350 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
351 style="fill:#ffa348;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
352 id="path3336-3" />
353 </marker>
354 <marker
355 style="overflow:visible"
356 id="marker5285-1"
357 refX="0"
358 refY="0"
359 orient="auto"
360 inkscape:stockid="Arrow2Mstart"
361 inkscape:isstock="true">
362 <path
363 transform="scale(0.6)"
364 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
365 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
366 id="path5283-7" />
367 </marker>
368 <marker
369 style="overflow:visible"
370 id="marker5161-4"
371 refX="0"
372 refY="0"
373 orient="auto"
374 inkscape:stockid="Arrow2Mend"
375 inkscape:isstock="true">
376 <path
377 transform="scale(-0.6)"
378 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
379 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
380 id="path5159-3" />
381 </marker>
382 <marker
383 style="overflow:visible"
384 id="marker5285-1-4"
385 refX="0"
386 refY="0"
387 orient="auto"
388 inkscape:stockid="Arrow2Mstart"
389 inkscape:isstock="true">
390 <path
391 transform="scale(0.6)"
392 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
393 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
394 id="path5283-7-6" />
395 </marker>
396 <marker
397 style="overflow:visible"
398 id="marker5161-4-9"
399 refX="0"
400 refY="0"
401 orient="auto"
402 inkscape:stockid="Arrow2Mend"
403 inkscape:isstock="true">
404 <path
405 transform="scale(-0.6)"
406 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
407 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
408 id="path5159-3-4" />
409 </marker>
410 <marker
411 style="overflow:visible"
412 id="marker4174-8"
413 refX="0"
414 refY="0"
415 orient="auto"
416 inkscape:stockid="Arrow2Mstart"
417 inkscape:isstock="true">
418 <path
419 transform="scale(0.6)"
420 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
421 style="fill:#62a0ea;fill-opacity:1;fill-rule:evenodd;stroke:#62a0ea;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
422 id="path4172-8" />
423 </marker>
424 <marker
425 style="overflow:visible"
426 id="marker5285-9"
427 refX="0"
428 refY="0"
429 orient="auto"
430 inkscape:stockid="Arrow2Mstart"
431 inkscape:isstock="true">
432 <path
433 transform="scale(0.6)"
434 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
435 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
436 id="path5283-5" />
437 </marker>
438 <marker
439 style="overflow:visible"
440 id="marker5161-0"
441 refX="0"
442 refY="0"
443 orient="auto"
444 inkscape:stockid="marker5161-0"
445 inkscape:isstock="true">
446 <path
447 transform="scale(-0.6)"
448 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
449 style="fill:#deddda;fill-opacity:1;fill-rule:evenodd;stroke:#deddda;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
450 id="path5159-4" />
451 </marker>
452 <marker
453 style="overflow:visible"
454 id="marker5285-17"
455 refX="0"
456 refY="0"
457 orient="auto"
458 inkscape:stockid="Arrow2Mstart"
459 inkscape:isstock="true">
460 <path
461 transform="scale(0.6)"
462 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
463 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
464 id="path5283-2" />
465 </marker>
466 <marker
467 style="overflow:visible"
468 id="marker5161-7"
469 refX="0"
470 refY="0"
471 orient="auto"
472 inkscape:stockid="Arrow2Mend"
473 inkscape:isstock="true">
474 <path
475 transform="scale(-0.6)"
476 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
477 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
478 id="path5159-2" />
479 </marker>
480 <marker
481 style="overflow:visible"
482 id="marker5285-17-6"
483 refX="0"
484 refY="0"
485 orient="auto"
486 inkscape:stockid="Arrow2Mstart"
487 inkscape:isstock="true">
488 <path
489 transform="scale(0.6)"
490 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
491 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
492 id="path5283-2-1" />
493 </marker>
494 <marker
495 style="overflow:visible"
496 id="marker5285-17-6-6"
497 refX="0"
498 refY="0"
499 orient="auto"
500 inkscape:stockid="Arrow2Mstart"
501 inkscape:isstock="true">
502 <path
503 transform="scale(0.6)"
504 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
505 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
506 id="path5283-2-1-1" />
507 </marker>
508 <marker
509 style="overflow:visible"
510 id="marker5285-17-9"
511 refX="0"
512 refY="0"
513 orient="auto"
514 inkscape:stockid="Arrow2Mstart"
515 inkscape:isstock="true">
516 <path
517 transform="scale(0.6)"
518 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
519 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
520 id="path5283-2-4" />
521 </marker>
522 <marker
523 style="overflow:visible"
524 id="marker5285-17-9-0"
525 refX="0"
526 refY="0"
527 orient="auto"
528 inkscape:stockid="Arrow2Mstart"
529 inkscape:isstock="true">
530 <path
531 transform="scale(0.6)"
532 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
533 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
534 id="path5283-2-4-9" />
535 </marker>
536 <marker
537 style="overflow:visible"
538 id="marker5285-17-9-2"
539 refX="0"
540 refY="0"
541 orient="auto"
542 inkscape:stockid="Arrow2Mstart"
543 inkscape:isstock="true">
544 <path
545 transform="scale(0.6)"
546 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
547 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
548 id="path5283-2-4-93" />
549 </marker>
550 <marker
551 style="overflow:visible"
552 id="marker5285-17-9-2-0"
553 refX="0"
554 refY="0"
555 orient="auto"
556 inkscape:stockid="Arrow2Mstart"
557 inkscape:isstock="true">
558 <path
559 transform="scale(0.6)"
560 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
561 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
562 id="path5283-2-4-93-9" />
563 </marker>
564 <marker
565 style="overflow:visible"
566 id="marker5285-17-9-3"
567 refX="0"
568 refY="0"
569 orient="auto"
570 inkscape:stockid="Arrow2Mstart"
571 inkscape:isstock="true">
572 <path
573 transform="scale(0.6)"
574 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
575 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
576 id="path5283-2-4-8" />
577 </marker>
578 <marker
579 style="overflow:visible"
580 id="marker5285-17-9-2-5"
581 refX="0"
582 refY="0"
583 orient="auto"
584 inkscape:stockid="Arrow2Mstart"
585 inkscape:isstock="true">
586 <path
587 transform="scale(0.6)"
588 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
589 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
590 id="path5283-2-4-93-6" />
591 </marker>
592 <marker
593 style="overflow:visible"
594 id="marker5285-17-6-1"
595 refX="0"
596 refY="0"
597 orient="auto"
598 inkscape:stockid="Arrow2Mstart"
599 inkscape:isstock="true">
600 <path
601 transform="scale(0.6)"
602 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
603 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
604 id="path5283-2-1-15" />
605 </marker>
606 <marker
607 style="overflow:visible"
608 id="marker5285-17-4"
609 refX="0"
610 refY="0"
611 orient="auto"
612 inkscape:stockid="Arrow2Mstart"
613 inkscape:isstock="true">
614 <path
615 transform="scale(0.6)"
616 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
617 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
618 id="path5283-2-7" />
619 </marker>
620 <marker
621 style="overflow:visible"
622 id="marker5285-17-4-4"
623 refX="0"
624 refY="0"
625 orient="auto"
626 inkscape:stockid="Arrow2Mstart"
627 inkscape:isstock="true">
628 <path
629 transform="scale(0.6)"
630 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
631 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
632 id="path5283-2-7-3" />
633 </marker>
634 <marker
635 style="overflow:visible"
636 id="marker5285-17-4-4-3"
637 refX="0"
638 refY="0"
639 orient="auto"
640 inkscape:stockid="Arrow2Mstart"
641 inkscape:isstock="true">
642 <path
643 transform="scale(0.6)"
644 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
645 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
646 id="path5283-2-7-3-8" />
647 </marker>
648 </defs>
649 <g
650 inkscape:groupmode="layer"
651 inkscape:label="Image"
652 id="g10"
653 transform="translate(69.846747,14.267592)">
654 <rect
655 style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:3.09493;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-opacity:0"
656 id="rect1"
657 width="718.9325"
658 height="528.83362"
659 x="-68.305695"
660 y="-11.621885" />
661 <text
662 xml:space="preserve"
663 style="font-weight:bold;font-size:42.5884px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
664 x="142.22464"
665 y="565.10297"
666 id="text907"><tspan
667 sodipodi:role="line"
668 id="tspan905"
669 x="142.22464"
670 y="565.10297" /></text>
671 <text
672 xml:space="preserve"
673 style="font-weight:bold;font-size:42.5884px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
674 x="98.363503"
675 y="637.8432"
676 id="text911"><tspan
677 sodipodi:role="line"
678 id="tspan909"
679 x="98.363503"
680 y="637.8432" /></text>
681 <text
682 xml:space="preserve"
683 style="font-weight:bold;font-size:42.5884px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
684 x="-59.575905"
685 y="580.05695"
686 id="text915"><tspan
687 sodipodi:role="line"
688 id="tspan913"
689 x="-59.575905"
690 y="580.05695" /></text>
691 <text
692 xml:space="preserve"
693 style="font-weight:bold;font-size:42.5884px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
694 x="313.46567"
695 y="412.9321"
696 id="text3781"><tspan
697 sodipodi:role="line"
698 id="tspan3779"
699 x="313.46567"
700 y="412.9321" /></text>
701 <g
702 id="g72820-3"
703 transform="matrix(3.2001899,0,0,4.5594279,-282.17456,-390.84179)">
704 <rect
705 style="fill:#00b0f0;fill-opacity:1;fill-rule:evenodd;stroke:#62a0ea;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
706 id="rect917-2-4-5-6"
707 width="196.16678"
708 height="68.896393"
709 x="71.68811"
710 y="122.33367"
711 ry="3.4538503" />
712 <rect
713 style="fill:#00b0f0;fill-opacity:1;fill-rule:evenodd;stroke:#62a0ea;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
714 id="rect917-2-4-5-6-5"
715 width="79.107689"
716 height="83.29377"
717 x="70.012787"
718 y="114.7747"
719 ry="4.1756063" />
720 </g>
721 <text
722 xml:space="preserve"
723 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:16px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.31058px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
724 x="-13.062568"
725 y="158.6487"
726 id="text1185-3-5-5-9-7"
727 transform="scale(1.0155894,0.9846499)"><tspan
728 sodipodi:role="line"
729 x="-13.062568"
730 y="158.6487"
731 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:16px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;stroke:none;stroke-width:1.31058px"
732 id="tspan60047-3">BitBake</tspan></text>
733 <text
734 xml:space="preserve"
735 style="font-weight:bold;font-size:42.5884px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
736 x="-16.290483"
737 y="345.7359"
738 id="text3116"><tspan
739 sodipodi:role="line"
740 id="tspan3114"
741 x="-16.290483"
742 y="345.7359" /></text>
743 <rect
744 style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:2.61112;stroke-dasharray:none;stroke-opacity:1"
745 id="rect917-0-6"
746 width="312.02957"
747 height="283.15833"
748 x="245.26863"
749 y="182.6216"
750 ry="14.195031" />
751 <rect
752 style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0.868487;stroke-dasharray:none;stroke-opacity:1"
753 id="rect917-0-6-4"
754 width="111.60363"
755 height="87.583687"
756 x="-29.059187"
757 y="313.23886"
758 ry="4.3906641" />
759 <rect
760 style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:1.55846;stroke-dasharray:none;stroke-opacity:1"
761 id="rect917-0-6-27"
762 width="252.62085"
763 height="124.59291"
764 x="-51.109352"
765 y="-3.2277274"
766 ry="6.245976" />
767 <g
768 id="g3"
769 transform="translate(11.726444,18.55249)">
770 <rect
771 style="fill:#a0a0a0;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
772 id="rect917-0-6-27-0"
773 width="77.51136"
774 height="60.565445"
775 x="-57.536053"
776 y="-15.779959"
777 ry="3.0362105" />
778 </g>
779 <rect
780 style="fill:#deddda;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
781 id="rect917-0-6-2"
782 width="270.26929"
783 height="236.56111"
784 x="265.73325"
785 y="207.73816"
786 ry="11.859063" />
787 <rect
788 style="fill:#deddda;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
789 id="rect917-0-6-2-3"
790 width="98.558929"
791 height="60.359337"
792 x="-21.630077"
793 y="334.39767"
794 ry="3.0258784" />
795 <rect
796 style="fill:#deddda;fill-opacity:1;fill-rule:evenodd;stroke:#deddda;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
797 id="rect917-0-6-2-5"
798 width="121.85956"
799 height="92.953278"
800 x="-31.285583"
801 y="204.8772"
802 ry="4.6598477" />
803 <g
804 id="g3-3"
805 transform="translate(93.245235,19.273036)">
806 <rect
807 style="fill:#a0a0a0;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
808 id="rect917-0-6-27-0-61"
809 width="77.51136"
810 height="60.565445"
811 x="-57.536053"
812 y="-15.779959"
813 ry="3.0362105" />
814 </g>
815 <text
816 xml:space="preserve"
817 style="font-weight:normal;font-size:9.75161652px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-style:normal;font-stretch:normal;font-variant:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal"
818 x="73.865288"
819 y="29.948204"
820 id="text1185-3-5-5-9-7-93-9"
821 transform="scale(1.0010629,0.99893822)"><tspan
822 sodipodi:role="line"
823 x="73.865288"
824 y="29.948204"
825 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:9.75161652px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.42682px;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal"
826 id="tspan2-9">Local</tspan><tspan
827 sodipodi:role="line"
828 x="73.865288"
829 y="44.345493"
830 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:9.75161652px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.42682px;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal"
831 id="tspan5">Projects</tspan></text>
832 <g
833 id="g3-3-4"
834 transform="translate(173.42759,19.774109)">
835 <rect
836 style="fill:#a0a0a0;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
837 id="rect917-0-6-27-0-61-7"
838 width="77.51136"
839 height="60.565445"
840 x="-57.536053"
841 y="-15.779959"
842 ry="3.0362105" />
843 </g>
844 <text
845 xml:space="preserve"
846 style="font-weight:normal;font-size:9.75161652px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-style:normal;font-stretch:normal;font-variant:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal"
847 x="155.51562"
848 y="30.276878"
849 id="text1185-3-5-5-9-7-93-9-4"
850 transform="scale(1.0010629,0.99893822)"><tspan
851 sodipodi:role="line"
852 x="155.51562"
853 y="30.276878"
854 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:9.75161652px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.42682px;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal"
855 id="tspan2-9-3">SCMs</tspan><tspan
856 sodipodi:role="line"
857 x="155.51562"
858 y="44.674168"
859 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:9.75161652px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.42682px;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal"
860 id="tspan7">(optional)</tspan></text>
861 <g
862 id="g3-3-0"
863 transform="matrix(3.0548289,0,0,0.817457,131.29913,79.564217)">
864 <rect
865 style="fill:#656565;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
866 id="rect917-0-6-27-0-61-6"
867 width="77.51136"
868 height="60.565445"
869 x="-57.536053"
870 y="-15.779959"
871 ry="2.4245923"
872 rx="0.72017127" />
873 </g>
874 <rect
875 style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
876 id="rect917-0-6-27-0-6-3"
877 width="19.926487"
878 height="18.934353"
879 x="31.653898"
880 y="42.728382"
881 ry="0"
882 transform="rotate(43.365087)" />
883 <rect
884 style="fill:#a1a1a1;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
885 id="rect917-0-6-27-0-6-3-2"
886 width="19.926487"
887 height="18.934353"
888 x="29.538702"
889 y="40.496868"
890 ry="0"
891 transform="rotate(43.365087)" />
892 <rect
893 style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
894 id="rect917-0-6-27-0-6-3-5"
895 width="19.926487"
896 height="18.934353"
897 x="89.532135"
898 y="-11.778489"
899 ry="0"
900 transform="rotate(43.365087)" />
901 <rect
902 style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
903 id="rect917-0-6-27-0-6-3-5-4"
904 width="19.926487"
905 height="18.934353"
906 x="135.56271"
907 y="34.25806"
908 ry="0"
909 transform="rotate(43.365087)" />
910 <rect
911 style="fill:#00b0f0;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
912 id="rect917-0-6-27-0-6-3-5-4-2"
913 width="19.926487"
914 height="18.934353"
915 x="151.0392"
916 y="118.62856"
917 ry="0"
918 transform="rotate(43.365087)" />
919 <rect
920 style="fill:#dddcd9;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
921 id="rect917-0-6-27-0-6-3-5-4-2-5"
922 width="11.829602"
923 height="11.269682"
924 x="214.60315"
925 y="185.23712"
926 ry="0"
927 transform="matrix(0.71126059,0.70292843,-0.67005221,0.74231397,0,0)" />
928 <rect
929 style="fill:#a1a1a1;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
930 id="rect917-0-6-27-0-6-3-2-4"
931 width="19.926487"
932 height="18.934353"
933 x="87.416931"
934 y="-14.010006"
935 ry="0"
936 transform="rotate(43.365087)" />
937 <rect
938 style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
939 id="rect917-0-6-27-0-6-3-5-7"
940 width="19.926487"
941 height="18.934353"
942 x="148.05835"
943 y="-67.066444"
944 ry="0"
945 transform="rotate(43.365087)" />
946 <rect
947 style="fill:#a1a1a1;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
948 id="rect917-0-6-27-0-6-3-2-4-6"
949 width="19.926487"
950 height="18.934353"
951 x="145.94316"
952 y="-69.297958"
953 ry="0"
954 transform="rotate(43.365087)" />
955 <rect
956 style="fill:#666666;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
957 id="rect917-0-6-27-0-6-3-2-4-6-7"
958 width="19.926487"
959 height="18.934353"
960 x="124.58775"
961 y="22.903889"
962 ry="0"
963 transform="rotate(43.365087)" />
964 <text
965 xml:space="preserve"
966 style="font-weight:bold;font-size:10.976224px;line-height:119%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-style:normal;font-stretch:normal;font-variant:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal"
967 x="314.59457"
968 y="200.0639"
969 id="text1185-3-5-5-9-7-9"
970 transform="scale(1.0010629,0.99893822)"><tspan
971 sodipodi:role="line"
972 x="314.59457"
973 y="200.0639"
974 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:10.976224px;line-height:119%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';text-align:center;text-anchor:middle;stroke:none;stroke-width:1.42682px;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal"
975 id="tspan60047-3-1">Build Directory</tspan></text>
976 <text
977 xml:space="preserve"
978 style="font-weight:normal;font-size:10.6666px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-style:normal;font-stretch:normal;font-variant:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal"
979 x="-6.3590012"
980 y="22.655539"
981 id="text1185-3-5-5-9-7-93"
982 transform="scale(1.0010629,0.99893822)"><tspan
983 sodipodi:role="line"
984 x="-6.3590002"
985 y="22.655539"
986 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.66660028px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.42682px;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal"
987 id="tspan60047-3-6">Upstream</tspan><tspan
988 sodipodi:role="line"
989 x="-6.3590002"
990 y="37.05283"
991 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.66660028px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.42682px;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal"
992 id="tspan1">Project</tspan><tspan
993 sodipodi:role="line"
994 x="-6.3590021"
995 y="51.450119"
996 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.66660028px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.42682px;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal"
997 id="tspan2">Releases</tspan></text>
998 <rect
999 style="fill:#92d050;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
1000 id="rect917-0-6-2-5-4"
1001 width="72.495255"
1002 height="33.113335"
1003 x="-6.165905"
1004 y="246.60416" />
1005 <text
1006 xml:space="preserve"
1007 style="font-weight:bold;font-size:10.97622368px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.84771px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-style:normal;font-stretch:normal;font-variant:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal"
1008 x="29.038769"
1009 y="233.26717"
1010 id="text1185-3-5-5-9-7-4"
1011 transform="scale(0.97863565,1.0218308)"><tspan
1012 sodipodi:role="line"
1013 x="29.038769"
1014 y="233.26717"
1015 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:10.97622368px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';text-align:center;text-anchor:middle;stroke:none;stroke-width:0.84771px;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal"
1016 id="tspan60047-3-7">Patch application</tspan></text>
1017 <text
1018 xml:space="preserve"
1019 style="font-weight:bold;font-size:10.9762239px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.84771px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-style:normal;font-stretch:normal;font-variant:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal"
1020 x="-20.573158"
1021 y="320.02142"
1022 id="text1185-3-5-5-9-7-4-9"
1023 transform="scale(0.97863561,1.0218308)"><tspan
1024 sodipodi:role="line"
1025 x="-20.573158"
1026 y="320.02142"
1027 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:10.9762239px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';text-align:start;text-anchor:start;stroke:none;stroke-width:0.84771px;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal"
1028 id="tspan60047-3-7-7">Recipes</tspan></text>
1029 <text
1030 xml:space="preserve"
1031 style="font-weight:normal;font-size:9.75161624px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.84771px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-style:normal;font-stretch:normal;font-variant:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal"
1032 x="30.556973"
1033 y="260.6658"
1034 id="text1185-3-5-5-9-7-4-3"
1035 transform="scale(0.97863565,1.0218308)"><tspan
1036 sodipodi:role="line"
1037 x="30.556973"
1038 y="260.6658"
1039 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:9.75161624px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';text-align:center;text-anchor:middle;stroke:none;stroke-width:0.84771px;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal"
1040 id="tspan60047-3-7-0">do_patch</tspan></text>
1041 <text
1042 xml:space="preserve"
1043 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;line-height:125%;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1044 x="283.34647"
1045 y="251.46193"
1046 id="text1185-3-5-5-9-7-4-3-6"
1047 transform="scale(1.0010629,0.99893822)"><tspan
1048 sodipodi:role="line"
1049 x="283.34647"
1050 y="251.46193"
1051 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1052 id="tspan4">tmp &lt;───────────────────────────────────────── TMPDIR</tspan><tspan
1053 sodipodi:role="line"
1054 x="283.34647"
1055 y="264.79532"
1056 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1057 id="tspan6"> work</tspan><tspan
1058 sodipodi:role="line"
1059 x="283.34647"
1060 y="278.12869"
1061 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1062 id="tspan8"> ${PACKAGE_ARCH}-poky-${TARGET_OS}</tspan><tspan
1063 sodipodi:role="line"
1064 x="283.34647"
1065 y="291.46207"
1066 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1067 id="tspan12"> ${PN}</tspan><tspan
1068 sodipodi:role="line"
1069 x="283.34647"
1070 y="304.79544"
1071 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1072 id="tspan20"> ${PV} &lt;─────────────────────────────── WORKDIR</tspan><tspan
1073 sodipodi:role="line"
1074 x="283.34647"
1075 y="318.12881"
1076 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1077 id="tspan21"> sources &lt;─────────────────────────── UNPACKDIR</tspan><tspan
1078 sodipodi:role="line"
1079 x="283.34647"
1080 y="331.46219"
1081 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1082 id="tspan31"> ${BP} &lt;─────────────────────────── S</tspan><tspan
1083 sodipodi:role="line"
1084 x="283.34647"
1085 y="344.79556"
1086 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1087 id="tspan32"> ${MACHINE}-poky-${TARGET_OS}</tspan><tspan
1088 sodipodi:role="line"
1089 x="283.34647"
1090 y="358.12894"
1091 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1092 id="tspan33"> ${PN}</tspan><tspan
1093 sodipodi:role="line"
1094 x="283.34647"
1095 y="371.46231"
1096 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1097 id="tspan34"> ${PV} &lt;─────────────────────────────── WORKDIR</tspan><tspan
1098 sodipodi:role="line"
1099 x="283.34647"
1100 y="384.79568"
1101 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1102 id="tspan35"> sources &lt;─────────────────────────── UNPACKDIR</tspan><tspan
1103 sodipodi:role="line"
1104 x="283.34647"
1105 y="398.12906"
1106 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1107 id="tspan47"> ${BP} &lt;─────────────────────────── S</tspan></text>
1108 <text
1109 xml:space="preserve"
1110 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8.8889px;line-height:125%;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1111 x="-17.667521"
1112 y="352.20374"
1113 id="text1185-3-5-5-9-7-4-3-6-1"
1114 transform="scale(1.0010629,0.99893822)"><tspan
1115 sodipodi:role="line"
1116 x="-17.667521"
1117 y="352.20374"
1118 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8.8889px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1119 id="tspan30-1">SRC_URI = &quot;.... \</tspan><tspan
1120 sodipodi:role="line"
1121 x="-17.667521"
1122 y="363.31485"
1123 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8.8889px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1124 id="tspan41"> &lt;patch_file&gt; \</tspan><tspan
1125 sodipodi:role="line"
1126 x="-17.667521"
1127 y="374.42599"
1128 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8.8889px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1129 id="tspan42"> ... \</tspan><tspan
1130 sodipodi:role="line"
1131 x="-17.667521"
1132 y="385.53711"
1133 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8.8889px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1134 id="tspan43">&quot;</tspan></text>
1135 <rect
1136 style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0.536476;stroke-dasharray:none;stroke-opacity:1"
1137 id="rect917-0-6-4-5"
1138 width="65.639488"
1139 height="56.821266"
1140 x="51.129642"
1141 y="416.6058"
1142 ry="2.848511" />
1143 <rect
1144 style="fill:#deddda;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
1145 id="rect917-0-6-2-3-3"
1146 width="49.498829"
1147 height="29.610401"
1148 x="58.23616"
1149 y="436.46481"
1150 ry="1.4844012" />
1151 <text
1152 xml:space="preserve"
1153 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:10.9762px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.84771px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1154 x="58.540276"
1155 y="422.2988"
1156 id="text1185-3-5-5-9-7-4-9-8"
1157 transform="scale(0.97863561,1.0218308)"><tspan
1158 sodipodi:role="line"
1159 x="58.540276"
1160 y="422.2988"
1161 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:10.9762px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:0.84771px"
1162 id="tspan60047-3-7-7-8">Patch files</tspan></text>
1163 <text
1164 xml:space="preserve"
1165 style="font-weight:normal;font-size:8.88889984px;line-height:125%;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-style:normal;font-stretch:normal;font-variant:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal"
1166 x="62.508091"
1167 y="450.11035"
1168 id="text1185-3-5-5-9-7-4-3-6-1-3"
1169 transform="scale(1.0010629,0.99893822)"><tspan
1170 sodipodi:role="line"
1171 x="62.508091"
1172 y="450.11035"
1173 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8.88889984px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal"
1174 id="tspan43-6">*.patch</tspan><tspan
1175 sodipodi:role="line"
1176 x="62.508091"
1177 y="460.82059"
1178 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:8.88889984px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal"
1179 id="tspan46">*.diff</tspan></text>
1180 <text
1181 xml:space="preserve"
1182 style="font-weight:normal;font-size:10.6666px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1;font-style:normal;font-stretch:normal;font-variant:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal"
1183 x="73.394455"
1184 y="97.290146"
1185 id="text1185-3-5-5-9-7-93-9-5"
1186 transform="scale(1.0010629,0.99893822)"><tspan
1187 sodipodi:role="line"
1188 x="73.394455"
1189 y="97.290146"
1190 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.66660028px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.42682px;font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal"
1191 id="tspan5-9">Source Mirror(s)</tspan></text>
1192 <path
1193 style="display:inline;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.29211;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-start:url(#marker5285-17-4)"
1194 d="m 51.194833,311.64332 -0.167856,-31.5431"
1195 id="path5151-2-6"
1196 inkscape:connector-type="polyline"
1197 inkscape:connector-curvature="0" />
1198 <path
1199 style="display:inline;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.950312;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-start:url(#marker5285-17-4-4)"
1200 d="M 66.523353,415.18574 66.316201,401.36017"
1201 id="path5151-2-6-3"
1202 inkscape:connector-type="polyline"
1203 inkscape:connector-curvature="0" />
1204 <path
1205 style="display:inline;fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.49388;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-start:url(#marker5285-17-4-4-3)"
1206 d="m 241.85857,448.04118 -125.1646,0.0642"
1207 id="path5151-2-6-3-6"
1208 inkscape:connector-type="polyline"
1209 inkscape:connector-curvature="0" />
1210 <text
1211 xml:space="preserve"
1212 transform="translate(-82.778014,-165.84268)"
1213 id="text2"
1214 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;line-height:119%;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';text-align:start;writing-mode:lr-tb;direction:ltr;white-space:pre;shape-inside:url(#rect2);display:inline;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none" />
1215 <text
1216 xml:space="preserve"
1217 transform="translate(-82.778014,-165.84268)"
1218 id="text28"
1219 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;line-height:119%;font-family:'Liberation Mono';-inkscape-font-specification:'Liberation Mono';text-align:start;writing-mode:lr-tb;direction:ltr;white-space:pre;shape-inside:url(#rect28);display:inline;fill:#808080;fill-opacity:1;stroke:#deddda;stroke-width:1.893;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
1220 </g>
1221 <style
1222 type="text/css"
1223 id="style1021"> .st0{fill:#4A97D2;} .st1{fill:#333333;} </style>
1224</svg>
diff --git a/documentation/overview-manual/svg/source-fetching.svg b/documentation/overview-manual/svg/source-fetching.svg
new file mode 100644
index 0000000000..39d7e0c2a7
--- /dev/null
+++ b/documentation/overview-manual/svg/source-fetching.svg
@@ -0,0 +1,1094 @@
1<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2<svg
3 version="1.1"
4 id="svg2"
5 width="737.63324"
6 height="532.90466"
7 viewBox="0 0 737.63324 532.90456"
8 sodipodi:docname="source-fetching.svg"
9 inkscape:version="1.4 (e7c3feb100, 2024-10-09)"
10 xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
11 xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
12 xmlns="http://www.w3.org/2000/svg"
13 xmlns:svg="http://www.w3.org/2000/svg"
14 xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
15 xmlns:cc="http://creativecommons.org/ns#"
16 xmlns:dc="http://purl.org/dc/elements/1.1/">
17 <sodipodi:namedview
18 pagecolor="#ffffff"
19 bordercolor="#666666"
20 borderopacity="1"
21 objecttolerance="10"
22 gridtolerance="10"
23 guidetolerance="10"
24 inkscape:pageopacity="0"
25 inkscape:pageshadow="2"
26 inkscape:window-width="2255"
27 inkscape:window-height="2039"
28 id="namedview4"
29 showgrid="false"
30 inkscape:zoom="2.894409"
31 inkscape:cx="424.78447"
32 inkscape:cy="219.04299"
33 inkscape:window-x="2271"
34 inkscape:window-y="75"
35 inkscape:window-maximized="1"
36 inkscape:current-layer="g10"
37 inkscape:document-rotation="0"
38 inkscape:snap-perpendicular="true"
39 fit-margin-top="30"
40 lock-margins="true"
41 fit-margin-left="30"
42 fit-margin-right="30"
43 fit-margin-bottom="30"
44 inkscape:pagecheckerboard="0"
45 inkscape:showpageshadow="2"
46 inkscape:deskcolor="#d1d1d1">
47 <inkscape:grid
48 type="xygrid"
49 id="grid1257"
50 originx="68.985121"
51 originy="13.653309"
52 spacingy="1"
53 spacingx="1"
54 units="px" />
55 </sodipodi:namedview>
56 <metadata
57 id="metadata8">
58 <rdf:RDF>
59 <cc:Work
60 rdf:about="">
61 <dc:format>image/svg+xml</dc:format>
62 <dc:type
63 rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
64 </cc:Work>
65 </rdf:RDF>
66 </metadata>
67 <defs
68 id="defs6">
69 <rect
70 x="-345.93011"
71 y="-568.73254"
72 width="776.87695"
73 height="667.43011"
74 id="rect28" />
75 <rect
76 x="23.839064"
77 y="148.04404"
78 width="87.237152"
79 height="79.809036"
80 id="rect2" />
81 <inkscape:path-effect
82 effect="powerstroke"
83 id="path-effect6121"
84 is_visible="true"
85 lpeversion="1"
86 offset_points="0,0.5"
87 sort_points="true"
88 interpolator_type="CubicBezierJohan"
89 interpolator_beta="0.2"
90 start_linecap_type="zerowidth"
91 linejoin_type="extrp_arc"
92 miter_limit="4"
93 scale_width="1"
94 end_linecap_type="zerowidth"
95 not_jump="false"
96 message="" />
97 <marker
98 style="overflow:visible"
99 id="marker5783"
100 refX="0"
101 refY="0"
102 orient="auto"
103 inkscape:stockid="Arrow2Mend"
104 inkscape:isstock="true">
105 <path
106 transform="scale(-0.6)"
107 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
108 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
109 id="path5781" />
110 </marker>
111 <marker
112 style="overflow:visible"
113 id="marker5623"
114 refX="0"
115 refY="0"
116 orient="auto"
117 inkscape:stockid="Arrow2Mend"
118 inkscape:isstock="true">
119 <path
120 transform="scale(-0.6)"
121 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
122 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
123 id="path5621" />
124 </marker>
125 <marker
126 style="overflow:visible"
127 id="marker5487"
128 refX="0"
129 refY="0"
130 orient="auto"
131 inkscape:stockid="Arrow2Mend"
132 inkscape:isstock="true">
133 <path
134 transform="scale(-0.6)"
135 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
136 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
137 id="path5485" />
138 </marker>
139 <marker
140 style="overflow:visible"
141 id="marker5285"
142 refX="0"
143 refY="0"
144 orient="auto"
145 inkscape:stockid="Arrow2Mstart"
146 inkscape:isstock="true">
147 <path
148 transform="scale(0.6)"
149 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
150 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
151 id="path5283" />
152 </marker>
153 <marker
154 style="overflow:visible"
155 id="marker5161"
156 refX="0"
157 refY="0"
158 orient="auto"
159 inkscape:stockid="Arrow2Mend"
160 inkscape:isstock="true">
161 <path
162 transform="scale(-0.6)"
163 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
164 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
165 id="path5159" />
166 </marker>
167 <marker
168 style="overflow:visible"
169 id="marker4860"
170 refX="0"
171 refY="0"
172 orient="auto"
173 inkscape:stockid="Arrow2Mend"
174 inkscape:isstock="true">
175 <path
176 transform="scale(-0.6)"
177 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
178 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
179 id="path4858" />
180 </marker>
181 <marker
182 style="overflow:visible"
183 id="marker4504"
184 refX="0"
185 refY="0"
186 orient="auto"
187 inkscape:stockid="Arrow2Mend"
188 inkscape:isstock="true">
189 <path
190 transform="scale(-0.6)"
191 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
192 style="fill:#ffa348;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
193 id="path4502" />
194 </marker>
195 <marker
196 style="overflow:visible"
197 id="Arrow1Mend"
198 refX="0"
199 refY="0"
200 orient="auto"
201 inkscape:stockid="Arrow1Mend"
202 inkscape:isstock="true">
203 <path
204 transform="matrix(-0.4,0,0,-0.4,-4,0)"
205 style="fill:#62a0ea;fill-opacity:1;fill-rule:evenodd;stroke:#62a0ea;stroke-width:1pt;stroke-opacity:1"
206 d="M 0,0 5,-5 -12.5,0 5,5 Z"
207 id="path3318" />
208 </marker>
209 <marker
210 style="overflow:visible"
211 id="marker4174"
212 refX="0"
213 refY="0"
214 orient="auto"
215 inkscape:stockid="Arrow2Mstart"
216 inkscape:isstock="true">
217 <path
218 transform="scale(0.6)"
219 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
220 style="fill:#62a0ea;fill-opacity:1;fill-rule:evenodd;stroke:#62a0ea;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
221 id="path4172" />
222 </marker>
223 <marker
224 style="overflow:visible"
225 id="Arrow2Mend"
226 refX="0"
227 refY="0"
228 orient="auto"
229 inkscape:stockid="Arrow2Mend"
230 inkscape:isstock="true">
231 <path
232 transform="scale(-0.6)"
233 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
234 style="fill:#ffa348;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
235 id="path3336" />
236 </marker>
237 <marker
238 style="overflow:visible"
239 id="Arrow1Mstart"
240 refX="0"
241 refY="0"
242 orient="auto"
243 inkscape:stockid="Arrow1Mstart"
244 inkscape:isstock="true">
245 <path
246 transform="matrix(0.4,0,0,0.4,4,0)"
247 style="fill:#ff7800;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:1pt;stroke-opacity:1"
248 d="M 0,0 5,-5 -12.5,0 5,5 Z"
249 id="path3315" />
250 </marker>
251 <marker
252 style="overflow:visible"
253 id="Arrow2Lstart"
254 refX="0"
255 refY="0"
256 orient="auto"
257 inkscape:stockid="Arrow2Lstart"
258 inkscape:isstock="true">
259 <path
260 transform="matrix(1.1,0,0,1.1,1.1,0)"
261 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
262 style="fill:#ff7800;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
263 id="path3327" />
264 </marker>
265 <marker
266 style="overflow:visible"
267 id="Arrow1Lstart"
268 refX="0"
269 refY="0"
270 orient="auto"
271 inkscape:stockid="Arrow1Lstart"
272 inkscape:isstock="true">
273 <path
274 transform="matrix(0.8,0,0,0.8,10,0)"
275 style="fill:#ff7800;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:1pt;stroke-opacity:1"
276 d="M 0,0 5,-5 -12.5,0 5,5 Z"
277 id="path3309" />
278 </marker>
279 <linearGradient
280 id="linearGradient921"
281 inkscape:swatch="solid">
282 <stop
283 style="stop-color:#deddda;stop-opacity:1;"
284 offset="0"
285 id="stop919" />
286 </linearGradient>
287 <linearGradient
288 id="linearGradient6035-4">
289 <stop
290 id="stop6037-2"
291 style="stop-color:#ffffff"
292 offset="0" />
293 <stop
294 id="stop6039-9"
295 style="stop-color:#ffffff;stop-opacity:0"
296 offset="1" />
297 </linearGradient>
298 <marker
299 style="overflow:visible"
300 id="Arrow2Mstart-4"
301 refX="0"
302 refY="0"
303 orient="auto"
304 inkscape:stockid="Arrow2Mstart"
305 inkscape:isstock="true">
306 <path
307 transform="scale(0.6)"
308 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
309 style="fill:#ffa348;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
310 id="path3333-2" />
311 </marker>
312 <marker
313 style="overflow:visible"
314 id="Arrow2Mend-2"
315 refX="0"
316 refY="0"
317 orient="auto"
318 inkscape:stockid="Arrow2Mend"
319 inkscape:isstock="true">
320 <path
321 transform="scale(-0.6)"
322 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
323 style="fill:#ffa348;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
324 id="path3336-7" />
325 </marker>
326 <marker
327 style="overflow:visible"
328 id="marker5623-2"
329 refX="0"
330 refY="0"
331 orient="auto"
332 inkscape:stockid="Arrow2Mend"
333 inkscape:isstock="true">
334 <path
335 transform="scale(-0.6)"
336 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
337 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
338 id="path5621-3" />
339 </marker>
340 <marker
341 style="overflow:visible"
342 id="Arrow2Mend-4"
343 refX="0"
344 refY="0"
345 orient="auto"
346 inkscape:stockid="Arrow2Mend"
347 inkscape:isstock="true">
348 <path
349 transform="scale(-0.6)"
350 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
351 style="fill:#ffa348;fill-opacity:1;fill-rule:evenodd;stroke:#ffa348;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
352 id="path3336-3" />
353 </marker>
354 <marker
355 style="overflow:visible"
356 id="marker5285-1"
357 refX="0"
358 refY="0"
359 orient="auto"
360 inkscape:stockid="Arrow2Mstart"
361 inkscape:isstock="true">
362 <path
363 transform="scale(0.6)"
364 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
365 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
366 id="path5283-7" />
367 </marker>
368 <marker
369 style="overflow:visible"
370 id="marker5161-4"
371 refX="0"
372 refY="0"
373 orient="auto"
374 inkscape:stockid="Arrow2Mend"
375 inkscape:isstock="true">
376 <path
377 transform="scale(-0.6)"
378 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
379 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
380 id="path5159-3" />
381 </marker>
382 <marker
383 style="overflow:visible"
384 id="marker5285-1-4"
385 refX="0"
386 refY="0"
387 orient="auto"
388 inkscape:stockid="Arrow2Mstart"
389 inkscape:isstock="true">
390 <path
391 transform="scale(0.6)"
392 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
393 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
394 id="path5283-7-6" />
395 </marker>
396 <marker
397 style="overflow:visible"
398 id="marker5161-4-9"
399 refX="0"
400 refY="0"
401 orient="auto"
402 inkscape:stockid="Arrow2Mend"
403 inkscape:isstock="true">
404 <path
405 transform="scale(-0.6)"
406 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
407 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
408 id="path5159-3-4" />
409 </marker>
410 <marker
411 style="overflow:visible"
412 id="marker4174-8"
413 refX="0"
414 refY="0"
415 orient="auto"
416 inkscape:stockid="Arrow2Mstart"
417 inkscape:isstock="true">
418 <path
419 transform="scale(0.6)"
420 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
421 style="fill:#62a0ea;fill-opacity:1;fill-rule:evenodd;stroke:#62a0ea;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
422 id="path4172-8" />
423 </marker>
424 <marker
425 style="overflow:visible"
426 id="marker5285-9"
427 refX="0"
428 refY="0"
429 orient="auto"
430 inkscape:stockid="Arrow2Mstart"
431 inkscape:isstock="true">
432 <path
433 transform="scale(0.6)"
434 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
435 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
436 id="path5283-5" />
437 </marker>
438 <marker
439 style="overflow:visible"
440 id="marker5161-0"
441 refX="0"
442 refY="0"
443 orient="auto"
444 inkscape:stockid="marker5161-0"
445 inkscape:isstock="true">
446 <path
447 transform="scale(-0.6)"
448 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
449 style="fill:#deddda;fill-opacity:1;fill-rule:evenodd;stroke:#deddda;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
450 id="path5159-4" />
451 </marker>
452 <marker
453 style="overflow:visible"
454 id="marker5285-17"
455 refX="0"
456 refY="0"
457 orient="auto"
458 inkscape:stockid="Arrow2Mstart"
459 inkscape:isstock="true">
460 <path
461 transform="scale(0.6)"
462 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
463 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
464 id="path5283-2" />
465 </marker>
466 <marker
467 style="overflow:visible"
468 id="marker5161-7"
469 refX="0"
470 refY="0"
471 orient="auto"
472 inkscape:stockid="Arrow2Mend"
473 inkscape:isstock="true">
474 <path
475 transform="scale(-0.6)"
476 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
477 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
478 id="path5159-2" />
479 </marker>
480 <marker
481 style="overflow:visible"
482 id="marker5285-17-6"
483 refX="0"
484 refY="0"
485 orient="auto"
486 inkscape:stockid="Arrow2Mstart"
487 inkscape:isstock="true">
488 <path
489 transform="scale(0.6)"
490 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
491 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
492 id="path5283-2-1" />
493 </marker>
494 <marker
495 style="overflow:visible"
496 id="marker5285-17-6-6"
497 refX="0"
498 refY="0"
499 orient="auto"
500 inkscape:stockid="Arrow2Mstart"
501 inkscape:isstock="true">
502 <path
503 transform="scale(0.6)"
504 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
505 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
506 id="path5283-2-1-1" />
507 </marker>
508 <marker
509 style="overflow:visible"
510 id="marker5285-17-9"
511 refX="0"
512 refY="0"
513 orient="auto"
514 inkscape:stockid="Arrow2Mstart"
515 inkscape:isstock="true">
516 <path
517 transform="scale(0.6)"
518 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
519 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
520 id="path5283-2-4" />
521 </marker>
522 <marker
523 style="overflow:visible"
524 id="marker5285-17-9-0"
525 refX="0"
526 refY="0"
527 orient="auto"
528 inkscape:stockid="Arrow2Mstart"
529 inkscape:isstock="true">
530 <path
531 transform="scale(0.6)"
532 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
533 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
534 id="path5283-2-4-9" />
535 </marker>
536 <marker
537 style="overflow:visible"
538 id="marker5285-17-9-2"
539 refX="0"
540 refY="0"
541 orient="auto"
542 inkscape:stockid="Arrow2Mstart"
543 inkscape:isstock="true">
544 <path
545 transform="scale(0.6)"
546 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
547 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
548 id="path5283-2-4-93" />
549 </marker>
550 <marker
551 style="overflow:visible"
552 id="marker5285-17-9-2-0"
553 refX="0"
554 refY="0"
555 orient="auto"
556 inkscape:stockid="Arrow2Mstart"
557 inkscape:isstock="true">
558 <path
559 transform="scale(0.6)"
560 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
561 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
562 id="path5283-2-4-93-9" />
563 </marker>
564 <marker
565 style="overflow:visible"
566 id="marker5285-17-9-3"
567 refX="0"
568 refY="0"
569 orient="auto"
570 inkscape:stockid="Arrow2Mstart"
571 inkscape:isstock="true">
572 <path
573 transform="scale(0.6)"
574 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
575 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
576 id="path5283-2-4-8" />
577 </marker>
578 <marker
579 style="overflow:visible"
580 id="marker5285-17-9-2-5"
581 refX="0"
582 refY="0"
583 orient="auto"
584 inkscape:stockid="Arrow2Mstart"
585 inkscape:isstock="true">
586 <path
587 transform="scale(0.6)"
588 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
589 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
590 id="path5283-2-4-93-6" />
591 </marker>
592 <marker
593 style="overflow:visible"
594 id="marker5285-17-6-1"
595 refX="0"
596 refY="0"
597 orient="auto"
598 inkscape:stockid="Arrow2Mstart"
599 inkscape:isstock="true">
600 <path
601 transform="scale(0.6)"
602 d="M 8.7185878,4.0337352 -2.2072895,0.01601326 8.7185884,-4.0017078 c -1.7454984,2.3720609 -1.7354408,5.6174519 -6e-7,8.035443 z"
603 style="fill:#000000;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:0.625;stroke-linejoin:round;stroke-opacity:1"
604 id="path5283-2-1-15" />
605 </marker>
606 </defs>
607 <rect
608 style="opacity:1;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:3.13104;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-opacity:0"
609 id="rect1"
610 width="734.5022"
611 height="529.77362"
612 x="1.56552"
613 y="1.56552" />
614 <g
615 inkscape:groupmode="layer"
616 inkscape:label="Image"
617 id="g10"
618 transform="translate(68.98512,13.653292)">
619 <text
620 xml:space="preserve"
621 style="font-weight:bold;font-size:42.5884px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
622 x="142.22464"
623 y="565.10297"
624 id="text907"><tspan
625 sodipodi:role="line"
626 id="tspan905"
627 x="142.22464"
628 y="565.10297" /></text>
629 <text
630 xml:space="preserve"
631 style="font-weight:bold;font-size:42.5884px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
632 x="98.363503"
633 y="637.8432"
634 id="text911"><tspan
635 sodipodi:role="line"
636 id="tspan909"
637 x="98.363503"
638 y="637.8432" /></text>
639 <text
640 xml:space="preserve"
641 style="font-weight:bold;font-size:42.5884px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
642 x="-59.575905"
643 y="580.05695"
644 id="text915"><tspan
645 sodipodi:role="line"
646 id="tspan913"
647 x="-59.575905"
648 y="580.05695" /></text>
649 <text
650 xml:space="preserve"
651 style="font-weight:bold;font-size:42.5884px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
652 x="313.46567"
653 y="412.9321"
654 id="text3781"><tspan
655 sodipodi:role="line"
656 id="tspan3779"
657 x="313.46567"
658 y="412.9321" /></text>
659 <g
660 id="g72820-3"
661 transform="matrix(3.2001899,0,0,4.5594279,-282.17456,-390.84179)">
662 <rect
663 style="fill:#00b0f0;fill-opacity:1;fill-rule:evenodd;stroke:#62a0ea;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
664 id="rect917-2-4-5-6"
665 width="196.16678"
666 height="68.896393"
667 x="71.68811"
668 y="122.33367"
669 ry="3.4538503" />
670 <rect
671 style="fill:#00b0f0;fill-opacity:1;fill-rule:evenodd;stroke:#62a0ea;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
672 id="rect917-2-4-5-6-5"
673 width="79.107689"
674 height="83.29377"
675 x="70.012787"
676 y="114.7747"
677 ry="4.1756063" />
678 </g>
679 <text
680 xml:space="preserve"
681 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:4.65542px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:0.3431px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
682 x="69.821327"
683 y="145.57741"
684 id="text1185-3-5-5-9-7"
685 transform="matrix(3.87937,0,0,3.7611867,-282.17456,-390.84179)"><tspan
686 sodipodi:role="line"
687 x="69.821327"
688 y="145.57741"
689 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:4.65542px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;stroke:none;stroke-width:0.3431px"
690 id="tspan60047-3">BitBake</tspan></text>
691 <path
692 style="fill:#808080;fill-rule:evenodd;stroke:#deddda;stroke-width:5.169;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1;marker-end:url(#marker5161-0)"
693 d="M 114.79948,320.82334 H 224.47382"
694 id="path5151-8"
695 inkscape:connector-type="polyline"
696 inkscape:connector-curvature="0" />
697 <text
698 xml:space="preserve"
699 style="font-weight:bold;font-size:42.5884px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L';letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:none;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
700 x="-16.290483"
701 y="345.7359"
702 id="text3116"><tspan
703 sodipodi:role="line"
704 id="tspan3114"
705 x="-16.290483"
706 y="345.7359" /></text>
707 <rect
708 style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:2.61112;stroke-dasharray:none;stroke-opacity:1"
709 id="rect917-0-6"
710 width="312.02957"
711 height="283.15833"
712 x="245.26863"
713 y="182.6216"
714 ry="14.195031" />
715 <rect
716 style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:1.55846;stroke-dasharray:none;stroke-opacity:1"
717 id="rect917-0-6-27"
718 width="252.62085"
719 height="124.59291"
720 x="-51.109352"
721 y="-3.2277274"
722 ry="6.245976" />
723 <g
724 id="g3"
725 transform="translate(11.726444,18.55249)">
726 <rect
727 style="fill:#a0a0a0;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
728 id="rect917-0-6-27-0"
729 width="77.51136"
730 height="60.565445"
731 x="-57.536053"
732 y="-15.779959"
733 ry="3.0362105" />
734 </g>
735 <rect
736 style="fill:#deddda;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
737 id="rect917-0-6-2"
738 width="270.26929"
739 height="236.56111"
740 x="265.73325"
741 y="207.73816"
742 ry="11.859063" />
743 <rect
744 style="fill:#deddda;fill-opacity:1;fill-rule:evenodd;stroke:#deddda;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
745 id="rect917-0-6-2-5"
746 width="209.80789"
747 height="236.56111"
748 x="-31.285583"
749 y="204.8772"
750 ry="11.859063" />
751 <g
752 id="g3-3"
753 transform="translate(93.245235,19.273036)">
754 <rect
755 style="fill:#a0a0a0;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
756 id="rect917-0-6-27-0-61"
757 width="77.51136"
758 height="60.565445"
759 x="-57.536053"
760 y="-15.779959"
761 ry="3.0362105" />
762 </g>
763 <text
764 xml:space="preserve"
765 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:11.5555px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
766 x="73.865288"
767 y="29.948204"
768 id="text1185-3-5-5-9-7-93-9"
769 transform="scale(1.0010629,0.99893822)"><tspan
770 sodipodi:role="line"
771 x="73.865288"
772 y="29.948204"
773 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:11.5555px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.42682px"
774 id="tspan2-9">Local</tspan><tspan
775 sodipodi:role="line"
776 x="73.865288"
777 y="44.392578"
778 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:11.5555px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.42682px"
779 id="tspan5">Projects</tspan></text>
780 <g
781 id="g3-3-4"
782 transform="translate(173.42759,19.774109)">
783 <rect
784 style="fill:#a0a0a0;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
785 id="rect917-0-6-27-0-61-7"
786 width="77.51136"
787 height="60.565445"
788 x="-57.536053"
789 y="-15.779959"
790 ry="3.0362105" />
791 </g>
792 <text
793 xml:space="preserve"
794 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:11.5555px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
795 x="155.51562"
796 y="30.276878"
797 id="text1185-3-5-5-9-7-93-9-4"
798 transform="scale(1.0010629,0.99893822)"><tspan
799 sodipodi:role="line"
800 x="155.51562"
801 y="30.276878"
802 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:11.5555px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.42682px"
803 id="tspan2-9-3">SCMs</tspan><tspan
804 sodipodi:role="line"
805 x="155.51562"
806 y="44.721252"
807 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:11.5555px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.42682px"
808 id="tspan7">(optional)</tspan></text>
809 <g
810 id="g3-3-0"
811 transform="matrix(3.0548289,0,0,0.817457,131.29913,79.564217)">
812 <rect
813 style="fill:#656565;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
814 id="rect917-0-6-27-0-61-6"
815 width="77.51136"
816 height="60.565445"
817 x="-57.536053"
818 y="-15.779959"
819 ry="2.4245923"
820 rx="0.72017127" />
821 </g>
822 <rect
823 style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
824 id="rect917-0-6-27-0-6-3"
825 width="19.926487"
826 height="18.934353"
827 x="31.653898"
828 y="42.728382"
829 ry="0"
830 transform="rotate(43.365087)" />
831 <rect
832 style="fill:#a1a1a1;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
833 id="rect917-0-6-27-0-6-3-2"
834 width="19.926487"
835 height="18.934353"
836 x="29.538702"
837 y="40.496868"
838 ry="0"
839 transform="rotate(43.365087)" />
840 <rect
841 style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
842 id="rect917-0-6-27-0-6-3-5"
843 width="19.926487"
844 height="18.934353"
845 x="89.532135"
846 y="-11.778489"
847 ry="0"
848 transform="rotate(43.365087)" />
849 <rect
850 style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
851 id="rect917-0-6-27-0-6-3-5-4"
852 width="19.926487"
853 height="18.934353"
854 x="135.56271"
855 y="34.25806"
856 ry="0"
857 transform="rotate(43.365087)" />
858 <rect
859 style="fill:#00b0f0;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
860 id="rect917-0-6-27-0-6-3-5-4-2"
861 width="19.926487"
862 height="18.934353"
863 x="183.02675"
864 y="88.416168"
865 ry="0"
866 transform="rotate(43.365087)" />
867 <rect
868 style="fill:#dddcd9;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
869 id="rect917-0-6-27-0-6-3-5-4-2-5"
870 width="19.926487"
871 height="18.934353"
872 x="348.36118"
873 y="259.42044"
874 ry="0"
875 transform="rotate(43.365087)" />
876 <rect
877 style="fill:#a1a1a1;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
878 id="rect917-0-6-27-0-6-3-2-4"
879 width="19.926487"
880 height="18.934353"
881 x="87.416931"
882 y="-14.010006"
883 ry="0"
884 transform="rotate(43.365087)" />
885 <rect
886 style="fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
887 id="rect917-0-6-27-0-6-3-5-7"
888 width="19.926487"
889 height="18.934353"
890 x="148.05835"
891 y="-67.066444"
892 ry="0"
893 transform="rotate(43.365087)" />
894 <rect
895 style="fill:#a1a1a1;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
896 id="rect917-0-6-27-0-6-3-2-4-6"
897 width="19.926487"
898 height="18.934353"
899 x="145.94316"
900 y="-69.297958"
901 ry="0"
902 transform="rotate(43.365087)" />
903 <rect
904 style="fill:#666666;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1"
905 id="rect917-0-6-27-0-6-3-2-4-6-7"
906 width="19.926487"
907 height="18.934353"
908 x="124.58775"
909 y="22.903889"
910 ry="0"
911 transform="rotate(43.365087)" />
912 <text
913 xml:space="preserve"
914 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:13.3333px;line-height:119%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
915 x="314.59457"
916 y="200.0639"
917 id="text1185-3-5-5-9-7-9"
918 transform="scale(1.0010629,0.99893822)"><tspan
919 sodipodi:role="line"
920 x="314.59457"
921 y="200.0639"
922 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:13.3333px;line-height:119%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;stroke:none;stroke-width:1.42682px"
923 id="tspan60047-3-1">Build Directory</tspan></text>
924 <text
925 xml:space="preserve"
926 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:11.5555px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
927 x="-6.3590012"
928 y="22.655539"
929 id="text1185-3-5-5-9-7-93"
930 transform="scale(1.0010629,0.99893822)"><tspan
931 sodipodi:role="line"
932 x="-6.3590016"
933 y="22.655539"
934 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:11.5555px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.42682px"
935 id="tspan60047-3-6">Upstream</tspan><tspan
936 sodipodi:role="line"
937 x="-6.3590007"
938 y="37.099915"
939 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:11.5555px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.42682px"
940 id="tspan1">Project</tspan><tspan
941 sodipodi:role="line"
942 x="-6.3590016"
943 y="51.544289"
944 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:11.5555px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.42682px"
945 id="tspan2">Releases</tspan></text>
946 <rect
947 style="fill:#92d050;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
948 id="rect917-0-6-2-5-4"
949 width="124.81644"
950 height="54.485943"
951 x="11.963439"
952 y="273.53632" />
953 <rect
954 style="fill:#92d050;fill-opacity:1;fill-rule:evenodd;stroke:#9a9996;stroke-width:0;stroke-dasharray:none;stroke-opacity:1"
955 id="rect917-0-6-2-5-4-4"
956 width="124.81644"
957 height="54.485943"
958 x="12.600782"
959 y="339.24234" />
960 <text
961 xml:space="preserve"
962 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:13.3333px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
963 x="71.431915"
964 y="260.24667"
965 id="text1185-3-5-5-9-7-4"
966 transform="scale(1.0010629,0.99893822)"><tspan
967 sodipodi:role="line"
968 x="71.431915"
969 y="260.24667"
970 style="font-style:normal;font-variant:normal;font-weight:bold;font-stretch:normal;font-size:13.3333px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Bold';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;stroke:none;stroke-width:1.42682px"
971 id="tspan60047-3-7">Source Fetching</tspan></text>
972 <text
973 xml:space="preserve"
974 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:11.5555px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
975 x="73.987274"
976 y="306.36258"
977 id="text1185-3-5-5-9-7-4-3"
978 transform="scale(1.0010629,0.99893822)"><tspan
979 sodipodi:role="line"
980 x="73.987274"
981 y="306.36258"
982 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:11.5555px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;stroke:none;stroke-width:1.42682px"
983 id="tspan60047-3-7-0">do_fetch</tspan></text>
984 <text
985 xml:space="preserve"
986 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;line-height:125%;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;text-anchor:start;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
987 x="281.13275"
988 y="250.71086"
989 id="text1185-3-5-5-9-7-4-3-6"
990 transform="scale(1.0010629,0.99893822)"><tspan
991 sodipodi:role="line"
992 x="281.13275"
993 y="250.71086"
994 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
995 id="tspan4">tmp &lt;──────────────────────────────────────────── TMPDIR</tspan><tspan
996 sodipodi:role="line"
997 x="281.13275"
998 y="264.04425"
999 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1000 id="tspan6"> work</tspan><tspan
1001 sodipodi:role="line"
1002 x="281.13275"
1003 y="277.37762"
1004 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1005 id="tspan12"> ${PACKAGE_ARCH}-poky-${TARGET_OS}</tspan><tspan
1006 sodipodi:role="line"
1007 x="281.13275"
1008 y="290.711"
1009 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1010 id="tspan20"> ${PN}</tspan><tspan
1011 sodipodi:role="line"
1012 x="281.13275"
1013 y="304.04437"
1014 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1015 id="tspan21"> ${PV} &lt;────────────────────────────────── WORKDIR</tspan><tspan
1016 sodipodi:role="line"
1017 x="281.13275"
1018 y="317.37775"
1019 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1020 id="tspan22"> sources &lt;────────────────────────────── UNPACKDIR</tspan><tspan
1021 sodipodi:role="line"
1022 x="281.13275"
1023 y="330.71112"
1024 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1025 id="tspan32"> ${BP} &lt;────────────────────────────── S</tspan><tspan
1026 sodipodi:role="line"
1027 x="281.13275"
1028 y="344.04449"
1029 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1030 id="tspan33"> ${MACHINE}-poky-${TARGET_OS}</tspan><tspan
1031 sodipodi:role="line"
1032 x="281.13275"
1033 y="357.37787"
1034 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1035 id="tspan34"> ${PN}</tspan><tspan
1036 sodipodi:role="line"
1037 x="281.13275"
1038 y="370.71124"
1039 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1040 id="tspan35"> ${PV} &lt;────────────────────────────────── WORKDIR</tspan><tspan
1041 sodipodi:role="line"
1042 x="281.13275"
1043 y="384.04462"
1044 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1045 id="tspan36"> sources &lt;────────────────────────────── UNPACKDIR</tspan><tspan
1046 sodipodi:role="line"
1047 x="281.13275"
1048 y="397.37799"
1049 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:start;text-anchor:start;stroke:none;stroke-width:1.42682px"
1050 id="tspan44"> ${BP} &lt;────────────────────────────── S</tspan></text>
1051 <text
1052 xml:space="preserve"
1053 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:11.5555px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1054 x="74.144165"
1055 y="368.55737"
1056 id="text1185-3-5-5-9-7-4-3-7"
1057 transform="scale(1.0010629,0.99893822)"><tspan
1058 sodipodi:role="line"
1059 x="74.144165"
1060 y="368.55737"
1061 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:11.5555px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;stroke:none;stroke-width:1.42682px"
1062 id="tspan60047-3-7-0-8">do_unpack</tspan><tspan
1063 sodipodi:role="line"
1064 x="74.144165"
1065 y="383.00174"
1066 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:11.5555px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;stroke:none;stroke-width:1.42682px"
1067 id="tspan8" /></text>
1068 <text
1069 xml:space="preserve"
1070 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:11.5555px;line-height:125%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;letter-spacing:0px;word-spacing:0px;writing-mode:lr-tb;fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1.42682px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1071 x="73.394455"
1072 y="97.290146"
1073 id="text1185-3-5-5-9-7-93-9-5"
1074 transform="scale(1.0010629,0.99893822)"><tspan
1075 sodipodi:role="line"
1076 x="73.394455"
1077 y="97.290146"
1078 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:11.5555px;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L, Normal';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:center;text-anchor:middle;fill:#ffffff;fill-opacity:1;stroke:none;stroke-width:1.42682px"
1079 id="tspan5-9">Source Mirror(s)</tspan></text>
1080 <text
1081 xml:space="preserve"
1082 transform="translate(-82.778014,-165.84268)"
1083 id="text2"
1084 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;line-height:119%;font-family:'Nimbus Sans L';-inkscape-font-specification:'Nimbus Sans L';text-align:start;writing-mode:lr-tb;direction:ltr;white-space:pre;shape-inside:url(#rect2);display:inline;fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none" />
1085 <text
1086 xml:space="preserve"
1087 transform="translate(-82.778014,-165.84268)"
1088 id="text28"
1089 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:10.6667px;line-height:119%;font-family:'Nimbus Mono PS';-inkscape-font-specification:'Nimbus Mono PS';text-align:start;writing-mode:lr-tb;direction:ltr;white-space:pre;shape-inside:url(#rect28);display:inline;fill:#808080;fill-opacity:1;stroke:#deddda;stroke-width:1.893;stroke-linecap:butt;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-dasharray:none;stroke-opacity:1" />
1090 </g>
1091 <style
1092 type="text/css"
1093 id="style1021"> .st0{fill:#4A97D2;} .st1{fill:#333333;} </style>
1094</svg>
diff --git a/documentation/overview-manual/yp-intro.rst b/documentation/overview-manual/yp-intro.rst
index 0ec7e2b961..40e9693a8d 100644
--- a/documentation/overview-manual/yp-intro.rst
+++ b/documentation/overview-manual/yp-intro.rst
@@ -24,7 +24,7 @@ software customizations and build interchange for multiple hardware
24platforms as well as software stacks that can be maintained and scaled. 24platforms as well as software stacks that can be maintained and scaled.
25 25
26.. image:: figures/key-dev-elements.png 26.. image:: figures/key-dev-elements.png
27 :align: center 27 :width: 100%
28 28
29For further introductory information on the Yocto Project, you might be 29For further introductory information on the Yocto Project, you might be
30interested in this 30interested in this
@@ -38,23 +38,24 @@ to the Yocto Project.
38Features 38Features
39-------- 39--------
40 40
41The following list describes features and advantages of the Yocto 41Here are features and advantages of the Yocto Project:
42Project:
43 42
44- *Widely Adopted Across the Industry:* Semiconductor, operating 43- *Widely Adopted Across the Industry:* Many semiconductor, operating
45 system, software, and service vendors exist whose products and 44 system, software, and service vendors adopt and support the Yocto
46 services adopt and support the Yocto Project. For a look at the Yocto 45 Project in their products and services. For a look at the Yocto
47 Project community and the companies involved with the Yocto Project, 46 Project community and the companies involved with the Yocto Project,
48 see the "COMMUNITY" and "ECOSYSTEM" tabs on the 47 see the "COMMUNITY" and "ECOSYSTEM" tabs on the
49 :yocto_home:`Yocto Project <>` home page. 48 :yocto_home:`Yocto Project <>` home page.
50 49
51- *Architecture Agnostic:* Yocto Project supports Intel, ARM, MIPS, 50- *Architecture Agnostic:* Yocto Project supports Intel, ARM, MIPS, AMD, PPC,
52 AMD, PPC and other architectures. Most ODMs, OSVs, and chip vendors 51 RISC-V and other architectures. Most ODMs, OSVs, and chip vendors create and
53 create and supply BSPs that support their hardware. If you have 52 supply BSPs that support their hardware. If you have custom silicon, you can
54 custom silicon, you can create a BSP that supports that architecture. 53 create a BSP that supports that architecture. See
54 :doc:`/ref-manual/yocto-project-supported-features` for details on the level
55 of support for some of these architectures.
55 56
56 Aside from lots of architecture support, the Yocto Project fully 57 Aside from broad architecture support, the Yocto Project fully
57 supports a wide range of device emulation through the Quick EMUlator 58 supports a wide range of devices emulated by the Quick EMUlator
58 (QEMU). 59 (QEMU).
59 60
60- *Images and Code Transfer Easily:* Yocto Project output can easily 61- *Images and Code Transfer Easily:* Yocto Project output can easily
@@ -78,10 +79,10 @@ Project:
78 you need for embedded devices. You only add the feature support or 79 you need for embedded devices. You only add the feature support or
79 packages that you absolutely need for the device. For devices that 80 packages that you absolutely need for the device. For devices that
80 have display hardware, you can use available system components such 81 have display hardware, you can use available system components such
81 as X11, GTK+, Qt, Clutter, and SDL (among others) to create a rich 82 as X11, Wayland, GTK+, Qt, Clutter, and SDL (among others) to create
82 user experience. For devices that do not have a display or where you 83 a rich user experience. For devices that do not have a display or
83 want to use alternative UI frameworks, you can choose to not install 84 where you want to use alternative UI frameworks, you can choose to
84 these components. 85 not build these components.
85 86
86- *Comprehensive Toolchain Capabilities:* Toolchains for supported 87- *Comprehensive Toolchain Capabilities:* Toolchains for supported
87 architectures satisfy most use cases. However, if your hardware 88 architectures satisfy most use cases. However, if your hardware
@@ -96,18 +97,18 @@ Project:
96 of your design instead of adopting decisions enforced by some system 97 of your design instead of adopting decisions enforced by some system
97 software provider. 98 software provider.
98 99
99- *Uses a Layer Model:* The Yocto Project `layer 100- *Uses a Layer Model:* The Yocto Project :ref:`layer
100 infrastructure <#the-yocto-project-layer-model>`__ groups related 101 infrastructure <overview-manual/yp-intro:the yocto project layer model>`
101 functionality into separate bundles. You can incrementally add these 102 groups related functionality into separate bundles. You can incrementally
102 grouped functionalities to your project as needed. Using layers to 103 add these grouped functionalities to your project as needed. Using layers to
103 isolate and group functionality reduces project complexity and 104 isolate and group functionality reduces project complexity and
104 redundancy, allows you to easily extend the system, make 105 redundancy, allows you to easily extend the system, make
105 customizations, and keep functionality organized. 106 customizations, and keep functionality organized.
106 107
107- *Supports Partial Builds:* You can build and rebuild individual 108- *Supports Partial Builds:* You can build and rebuild individual
108 packages as needed. Yocto Project accomplishes this through its 109 packages as needed. Yocto Project accomplishes this through its
109 `shared-state cache <#shared-state-cache>`__ (sstate) scheme. Being 110 :ref:`overview-manual/concepts:shared state cache` (sstate) scheme.
110 able to build and debug components individually eases project 111 Being able to build and debug components individually eases project
111 development. 112 development.
112 113
113- *Releases According to a Strict Schedule:* Major releases occur on a 114- *Releases According to a Strict Schedule:* Major releases occur on a
@@ -130,20 +131,18 @@ Project:
130 arbitrarily include packages. 131 arbitrarily include packages.
131 132
132- *License Manifest:* The Yocto Project provides a :ref:`license 133- *License Manifest:* The Yocto Project provides a :ref:`license
133 manifest <dev-manual/common-tasks:maintaining open source license compliance during your product's lifecycle>` 134 manifest <dev-manual/licenses:maintaining open source license compliance during your product's lifecycle>`
134 for review by people who need to track the use of open source 135 for review by people who need to track the use of open source
135 licenses (e.g. legal teams). 136 licenses (e.g. legal teams).
136 137
137Challenges 138Challenges
138---------- 139----------
139 140
140The following list presents challenges you might encounter when 141Here are challenges you might encounter when developing using the Yocto Project:
141developing using the Yocto Project:
142 142
143- *Steep Learning Curve:* The Yocto Project has a steep learning curve 143- *Steep Learning Curve:* The Yocto Project has a steep learning curve
144 and has many different ways to accomplish similar tasks. It can be 144 and has many different ways to accomplish similar tasks. It can be
145 difficult to choose how to proceed when varying methods exist by 145 difficult to choose between such ways.
146 which to accomplish a given task.
147 146
148- *Understanding What Changes You Need to Make For Your Design Requires 147- *Understanding What Changes You Need to Make For Your Design Requires
149 Some Research:* Beyond the simple tutorial stage, understanding what 148 Some Research:* Beyond the simple tutorial stage, understanding what
@@ -154,10 +153,11 @@ developing using the Yocto Project:
154 ":ref:`transitioning-to-a-custom-environment:transitioning to a custom environment for systems development`" 153 ":ref:`transitioning-to-a-custom-environment:transitioning to a custom environment for systems development`"
155 documents on the Yocto Project website. 154 documents on the Yocto Project website.
156 155
157- *Project Workflow Could Be Confusing:* The `Yocto Project 156- *Project Workflow Could Be Confusing:* The :ref:`Yocto Project
158 workflow <#overview-development-environment>`__ could be confusing if 157 workflow <overview-manual/development-environment:the yocto project development environment>`
159 you are used to traditional desktop and server software development. 158 could be confusing if you are used to traditional desktop and server
160 In a desktop development environment, mechanisms exist to easily pull 159 software development.
160 In a desktop development environment, there are mechanisms to easily pull
161 and install new packages, which are typically pre-compiled binaries 161 and install new packages, which are typically pre-compiled binaries
162 from servers accessible over the Internet. Using the Yocto Project, 162 from servers accessible over the Internet. Using the Yocto Project,
163 you must modify your configuration and rebuild to add additional 163 you must modify your configuration and rebuild to add additional
@@ -219,15 +219,15 @@ your Metadata, the easier it is to cope with future changes.
219 - Use Board Support Package (BSP) layers from silicon vendors when 219 - Use Board Support Package (BSP) layers from silicon vendors when
220 possible. 220 possible.
221 221
222 - Familiarize yourself with the `Yocto Project curated layer 222 - Familiarize yourself with the
223 index <https://www.yoctoproject.org/software-overview/layers/>`__ 223 :yocto_home:`Yocto Project Compatible Layers </software-overview/layers/>`
224 or the :oe_layerindex:`OpenEmbedded layer index <>`. 224 or the :oe_layerindex:`OpenEmbedded Layer Index <>`.
225 The latter contains more layers but they are less universally 225 The latter contains more layers but they are less universally
226 validated. 226 validated.
227 227
228 - Layers support the inclusion of technologies, hardware components, 228 - Layers support the inclusion of technologies, hardware components,
229 and software components. The :ref:`Yocto Project 229 and software components. The :ref:`Yocto Project
230 Compatible <dev-manual/common-tasks:making sure your layer is compatible with yocto project>` 230 Compatible <dev-manual/layers:making sure your layer is compatible with yocto project>`
231 designation provides a minimum level of standardization that 231 designation provides a minimum level of standardization that
232 contributes to a strong ecosystem. "YP Compatible" is applied to 232 contributes to a strong ecosystem. "YP Compatible" is applied to
233 appropriate products and software components such as BSPs, other 233 appropriate products and software components such as BSPs, other
@@ -250,8 +250,7 @@ accomplish this through a recipe that is a BitBake append
250.. note:: 250.. note::
251 251
252 For general information on BSP layer structure, see the 252 For general information on BSP layer structure, see the
253 :doc:`/bsp-guide/index` 253 :doc:`/bsp-guide/index`.
254 .
255 254
256The :term:`Source Directory` 255The :term:`Source Directory`
257contains both general layers and BSP layers right out of the box. You 256contains both general layers and BSP layers right out of the box. You
@@ -262,8 +261,7 @@ with the string ``meta-``.
262.. note:: 261.. note::
263 262
264 It is not a requirement that a layer name begin with the prefix 263 It is not a requirement that a layer name begin with the prefix
265 meta- 264 ``meta-``, but it is a commonly accepted standard in the Yocto Project
266 , but it is a commonly accepted standard in the Yocto Project
267 community. 265 community.
268 266
269For example, if you were to examine the :yocto_git:`tree view </poky/tree/>` 267For example, if you were to examine the :yocto_git:`tree view </poky/tree/>`
@@ -272,8 +270,8 @@ of the ``poky`` repository, you will see several layers: ``meta``,
272``meta-yocto-bsp``. Each of these repositories represents a distinct 270``meta-yocto-bsp``. Each of these repositories represents a distinct
273layer. 271layer.
274 272
275For procedures on how to create layers, see the 273For procedures on how to create layers, see the
276":ref:`dev-manual/common-tasks:understanding and creating layers`" 274":ref:`dev-manual/layers:understanding and creating layers`"
277section in the Yocto Project Development Tasks Manual. 275section in the Yocto Project Development Tasks Manual.
278 276
279Components and Tools 277Components and Tools
@@ -283,8 +281,7 @@ The Yocto Project employs a collection of components and tools used by
283the project itself, by project developers, and by those using the Yocto 281the project itself, by project developers, and by those using the Yocto
284Project. These components and tools are open source projects and 282Project. These components and tools are open source projects and
285metadata that are separate from the reference distribution 283metadata that are separate from the reference distribution
286(:term:`Poky`) and the 284(:term:`Poky`) and the :term:`OpenEmbedded Build System`. Most of the
287:term:`OpenEmbedded Build System`. Most of the
288components and tools are downloaded separately. 285components and tools are downloaded separately.
289 286
290This section provides brief overviews of the components and tools 287This section provides brief overviews of the components and tools
@@ -293,8 +290,8 @@ associated with the Yocto Project.
293Development Tools 290Development Tools
294----------------- 291-----------------
295 292
296The following list consists of tools that help you develop images and 293Here are tools that help you develop images and applications using
297applications using the Yocto Project: 294the Yocto Project:
298 295
299- *CROPS:* `CROPS <https://github.com/crops/poky-container/>`__ is an 296- *CROPS:* `CROPS <https://github.com/crops/poky-container/>`__ is an
300 open source, cross-platform development framework that leverages 297 open source, cross-platform development framework that leverages
@@ -325,7 +322,7 @@ applications using the Yocto Project:
325 322
326 You can read about the ``devtool`` workflow in the Yocto Project 323 You can read about the ``devtool`` workflow in the Yocto Project
327 Application Development and Extensible Software Development Kit 324 Application Development and Extensible Software Development Kit
328 (eSDK) Manual in the 325 (eSDK) Manual in the
329 ":ref:`sdk-manual/extensible:using \`\`devtool\`\` in your sdk workflow`" 326 ":ref:`sdk-manual/extensible:using \`\`devtool\`\` in your sdk workflow`"
330 section. 327 section.
331 328
@@ -345,18 +342,30 @@ applications using the Yocto Project:
345 view information about builds. For information on Toaster, see the 342 view information about builds. For information on Toaster, see the
346 :doc:`/toaster-manual/index`. 343 :doc:`/toaster-manual/index`.
347 344
345- *VSCode IDE Extension:* The `Yocto Project BitBake
346 <https://marketplace.visualstudio.com/items?itemName=yocto-project.yocto-bitbake>`__
347 extension for Visual Studio Code provides a rich set of features for working
348 with BitBake recipes. The extension provides syntax highlighting,
349 hover tips, and completion for BitBake files as well as embedded Python and
350 Bash languages. Additional views and commands allow you to efficiently
351 browse, build and edit recipes. It also provides SDK integration for
352 cross-compiling and debugging through ``devtool``.
353
354 Learn more about the VSCode Extension on the `extension's frontpage
355 <https://marketplace.visualstudio.com/items?itemName=yocto-project.yocto-bitbake>`__.
356
348Production Tools 357Production Tools
349---------------- 358----------------
350 359
351The following list consists of tools that help production related 360Here are tools that help with production related activities using the
352activities using the Yocto Project: 361Yocto Project:
353 362
354- *Auto Upgrade Helper:* This utility when used in conjunction with the 363- *Auto Upgrade Helper:* This utility when used in conjunction with the
355 :term:`OpenEmbedded Build System` 364 :term:`OpenEmbedded Build System`
356 (BitBake and 365 (BitBake and
357 OE-Core) automatically generates upgrades for recipes that are based 366 OE-Core) automatically generates upgrades for recipes that are based
358 on new versions of the recipes published upstream. See 367 on new versions of the recipes published upstream. See
359 :ref:`dev-manual/common-tasks:using the auto upgrade helper (auh)` 368 :ref:`dev-manual/upgrading-recipes:using the auto upgrade helper (auh)`
360 for how to set it up. 369 for how to set it up.
361 370
362- *Recipe Reporting System:* The Recipe Reporting System tracks recipe 371- *Recipe Reporting System:* The Recipe Reporting System tracks recipe
@@ -366,7 +375,7 @@ activities using the Yocto Project:
366 of the :oe_layerindex:`OpenEmbedded Layer Index <>`, which 375 of the :oe_layerindex:`OpenEmbedded Layer Index <>`, which
367 is a website that indexes OpenEmbedded-Core layers. 376 is a website that indexes OpenEmbedded-Core layers.
368 377
369- *Patchwork:* `Patchwork <http://jk.ozlabs.org/projects/patchwork/>`__ 378- *Patchwork:* `Patchwork <https://patchwork.yoctoproject.org/>`__
370 is a fork of a project originally started by 379 is a fork of a project originally started by
371 `OzLabs <https://ozlabs.org/>`__. The project is a web-based tracking 380 `OzLabs <https://ozlabs.org/>`__. The project is a web-based tracking
372 system designed to streamline the process of bringing contributions 381 system designed to streamline the process of bringing contributions
@@ -376,7 +385,7 @@ activities using the Yocto Project:
376 385
377- *AutoBuilder:* AutoBuilder is a project that automates build tests 386- *AutoBuilder:* AutoBuilder is a project that automates build tests
378 and quality assurance (QA). By using the public AutoBuilder, anyone 387 and quality assurance (QA). By using the public AutoBuilder, anyone
379 can determine the status of the current "master" branch of Poky. 388 can determine the status of the current development branch of Poky.
380 389
381 .. note:: 390 .. note::
382 391
@@ -392,58 +401,27 @@ activities using the Yocto Project:
392 You can learn more about the AutoBuilder used by the Yocto Project 401 You can learn more about the AutoBuilder used by the Yocto Project
393 Autobuilder :doc:`here </test-manual/understand-autobuilder>`. 402 Autobuilder :doc:`here </test-manual/understand-autobuilder>`.
394 403
395- *Cross-Prelink:* Prelinking is the process of pre-computing the load
396 addresses and link tables generated by the dynamic linker as compared
397 to doing this at runtime. Doing this ahead of time results in
398 performance improvements when the application is launched and reduced
399 memory usage for libraries shared by many applications.
400
401 Historically, cross-prelink is a variant of prelink, which was
402 conceived by `Jakub
403 Jelínek <https://people.redhat.com/jakub/prelink.pdf>`__ a number of
404 years ago. Both prelink and cross-prelink are maintained in the same
405 repository albeit on separate branches. By providing an emulated
406 runtime dynamic linker (i.e. ``glibc``-derived ``ld.so`` emulation),
407 the cross-prelink project extends the prelink software's ability to
408 prelink a sysroot environment. Additionally, the cross-prelink
409 software enables the ability to work in sysroot style environments.
410
411 The dynamic linker determines standard load address calculations
412 based on a variety of factors such as mapping addresses, library
413 usage, and library function conflicts. The prelink tool uses this
414 information, from the dynamic linker, to determine unique load
415 addresses for executable and linkable format (ELF) binaries that are
416 shared libraries and dynamically linked. The prelink tool modifies
417 these ELF binaries with the pre-computed information. The result is
418 faster loading and often lower memory consumption because more of the
419 library code can be re-used from shared Copy-On-Write (COW) pages.
420
421 The original upstream prelink project only supports running prelink
422 on the end target device due to the reliance on the target device's
423 dynamic linker. This restriction causes issues when developing a
424 cross-compiled system. The cross-prelink adds a synthesized dynamic
425 loader that runs on the host, thus permitting cross-prelinking
426 without ever having to run on a read-write target filesystem.
427
428- *Pseudo:* Pseudo is the Yocto Project implementation of 404- *Pseudo:* Pseudo is the Yocto Project implementation of
429 `fakeroot <http://man.he.net/man1/fakeroot>`__, which is used to run 405 :manpage:`fakeroot <fakeroot(1)>`, which is used to run
430 commands in an environment that seemingly has root privileges. 406 commands in an environment that seemingly has root privileges.
431 407
432 During a build, it can be necessary to perform operations that 408 During a build, it can be necessary to perform operations that
433 require system administrator privileges. For example, file ownership 409 require system administrator privileges. For example, file ownership
434 or permissions might need definition. Pseudo is a tool that you can 410 or permissions might need to be defined. Pseudo is a tool that you
435 either use directly or through the environment variable 411 can either use directly or through the environment variable
436 ``LD_PRELOAD``. Either method allows these operations to succeed as 412 ``LD_PRELOAD``. Either method allows these operations to succeed
437 if system administrator privileges exist even when they do not. 413 even without system administrator privileges.
438 414
439 You can read more about Pseudo in the "`Fakeroot and 415 Thanks to Pseudo, the Yocto Project never needs root privileges to
440 Pseudo <#fakeroot-and-pseudo>`__" section. 416 build images for your target system.
417
418 You can read more about Pseudo in the
419 ":ref:`overview-manual/concepts:fakeroot and pseudo`" section.
441 420
442Open-Embedded Build System Components 421Open-Embedded Build System Components
443------------------------------------- 422-------------------------------------
444 423
445The following list consists of components associated with the 424Here are components associated with the :term:`OpenEmbedded Build System`:
446:term:`OpenEmbedded Build System`:
447 425
448- *BitBake:* BitBake is a core component of the Yocto Project and is 426- *BitBake:* BitBake is a core component of the Yocto Project and is
449 used by the OpenEmbedded build system to build images. While BitBake 427 used by the OpenEmbedded build system to build images. While BitBake
@@ -479,9 +457,9 @@ The following list consists of components associated with the
479 457
480 Sharing a core set of metadata results in Poky as an integration 458 Sharing a core set of metadata results in Poky as an integration
481 layer on top of OE-Core. You can see that in this 459 layer on top of OE-Core. You can see that in this
482 `figure <#yp-key-dev-elements>`__. The Yocto Project combines various 460 :ref:`figure <overview-manual/yp-intro:what is the yocto project?>`.
483 components such as BitBake, OE-Core, script "glue", and documentation 461 The Yocto Project combines various components such as BitBake, OE-Core,
484 for its build system. 462 script "glue", and documentation for its build system.
485 463
486Reference Distribution (Poky) 464Reference Distribution (Poky)
487----------------------------- 465-----------------------------
@@ -489,8 +467,8 @@ Reference Distribution (Poky)
489Poky is the Yocto Project reference distribution. It contains the 467Poky is the Yocto Project reference distribution. It contains the
490:term:`OpenEmbedded Build System` 468:term:`OpenEmbedded Build System`
491(BitBake and OE-Core) as well as a set of metadata to get you started 469(BitBake and OE-Core) as well as a set of metadata to get you started
492building your own distribution. See the 470building your own distribution. See the figure in
493`figure <#what-is-the-yocto-project>`__ in "What is the Yocto Project?" 471":ref:`overview-manual/yp-intro:what is the yocto project?`"
494section for an illustration that shows Poky and its relationship with 472section for an illustration that shows Poky and its relationship with
495other parts of the Yocto Project. 473other parts of the Yocto Project.
496 474
@@ -502,14 +480,14 @@ To use the Yocto Project tools and components, you can download
502 Poky does not contain binary files. It is a working example of how to 480 Poky does not contain binary files. It is a working example of how to
503 build your own custom Linux distribution from source. 481 build your own custom Linux distribution from source.
504 482
505You can read more about Poky in the "`Reference Embedded Distribution 483You can read more about Poky in the
506(Poky) <#reference-embedded-distribution>`__" section. 484":ref:`overview-manual/yp-intro:reference embedded distribution (poky)`"
485section.
507 486
508Packages for Finished Targets 487Packages for Finished Targets
509----------------------------- 488-----------------------------
510 489
511The following lists components associated with packages for finished 490Here are components associated with packages for finished targets:
512targets:
513 491
514- *Matchbox:* Matchbox is an Open Source, base environment for the X 492- *Matchbox:* Matchbox is an Open Source, base environment for the X
515 Window System running on non-desktop, embedded platforms such as 493 Window System running on non-desktop, embedded platforms such as
@@ -553,35 +531,34 @@ Historically, the Build Appliance was the second of three methods by
553which you could use the Yocto Project on a system that was not native to 531which you could use the Yocto Project on a system that was not native to
554Linux. 532Linux.
555 533
5561. *Hob:* Hob, which is now deprecated and is no longer available since 534#. *Hob:* Hob, which is now deprecated and is no longer available since
557 the 2.1 release of the Yocto Project provided a rudimentary, 535 the 2.1 release of the Yocto Project provided a rudimentary,
558 GUI-based interface to the Yocto Project. Toaster has fully replaced 536 GUI-based interface to the Yocto Project. Toaster has fully replaced
559 Hob. 537 Hob.
560 538
5612. *Build Appliance:* Post Hob, the Build Appliance became available. It 539#. *Build Appliance:* Post Hob, the Build Appliance became available. It
562 was never recommended that you use the Build Appliance as a 540 was never recommended that you use the Build Appliance as a
563 day-to-day production development environment with the Yocto Project. 541 day-to-day production development environment with the Yocto Project.
564 Build Appliance was useful as a way to try out development in the 542 Build Appliance was useful as a way to try out development in the
565 Yocto Project environment. 543 Yocto Project environment.
566 544
5673. *CROPS:* The final and best solution available now for developing 545#. *CROPS:* The final and best solution available now for developing
568 using the Yocto Project on a system not native to Linux is with 546 using the Yocto Project on a system not native to Linux is with
569 `CROPS <#gs-crops-overview>`__. 547 :ref:`CROPS <overview-manual/yp-intro:development tools>`.
570 548
571Development Methods 549Development Methods
572=================== 550===================
573 551
574The Yocto Project development environment usually involves a 552The Yocto Project development environment usually involves a
575:term:`Build Host` and target 553:term:`Build Host` and target
576hardware. You use the Build Host to build images and develop 554hardware. You use the Build Host to build images and develop
577applications, while you use the target hardware to test deployed 555applications, while you use the target hardware to execute deployed
578software. 556software.
579 557
580This section provides an introduction to the choices or development 558This section provides an introduction to the choices or development
581methods you have when setting up your Build Host. Depending on the your 559methods you have when setting up your Build Host. Depending on your
582particular workflow preference and the type of operating system your 560particular workflow preference and the type of operating system your
583Build Host runs, several choices exist that allow you to use the Yocto 561Build Host runs, you have several choices.
584Project.
585 562
586.. note:: 563.. note::
587 564
@@ -593,11 +570,11 @@ Project.
593 system running Linux as its native operating system allows you to 570 system running Linux as its native operating system allows you to
594 develop software by directly using the 571 develop software by directly using the
595 :term:`BitBake` tool. You can 572 :term:`BitBake` tool. You can
596 accomplish all aspects of development from a familiar shell of a 573 accomplish all aspects of development from a regular shell in a
597 supported Linux distribution. 574 supported Linux distribution.
598 575
599 For information on how to set up a Build Host on a system running 576 For information on how to set up a Build Host on a system running
600 Linux as its native operating system, see the 577 Linux as its native operating system, see the
601 ":ref:`dev-manual/start:setting up a native linux host`" 578 ":ref:`dev-manual/start:setting up a native linux host`"
602 section in the Yocto Project Development Tasks Manual. 579 section in the Yocto Project Development Tasks Manual.
603 580
@@ -621,47 +598,46 @@ Project.
621 ":ref:`dev-manual/start:setting up to use cross platforms (crops)`" 598 ":ref:`dev-manual/start:setting up to use cross platforms (crops)`"
622 section in the Yocto Project Development Tasks Manual. 599 section in the Yocto Project Development Tasks Manual.
623 600
624- *Windows Subsystem For Linux (WSLv2):* You may use Windows Subsystem 601- *Windows Subsystem For Linux (WSL 2):* You may use Windows Subsystem
625 For Linux v2 to set up a build host using Windows 10. 602 For Linux version 2 to set up a Build Host using Windows 10 or later,
626 603 or Windows Server 2019 or later.
627 .. note::
628
629 The Yocto Project is not compatible with WSLv1, it is compatible
630 but not officially supported nor validated with WSLv2, if you
631 still decide to use WSL please upgrade to WSLv2.
632 604
633 The Windows Subsystem For Linux allows Windows 10 to run a real Linux 605 The Windows Subsystem For Linux allows Windows to run a real Linux
634 kernel inside of a lightweight utility virtual machine (VM) using 606 kernel inside of a lightweight virtual machine (VM).
635 virtualization technology.
636 607
637 For information on how to set up a Build Host with WSLv2, see the 608 For information on how to set up a Build Host with WSL 2, see the
638 ":ref:`dev-manual/start:setting up to use windows subsystem for linux (wslv2)`" 609 ":ref:`dev-manual/start:setting up to use windows subsystem for linux (wsl 2)`"
639 section in the Yocto Project Development Tasks Manual. 610 section in the Yocto Project Development Tasks Manual.
640 611
641- *Toaster:* Regardless of what your Build Host is running, you can use 612- *Toaster:* Regardless of what your Build Host is running, you can use
642 Toaster to develop software using the Yocto Project. Toaster is a web 613 Toaster to develop software using the Yocto Project. Toaster is a web
643 interface to the Yocto Project's :term:`OpenEmbedded Build System`. 614 interface to the Yocto Project's :term:`OpenEmbedded Build System`.
644 The interface 615 The interface allows you to configure and run your builds. Information
645 enables you to configure and run your builds. Information about 616 about builds is collected and stored in a database. You can use Toaster
646 builds is collected and stored in a database. You can use Toaster to 617 to configure and start builds on multiple remote build servers.
647 configure and start builds on multiple remote build servers.
648 618
649 For information about and how to use Toaster, see the 619 For information about and how to use Toaster, see the
650 :doc:`/toaster-manual/index`. 620 :doc:`/toaster-manual/index`.
651 621
622- *Using the VSCode Extension:* You can use the `Yocto Project BitBake
623 <https://marketplace.visualstudio.com/items?itemName=yocto-project.yocto-bitbake>`__
624 extension for Visual Studio Code to start your BitBake builds through a
625 graphical user interface.
626
627 Learn more about the VSCode Extension on the `extension's marketplace page
628 <https://marketplace.visualstudio.com/items?itemName=yocto-project.yocto-bitbake>`__
629
652Reference Embedded Distribution (Poky) 630Reference Embedded Distribution (Poky)
653====================================== 631======================================
654 632
655"Poky", which is pronounced *Pock*-ee, is the name of the Yocto 633"Poky", which is pronounced *Pock*-ee, is the name of the Yocto
656Project's reference distribution or Reference OS Kit. Poky contains the 634Project's reference distribution or Reference OS Kit. Poky contains the
657:term:`OpenEmbedded Build System` 635:term:`OpenEmbedded Build System` (:term:`BitBake` and
658(:term:`BitBake` and 636:term:`OpenEmbedded-Core (OE-Core)`) as well as a set of
659:term:`OpenEmbedded-Core (OE-Core)`) as well as a set 637:term:`Metadata` to get you started building your own distro. In other
660of :term:`Metadata` to get you started 638words, Poky is a base specification of the functionality needed for a
661building your own distro. In other words, Poky is a base specification 639typical embedded system as well as the components from the Yocto Project
662of the functionality needed for a typical embedded system as well as the 640that allow you to build a distribution into a usable binary image.
663components from the Yocto Project that allow you to build a distribution
664into a usable binary image.
665 641
666Poky is a combined repository of BitBake, OpenEmbedded-Core (which is 642Poky is a combined repository of BitBake, OpenEmbedded-Core (which is
667found in ``meta``), ``meta-poky``, ``meta-yocto-bsp``, and documentation 643found in ``meta``), ``meta-poky``, ``meta-yocto-bsp``, and documentation
@@ -679,7 +655,7 @@ these items that make up the Poky repository in the
679The following figure illustrates what generally comprises Poky: 655The following figure illustrates what generally comprises Poky:
680 656
681.. image:: figures/poky-reference-distribution.png 657.. image:: figures/poky-reference-distribution.png
682 :align: center 658 :width: 100%
683 659
684- BitBake is a task executor and scheduler that is the heart of the 660- BitBake is a task executor and scheduler that is the heart of the
685 OpenEmbedded build system. 661 OpenEmbedded build system.
@@ -729,8 +705,9 @@ Sato.
729 705
730One of the most powerful properties of Poky is that every aspect of a 706One of the most powerful properties of Poky is that every aspect of a
731build is controlled by the metadata. You can use metadata to augment 707build is controlled by the metadata. You can use metadata to augment
732these base image types by adding metadata 708these base image types by adding metadata :ref:`layers
733`layers <#the-yocto-project-layer-model>`__ that extend functionality. 709<overview-manual/yp-intro:the yocto project layer model>` that extend
710functionality.
734These layers can provide, for example, an additional software stack for 711These layers can provide, for example, an additional software stack for
735an image type, add a board support package (BSP) for additional 712an image type, add a board support package (BSP) for additional
736hardware, or even create a new image type. 713hardware, or even create a new image type.
@@ -745,11 +722,11 @@ other build process, in which case the basic functionality can be
745defined by the classes it inherits from the OE-Core layer's class 722defined by the classes it inherits from the OE-Core layer's class
746definitions in ``./meta/classes``. Within a recipe you can also define 723definitions in ``./meta/classes``. Within a recipe you can also define
747additional tasks as well as task prerequisites. Recipe syntax through 724additional tasks as well as task prerequisites. Recipe syntax through
748BitBake also supports both ``_prepend`` and ``_append`` operators as a 725BitBake also supports both ``:prepend`` and ``:append`` operators as a
749method of extending task functionality. These operators inject code into 726method of extending task functionality. These operators inject code into
750the beginning or end of a task. For information on these BitBake 727the beginning or end of a task. For information on these BitBake
751operators, see the 728operators, see the
752":ref:`bitbake:bitbake-user-manual/bitbake-user-manual-metadata:appending and prepending (override style syntax)`" 729":ref:`bitbake-user-manual/bitbake-user-manual-metadata:appending and prepending (override style syntax)`"
753section in the BitBake User's Manual. 730section in the BitBake User's Manual.
754 731
755The OpenEmbedded Build System Workflow 732The OpenEmbedded Build System Workflow
@@ -760,41 +737,41 @@ accomplish image and SDK generation. The following figure overviews that
760workflow: 737workflow:
761 738
762.. image:: figures/YP-flow-diagram.png 739.. image:: figures/YP-flow-diagram.png
763 :align: center 740 :width: 100%
764 741
765Following is a brief summary of the "workflow": 742Here is a brief summary of the "workflow":
766 743
7671. Developers specify architecture, policies, patches and configuration 744#. Developers specify architecture, policies, patches and configuration
768 details. 745 details.
769 746
7702. The build system fetches and downloads the source code from the 747#. The build system fetches and downloads the source code from the
771 specified location. The build system supports standard methods such 748 specified location. The build system supports standard methods such
772 as tarballs or source code repositories systems such as Git. 749 as tarballs or source code repositories systems such as Git.
773 750
7743. Once source code is downloaded, the build system extracts the sources 751#. Once source code is downloaded, the build system extracts the sources
775 into a local work area where patches are applied and common steps for 752 into a local work area where patches are applied and common steps for
776 configuring and compiling the software are run. 753 configuring and compiling the software are run.
777 754
7784. The build system then installs the software into a temporary staging 755#. The build system then installs the software into a temporary staging
779 area where the binary package format you select (DEB, RPM, or IPK) is 756 area where the binary package format you select (DEB, RPM, or IPK) is
780 used to roll up the software. 757 used to roll up the software.
781 758
7825. Different QA and sanity checks run throughout entire build process. 759#. Different QA and sanity checks run throughout entire build process.
783 760
7846. After the binaries are created, the build system generates a binary 761#. After the binaries are created, the build system generates a binary
785 package feed that is used to create the final root file image. 762 package feed that is used to create the final root file image.
786 763
7877. The build system generates the file system image and a customized 764#. The build system generates the file system image and a customized
788 Extensible SDK (eSDK) for application development in parallel. 765 Extensible SDK (eSDK) for application development in parallel.
789 766
790For a very detailed look at this workflow, see the "`OpenEmbedded Build 767For a very detailed look at this workflow, see the
791System Concepts <#openembedded-build-system-build-concepts>`__" section. 768":ref:`overview-manual/concepts:openembedded build system concepts`" section.
792 769
793Some Basic Terms 770Some Basic Terms
794================ 771================
795 772
796It helps to understand some basic fundamental terms when learning the 773It helps to understand some basic fundamental terms when learning the
797Yocto Project. Although a list of terms exists in the ":doc:`Yocto Project 774Yocto Project. Although there is a list of terms in the ":doc:`Yocto Project
798Terms </ref-manual/terms>`" section of the Yocto Project 775Terms </ref-manual/terms>`" section of the Yocto Project
799Reference Manual, this section provides the definitions of some terms 776Reference Manual, this section provides the definitions of some terms
800helpful for getting started: 777helpful for getting started:
@@ -816,14 +793,14 @@ helpful for getting started:
816 isolate information used when building for multiple architectures. 793 isolate information used when building for multiple architectures.
817 Layers are hierarchical in their ability to override previous 794 Layers are hierarchical in their ability to override previous
818 specifications. You can include any number of available layers from 795 specifications. You can include any number of available layers from
819 the Yocto Project and customize the build by adding your layers after 796 the Yocto Project and customize the build by adding your own layers
820 them. You can search the Layer Index for layers used within Yocto 797 after them. You can search the Layer Index for layers used within
821 Project. 798 Yocto Project.
822 799
823 For more detailed information on layers, see the 800 For more detailed information on layers, see the
824 ":ref:`dev-manual/common-tasks:understanding and creating layers`" 801 ":ref:`dev-manual/layers:understanding and creating layers`"
825 section in the Yocto Project Development Tasks Manual. For a 802 section in the Yocto Project Development Tasks Manual. For a
826 discussion specifically on BSP Layers, see the 803 discussion specifically on BSP Layers, see the
827 ":ref:`bsp-guide/bsp:bsp layers`" section in the Yocto 804 ":ref:`bsp-guide/bsp:bsp layers`" section in the Yocto
828 Project Board Support Packages (BSP) Developer's Guide. 805 Project Board Support Packages (BSP) Developer's Guide.
829 806
@@ -851,7 +828,7 @@ helpful for getting started:
851 BitBake is similar to the ``make`` tool. 828 BitBake is similar to the ``make`` tool.
852 829
853 During a build process, the build system tracks dependencies and 830 During a build process, the build system tracks dependencies and
854 performs a native or cross-compilation of the package. As a first 831 performs a native or cross-compilation of each package. As a first
855 step in a cross-build setup, the framework attempts to create a 832 step in a cross-build setup, the framework attempts to create a
856 cross-compiler toolchain (i.e. Extensible SDK) suited for the target 833 cross-compiler toolchain (i.e. Extensible SDK) suited for the target
857 platform. 834 platform.
@@ -878,10 +855,11 @@ helpful for getting started:
878 subtle meanings. For example, the packages referred to in the 855 subtle meanings. For example, the packages referred to in the
879 ":ref:`ref-manual/system-requirements:required packages for the build host`" 856 ":ref:`ref-manual/system-requirements:required packages for the build host`"
880 section in the Yocto Project Reference Manual are compiled binaries 857 section in the Yocto Project Reference Manual are compiled binaries
881 that, when installed, add functionality to your Linux distribution. 858 that, when installed, add functionality to your host Linux
859 distribution.
882 860
883 Another point worth noting is that historically within the Yocto 861 Another point worth noting is that historically within the Yocto
884 Project, recipes were referred to as packages - thus, the existence 862 Project, recipes were referred to as packages --- thus, the existence
885 of several BitBake variables that are seemingly mis-named, (e.g. 863 of several BitBake variables that are seemingly mis-named, (e.g.
886 :term:`PR`, 864 :term:`PR`,
887 :term:`PV`, and 865 :term:`PV`, and