summaryrefslogtreecommitdiffstats
path: root/documentation/ref-manual
diff options
context:
space:
mode:
Diffstat (limited to 'documentation/ref-manual')
-rw-r--r--documentation/ref-manual/classes.rst89
-rw-r--r--documentation/ref-manual/devtool-reference.rst94
-rw-r--r--documentation/ref-manual/faq.rst41
-rw-r--r--documentation/ref-manual/features.rst4
-rw-r--r--documentation/ref-manual/images.rst25
-rw-r--r--documentation/ref-manual/qa-checks.rst10
-rw-r--r--documentation/ref-manual/release-process.rst25
-rw-r--r--documentation/ref-manual/structure.rst44
-rw-r--r--documentation/ref-manual/svg/releases.svg1223
-rw-r--r--documentation/ref-manual/system-requirements.rst72
-rw-r--r--documentation/ref-manual/tasks.rst12
-rw-r--r--documentation/ref-manual/terms.rst4
-rw-r--r--documentation/ref-manual/variables.rst728
13 files changed, 1602 insertions, 769 deletions
diff --git a/documentation/ref-manual/classes.rst b/documentation/ref-manual/classes.rst
index 9520d0bf7c..1d76b36d45 100644
--- a/documentation/ref-manual/classes.rst
+++ b/documentation/ref-manual/classes.rst
@@ -159,27 +159,38 @@ software that includes bash-completion data.
159``bin_package`` 159``bin_package``
160=============== 160===============
161 161
162The :ref:`ref-classes-bin-package` class is a helper class for recipes that extract the 162The :ref:`ref-classes-bin-package` class is a helper class for recipes, that
163contents of a binary package (e.g. an RPM) and install those contents 163disables the :ref:`ref-tasks-configure` and :ref:`ref-tasks-compile` tasks and
164rather than building the binary from source. The binary package is 164copies the content of the :term:`S` directory into the :term:`D` directory. This
165extracted and new packages in the configured output package format are 165is useful for installing binary packages (e.g. RPM packages) by passing the
166created. Extraction and installation of proprietary binaries is a good 166package in the :term:`SRC_URI` variable and inheriting this class.
167example use for this class.
168 167
169.. note:: 168For RPMs and other packages that do not contain a subdirectory, you should set
169the :term:`SRC_URI` option ``subdir`` to :term:`BP` so that the contents are
170extracted to the directory expected by the default value of :term:`S`. For
171example::
172
173 SRC_URI = "https://example.com/downloads/somepackage.rpm;subdir=${BP}"
174
175This class can also be used for tarballs. For example::
176
177 SRC_URI = "file://somepackage.tar.xz;subdir=${BP}"
178
179The :ref:`ref-classes-bin-package` class will copy the extracted content of the
180tarball from :term:`S` to :term:`D`.
170 181
171 For RPMs and other packages that do not contain a subdirectory, you 182This class assumes that the content of the package as installed in :term:`S`
172 should specify an appropriate fetcher parameter to point to the 183mirrors the expected layout once installed on the target, which is generally the
173 subdirectory. For example, if BitBake is using the Git fetcher (``git://``), 184case for binary packages. For example, an RPM package for a library would
174 the "subpath" parameter limits the checkout to a specific subpath 185usually contain the ``usr/lib`` directory, and should be extracted to
175 of the tree. Here is an example where ``${BP}`` is used so that the files 186``${S}/usr/lib/<library>.so.<version>`` to be installed in :term:`D` correctly.
176 are extracted into the subdirectory expected by the default value of
177 :term:`S`::
178 187
179 SRC_URI = "git://example.com/downloads/somepackage.rpm;branch=main;subpath=${BP}" 188.. note::
180 189
181 See the ":ref:`bitbake-user-manual/bitbake-user-manual-fetching:fetchers`" section in the BitBake User Manual for 190 The extraction of the package passed in :term:`SRC_URI` is not handled by the
182 more information on supported BitBake Fetchers. 191 :ref:`ref-classes-bin-package` class, but rather by the appropriate
192 :ref:`fetcher <bitbake-user-manual/bitbake-user-manual-fetching:fetchers>`
193 depending on the file extension.
183 194
184.. _ref-classes-binconfig: 195.. _ref-classes-binconfig:
185 196
@@ -552,7 +563,7 @@ You can also look for vulnerabilities in specific packages by passing
552``-c cve_check`` to BitBake. 563``-c cve_check`` to BitBake.
553 564
554After building the software with Bitbake, CVE check output reports are available in ``tmp/deploy/cve`` 565After building the software with Bitbake, CVE check output reports are available in ``tmp/deploy/cve``
555and image specific summaries in ``tmp/deploy/images/*.cve`` or ``tmp/deploy/images/*.json`` files. 566and image specific summaries in ``tmp/deploy/images/*.json`` files.
556 567
557When building, the CVE checker will emit build time warnings for any detected 568When building, the CVE checker will emit build time warnings for any detected
558issues which are in the state ``Unpatched``, meaning that CVE issue seems to affect the software component 569issues which are in the state ``Unpatched``, meaning that CVE issue seems to affect the software component
@@ -1461,12 +1472,8 @@ The tests you can list with the :term:`WARN_QA` and
1461- ``patch-fuzz:`` Checks for fuzz in patch files that may allow 1472- ``patch-fuzz:`` Checks for fuzz in patch files that may allow
1462 them to apply incorrectly if the underlying code changes. 1473 them to apply incorrectly if the underlying code changes.
1463 1474
1464- ``patch-status-core:`` Checks that the Upstream-Status is specified 1475- ``patch-status:`` Checks that the ``Upstream-Status`` is specified and valid
1465 and valid in the headers of patches for recipes in the OE-Core layer. 1476 in the headers of patches for recipes.
1466
1467- ``patch-status-noncore:`` Checks that the Upstream-Status is specified
1468 and valid in the headers of patches for recipes in layers other than
1469 OE-Core.
1470 1477
1471- ``perllocalpod:`` Checks for ``perllocal.pod`` being erroneously 1478- ``perllocalpod:`` Checks for ``perllocal.pod`` being erroneously
1472 installed and packaged by a recipe. 1479 installed and packaged by a recipe.
@@ -1986,7 +1993,8 @@ a couple different ways:
1986 Not using this naming convention can lead to subtle problems 1993 Not using this naming convention can lead to subtle problems
1987 caused by existing code that depends on that naming convention. 1994 caused by existing code that depends on that naming convention.
1988 1995
1989- Create or modify a target recipe that contains the following:: 1996- Or, create a :ref:`ref-classes-native` variant of any target recipe (e.g.
1997 ``myrecipe.bb``) by adding the following to the recipe::
1990 1998
1991 BBCLASSEXTEND = "native" 1999 BBCLASSEXTEND = "native"
1992 2000
@@ -2017,24 +2025,25 @@ couple different ways:
2017 inherit statement in the recipe after all other inherit statements so 2025 inherit statement in the recipe after all other inherit statements so
2018 that the :ref:`ref-classes-nativesdk` class is inherited last. 2026 that the :ref:`ref-classes-nativesdk` class is inherited last.
2019 2027
2020- Create a :ref:`ref-classes-nativesdk` variant of any recipe by adding the following:: 2028 .. note::
2021 2029
2022 BBCLASSEXTEND = "nativesdk" 2030 When creating a recipe, you must follow this naming convention::
2023 2031
2024 Inside the 2032 nativesdk-myrecipe.bb
2025 recipe, use ``:class-nativesdk`` and ``:class-target`` overrides to
2026 specify any functionality specific to the respective SDK machine or
2027 target case.
2028 2033
2029.. note::
2030 2034
2031 When creating a recipe, you must follow this naming convention:: 2035 Not doing so can lead to subtle problems because there is code that
2036 depends on the naming convention.
2032 2037
2033 nativesdk-myrecipe.bb 2038- Or, create a :ref:`ref-classes-nativesdk` variant of any target recipe (e.g.
2039 ``myrecipe.bb``) by adding the following to the recipe::
2034 2040
2041 BBCLASSEXTEND = "nativesdk"
2035 2042
2036 Not doing so can lead to subtle problems because there is code that 2043 Inside the
2037 depends on the naming convention. 2044 recipe, use ``:class-nativesdk`` and ``:class-target`` overrides to
2045 specify any functionality specific to the respective SDK machine or
2046 target case.
2038 2047
2039Although applied differently, the :ref:`ref-classes-nativesdk` class is used with both 2048Although applied differently, the :ref:`ref-classes-nativesdk` class is used with both
2040methods. The advantage of the second method is that you do not need to 2049methods. The advantage of the second method is that you do not need to
@@ -2608,7 +2617,7 @@ runtime tests for recipes that build software that provides these tests.
2608This class is intended to be inherited by individual recipes. However, 2617This class is intended to be inherited by individual recipes. However,
2609the class' functionality is largely disabled unless "ptest" appears in 2618the class' functionality is largely disabled unless "ptest" appears in
2610:term:`DISTRO_FEATURES`. See the 2619:term:`DISTRO_FEATURES`. See the
2611":ref:`dev-manual/packages:testing packages with ptest`" 2620":ref:`test-manual/ptest:testing packages with ptest`"
2612section in the Yocto Project Development Tasks Manual for more information 2621section in the Yocto Project Development Tasks Manual for more information
2613on ptest. 2622on ptest.
2614 2623
@@ -2632,7 +2641,7 @@ Enables package tests (ptests) specifically for GNOME packages, which
2632have tests intended to be executed with ``gnome-desktop-testing``. 2641have tests intended to be executed with ``gnome-desktop-testing``.
2633 2642
2634For information on setting up and running ptests, see the 2643For information on setting up and running ptests, see the
2635":ref:`dev-manual/packages:testing packages with ptest`" 2644":ref:`test-manual/ptest:testing packages with ptest`"
2636section in the Yocto Project Development Tasks Manual. 2645section in the Yocto Project Development Tasks Manual.
2637 2646
2638.. _ref-classes-python3-dir: 2647.. _ref-classes-python3-dir:
@@ -3205,8 +3214,8 @@ after it is built, you can set :term:`TESTIMAGE_AUTO`::
3205 TESTIMAGE_AUTO = "1" 3214 TESTIMAGE_AUTO = "1"
3206 3215
3207For information on how to enable, run, and create new tests, see the 3216For information on how to enable, run, and create new tests, see the
3208":ref:`dev-manual/runtime-testing:performing automated runtime testing`" 3217":ref:`test-manual/runtime-testing:performing automated runtime testing`"
3209section in the Yocto Project Development Tasks Manual. 3218section in the Yocto Project Test Environment Manual.
3210 3219
3211.. _ref-classes-testsdk: 3220.. _ref-classes-testsdk:
3212 3221
diff --git a/documentation/ref-manual/devtool-reference.rst b/documentation/ref-manual/devtool-reference.rst
index 9319addc3c..2db2adde95 100644
--- a/documentation/ref-manual/devtool-reference.rst
+++ b/documentation/ref-manual/devtool-reference.rst
@@ -24,7 +24,7 @@ The ``devtool`` command line is organized similarly to Git in that it
24has a number of sub-commands for each function. You can run 24has a number of sub-commands for each function. You can run
25``devtool --help`` to see all the commands:: 25``devtool --help`` to see all the commands::
26 26
27 $ devtool -h 27 $ devtool --help
28 NOTE: Starting bitbake server... 28 NOTE: Starting bitbake server...
29 usage: devtool [--basepath BASEPATH] [--bbpath BBPATH] [-d] [-q] [--color COLOR] [-h] <subcommand> ... 29 usage: devtool [--basepath BASEPATH] [--bbpath BBPATH] [-d] [-q] [--color COLOR] [-h] <subcommand> ...
30 30
@@ -50,6 +50,7 @@ has a number of sub-commands for each function. You can run
50 search Search available recipes 50 search Search available recipes
51 Working on a recipe in the workspace: 51 Working on a recipe in the workspace:
52 build Build a recipe 52 build Build a recipe
53 ide-sdk Setup the SDK and configure the IDE
53 rename Rename a recipe file in the workspace 54 rename Rename a recipe file in the workspace
54 edit-recipe Edit a recipe file 55 edit-recipe Edit a recipe file
55 find-recipe Find a recipe file 56 find-recipe Find a recipe file
@@ -63,17 +64,11 @@ has a number of sub-commands for each function. You can run
63 build-image Build image including workspace recipe packages 64 build-image Build image including workspace recipe packages
64 Advanced: 65 Advanced:
65 create-workspace Set up workspace in an alternative location 66 create-workspace Set up workspace in an alternative location
67 import Import exported tar archive into workspace
68 export Export workspace into a tar archive
66 extract Extract the source for an existing recipe 69 extract Extract the source for an existing recipe
67 sync Synchronize the source tree for an existing recipe 70 sync Synchronize the source tree for an existing recipe
68 menuconfig Alter build-time configuration for a recipe 71 menuconfig Alter build-time configuration for a recipe
69 import Import exported tar archive into workspace
70 export Export workspace into a tar archive
71 other:
72 selftest-reverse Reverse value (for selftest)
73 pluginfile Print the filename of this plugin
74 bbdir Print the BBPATH directory of this plugin
75 count How many times have this plugin been registered.
76 multiloaded How many times have this plugin been initialized
77 Use devtool <subcommand> --help to get help on a specific command 72 Use devtool <subcommand> --help to get help on a specific command
78 73
79As directed in the general help output, you can 74As directed in the general help output, you can
@@ -82,8 +77,8 @@ using ``--help``::
82 77
83 $ devtool add --help 78 $ devtool add --help
84 NOTE: Starting bitbake server... 79 NOTE: Starting bitbake server...
85 usage: devtool add [-h] [--same-dir | --no-same-dir] [--fetch URI] [--npm-dev] [--version VERSION] [--no-git] [--srcrev SRCREV | --autorev] [--srcbranch SRCBRANCH] [--binary] [--also-native] [--src-subdir SUBDIR] [--mirrors] 80 usage: devtool add [-h] [--same-dir | --no-same-dir] [--fetch URI] [--npm-dev] [--no-pypi] [--version VERSION] [--no-git] [--srcrev SRCREV | --autorev]
86 [--provides PROVIDES] 81 [--srcbranch SRCBRANCH] [--binary] [--also-native] [--src-subdir SUBDIR] [--mirrors] [--provides PROVIDES]
87 [recipename] [srctree] [fetchuri] 82 [recipename] [srctree] [fetchuri]
88 83
89 Adds a new recipe to the workspace to build a specified source tree. Can optionally fetch a remote URI and unpack it to create the source tree. 84 Adds a new recipe to the workspace to build a specified source tree. Can optionally fetch a remote URI and unpack it to create the source tree.
@@ -99,6 +94,7 @@ using ``--help``::
99 --no-same-dir Force build in a separate build directory 94 --no-same-dir Force build in a separate build directory
100 --fetch URI, -f URI Fetch the specified URI and extract it to create the source tree (deprecated - pass as positional argument instead) 95 --fetch URI, -f URI Fetch the specified URI and extract it to create the source tree (deprecated - pass as positional argument instead)
101 --npm-dev For npm, also fetch devDependencies 96 --npm-dev For npm, also fetch devDependencies
97 --no-pypi Do not inherit pypi class
102 --version VERSION, -V VERSION 98 --version VERSION, -V VERSION
103 Version to use within recipe (PV) 99 Version to use within recipe (PV)
104 --no-git, -g If fetching source, do not set up source tree as a git repository 100 --no-git, -g If fetching source, do not set up source tree as a git repository
@@ -439,7 +435,7 @@ You can read more on the ``devtool upgrade`` workflow in the
439":ref:`sdk-manual/extensible:use \`\`devtool upgrade\`\` to create a version of the recipe that supports a newer version of the software`" 435":ref:`sdk-manual/extensible:use \`\`devtool upgrade\`\` to create a version of the recipe that supports a newer version of the software`"
440section in the Yocto Project Application Development and the Extensible 436section in the Yocto Project Application Development and the Extensible
441Software Development Kit (eSDK) manual. You can also see an example of 437Software Development Kit (eSDK) manual. You can also see an example of
442how to use ``devtool upgrade`` in the ":ref:`dev-manual/upgrading-recipes:using \`\`devtool upgrade\`\``" 438how to use ``devtool upgrade`` in the ":ref:`dev-manual/upgrading-recipes:using ``devtool upgrade```"
443section in the Yocto Project Development Tasks Manual. 439section in the Yocto Project Development Tasks Manual.
444 440
445.. _devtool-resetting-a-recipe: 441.. _devtool-resetting-a-recipe:
@@ -467,6 +463,20 @@ Here is an example that resets the workspace directory that contains the
467 NOTE: Leaving source tree /home/scottrif/poky/build/workspace/sources/mtr as-is; if you no longer need it then please delete it manually 463 NOTE: Leaving source tree /home/scottrif/poky/build/workspace/sources/mtr as-is; if you no longer need it then please delete it manually
468 $ 464 $
469 465
466.. _devtool-finish-working-on-a-recipe:
467
468Finish Working on a Recipe
469==========================
470
471Use the ``devtool finish`` command to push any committed changes to the
472specified recipe in the specified layer and remove it from your workspace.
473
474This is roughly equivalent to the ``devtool update-recipe`` command followed by
475the ``devtool reset`` command. The changes must have been committed to the git
476repository created by ``devtool``. Here is an example::
477
478 $ devtool finish recipe /path/to/custom/layer
479
470.. _devtool-building-your-recipe: 480.. _devtool-building-your-recipe:
471 481
472Building Your Recipe 482Building Your Recipe
@@ -543,6 +553,26 @@ the packages are already on the target. Consequently, when a runtime
543call is made in the application for a dependent function (e.g. a library 553call is made in the application for a dependent function (e.g. a library
544call), the function cannot be found. 554call), the function cannot be found.
545 555
556.. warning::
557
558 Runtime dependencies can be explicitly listed in the :term:`RDEPENDS`
559 variable, but may also be the result of a :term:`DEPENDS` assignment in your
560 application's recipe. This is usually the case when your application depends
561 on libraries for compilation: these libraries are listed as build-time
562 dependencies in the :term:`DEPENDS` variable in your application's recipe.
563 However these may also be runtime dependencies if they install shared objects
564 on which your application will dynamically link to at runtime (e.g. shared
565 libraries ending with ``.so``).
566
567 These runtime dependencies are automatically resolved by the
568 :term:`OpenEmbedded Build System` during the packaging phase. Since
569 ``devtool`` ignores packaging dependencies, they will not be installed
570 automatically with ``devtool deploy-target``.
571
572 For more information on how the :term:`OpenEmbedded Build System` handles
573 packaging, see the :ref:`overview-manual/concepts:Automatically Added Runtime
574 Dependencies` section of the Yocto Project Overview and Concepts Manual.
575
546To be sure you have all the dependencies local to the target, you need 576To be sure you have all the dependencies local to the target, you need
547to be sure that the packages are pre-deployed (installed) on the target 577to be sure that the packages are pre-deployed (installed) on the target
548before attempting to run your application. 578before attempting to run your application.
@@ -618,3 +648,43 @@ a match.
618 648
619When you use the ``devtool search`` command, you must supply a keyword. 649When you use the ``devtool search`` command, you must supply a keyword.
620The command uses the keyword when searching for a match. 650The command uses the keyword when searching for a match.
651
652Alternatively, the ``devtool find-recipe`` command can be used to search for
653recipe files instead of recipe names. Likewise, you must supply a keyword.
654
655.. _devtool-get-the-configure-script-help:
656
657Get Information on Recipe Configuration Scripts
658===============================================
659
660Use the ``devtool configure-help`` command to get help on the configuration
661script options for a given recipe. You must supply the recipe name to the
662command. For example, it shows the output of ``./configure --help`` for
663:ref:`autotools <ref-classes-autotools>`-based recipes.
664
665The ``configure-help`` command will also display the configuration options
666currently in use, including the ones passed through the :term:`EXTRA_OECONF`
667variable.
668
669.. _devtool-generate-an-ide-configuration-for-a-recipe:
670
671Generate an IDE Configuration for a Recipe
672==========================================
673
674The ``devtool ide-sdk`` automatically creates an IDE configuration and SDK to
675work on a given recipe. Depending on the ``--mode`` parameter, different types
676of SDKs are generated:
677
678- ``modified`` mode: this creates an SDK and generates an IDE configuration in
679 the workspace directory.
680
681- ``shared`` mode: this creates a cross-compiling toolchain and the
682 corresponding shared sysroot directories of the supplied recipe(s).
683
684The ``--target`` option can be used to specify a ``username@hostname`` string
685and create a remote debugging configuration for the recipe. Similarly to
686``devtool deploy-target``, it requires an SSH server running on the target.
687
688For further details on the ``devtool ide-sdk`` command, see the
689":doc:`/sdk-manual/extensible`" chapter in the Yocto Project Application
690Development and the Extensible Software Development Kit (eSDK) manual.
diff --git a/documentation/ref-manual/faq.rst b/documentation/ref-manual/faq.rst
index bab284bbfd..7dd37c7a5c 100644
--- a/documentation/ref-manual/faq.rst
+++ b/documentation/ref-manual/faq.rst
@@ -45,6 +45,28 @@ See :yocto_wiki:`Products that use the Yocto Project
45Wiki. Don't hesitate to contribute to this page if you know other such 45Wiki. Don't hesitate to contribute to this page if you know other such
46products. 46products.
47 47
48Why isn't systemd the default init system for OpenEmbedded-Core/Yocto Project or in Poky?
49-----------------------------------------------------------------------------------------
50
51`systemd <https://systemd.io/>`__ is a desktop Linux init system with a specific
52focus that is not entirely aligned with a customisable "embedded" build
53system/environment.
54
55It understandably mandates certain layouts and configurations which may
56or may not align with what the objectives and direction :term:`OpenEmbedded-Core
57(OE-Core)` or Yocto Project want to take. It doesn't support all of our targets.
58For example `musl <https://www.musl-libc.org/>`__ support in systemd is
59problematic.
60
61If it were our default, we would have to align with all their choices
62and this doesn't make sense. It is therefore a configuration option and
63available to anyone where the design goals align. But we are clear it
64is not the only way to handle init.
65
66Our automated testing includes it through the ``poky-altcfg`` :term:`DISTRO` and
67we don't really need it to be the default: it is tested, it works, and people
68can choose to use it.
69
48Building environment 70Building environment
49==================== 71====================
50 72
@@ -259,6 +281,25 @@ Within the :term:`Build Directory`, is the ``tmp`` directory. To remove all the
259build output yet preserve any source code or downloaded files from 281build output yet preserve any source code or downloaded files from
260previous builds, simply remove the ``tmp`` directory. 282previous builds, simply remove the ``tmp`` directory.
261 283
284Why isn't there a way to append bbclass files like bbappend for recipes?
285------------------------------------------------------------------------
286
287The Yocto Project has consciously chosen not to implement such functionality.
288Class code is designed to be shared and reused, and exposes some level of
289configuration to its users. We want to encourage people to share these changes
290so we can build the best classes.
291
292If the ``append`` functionality was available for classes, our evidence and
293experience suggest that people would create their custom changes in their
294layer instead of sharing and discussing the issues and/or limitations they
295encountered. This would lead to bizarre class interactions when new layers are
296included. We therefore consciously choose to have a natural pressure to share
297class code improvements or fixes.
298
299There are also technical considerations like which recipes a class append would
300apply to and how that would fit within the layer model. These are complications
301we think we can live without!
302
262Customizing generated images 303Customizing generated images
263============================ 304============================
264 305
diff --git a/documentation/ref-manual/features.rst b/documentation/ref-manual/features.rst
index b2ba731bb2..5574ecafe2 100644
--- a/documentation/ref-manual/features.rst
+++ b/documentation/ref-manual/features.rst
@@ -12,7 +12,7 @@ Features provide a mechanism for working out which packages should be
12included in the generated images. Distributions can select which 12included in the generated images. Distributions can select which
13features they want to support through the :term:`DISTRO_FEATURES` variable, 13features they want to support through the :term:`DISTRO_FEATURES` variable,
14which is set or appended to in a distribution's configuration file such 14which is set or appended to in a distribution's configuration file such
15as ``poky.conf``, ``poky-tiny.conf``, ``poky-lsb.conf`` and so forth. 15as ``poky.conf``, ``poky-tiny.conf``, ``poky-altcfg.conf`` and so forth.
16Machine features are set in the :term:`MACHINE_FEATURES` variable, which is 16Machine features are set in the :term:`MACHINE_FEATURES` variable, which is
17set in the machine configuration file and specifies the hardware 17set in the machine configuration file and specifies the hardware
18features for a given machine. 18features for a given machine.
@@ -207,7 +207,7 @@ metadata, as extra layers can define their own:
207 207
208- *ptest:* Enables building the package tests where supported by 208- *ptest:* Enables building the package tests where supported by
209 individual recipes. For more information on package tests, see the 209 individual recipes. For more information on package tests, see the
210 ":ref:`dev-manual/packages:testing packages with ptest`" section 210 ":ref:`test-manual/ptest:testing packages with ptest`" section
211 in the Yocto Project Development Tasks Manual. 211 in the Yocto Project Development Tasks Manual.
212 212
213- *pulseaudio:* Include support for 213- *pulseaudio:* Include support for
diff --git a/documentation/ref-manual/images.rst b/documentation/ref-manual/images.rst
index c45f9104a9..c9d8989261 100644
--- a/documentation/ref-manual/images.rst
+++ b/documentation/ref-manual/images.rst
@@ -51,27 +51,6 @@ Here is a list of supported recipes:
51- ``core-image-full-cmdline``: A console-only image with more 51- ``core-image-full-cmdline``: A console-only image with more
52 full-featured Linux system functionality installed. 52 full-featured Linux system functionality installed.
53 53
54- ``core-image-lsb``: An image that conforms to the Linux Standard Base
55 (LSB) specification. This image requires a distribution configuration
56 that enables LSB compliance (e.g. ``poky-lsb``). If you build
57 ``core-image-lsb`` without that configuration, the image will not be
58 LSB-compliant.
59
60- ``core-image-lsb-dev``: A ``core-image-lsb`` image that is suitable
61 for development work using the host. The image includes headers and
62 libraries you can use in a host development environment. This image
63 requires a distribution configuration that enables LSB compliance
64 (e.g. ``poky-lsb``). If you build ``core-image-lsb-dev`` without that
65 configuration, the image will not be LSB-compliant.
66
67- ``core-image-lsb-sdk``: A ``core-image-lsb`` that includes everything
68 in the cross-toolchain but also includes development headers and
69 libraries to form a complete standalone SDK. This image requires a
70 distribution configuration that enables LSB compliance (e.g.
71 ``poky-lsb``). If you build ``core-image-lsb-sdk`` without that
72 configuration, the image will not be LSB-compliant. This image is
73 suitable for development using the target.
74
75- ``core-image-minimal``: A small image just capable of allowing a 54- ``core-image-minimal``: A small image just capable of allowing a
76 device to boot. 55 device to boot.
77 56
@@ -119,8 +98,8 @@ Here is a list of supported recipes:
119 deployed to a separate partition so that you can boot into it and use 98 deployed to a separate partition so that you can boot into it and use
120 it to deploy a second image to be tested. You can find more 99 it to deploy a second image to be tested. You can find more
121 information about runtime testing in the 100 information about runtime testing in the
122 ":ref:`dev-manual/runtime-testing:performing automated runtime testing`" 101 ":ref:`test-manual/runtime-testing:performing automated runtime testing`"
123 section in the Yocto Project Development Tasks Manual. 102 section in the Yocto Project Test Environment Manual.
124 103
125- ``core-image-testmaster-initramfs``: A RAM-based Initial Root 104- ``core-image-testmaster-initramfs``: A RAM-based Initial Root
126 Filesystem (:term:`Initramfs`) image tailored for use with the 105 Filesystem (:term:`Initramfs`) image tailored for use with the
diff --git a/documentation/ref-manual/qa-checks.rst b/documentation/ref-manual/qa-checks.rst
index 53b1836e74..27d46de3fd 100644
--- a/documentation/ref-manual/qa-checks.rst
+++ b/documentation/ref-manual/qa-checks.rst
@@ -752,21 +752,17 @@ Errors and Warnings
752 752
753.. _qa-check-patch-status: 753.. _qa-check-patch-status:
754 754
755- ``Missing Upstream-Status in patch <patchfile> Please add according to <url> [patch-status-core/patch-status-noncore]`` 755- ``Missing Upstream-Status in patch <patchfile> Please add according to <url> [patch-status]``
756 756
757 The ``Upstream-Status`` value is missing in the specified patch file's header. 757 The ``Upstream-Status`` value is missing in the specified patch file's header.
758 This value is intended to track whether or not the patch has been sent 758 This value is intended to track whether or not the patch has been sent
759 upstream, whether or not it has been merged, etc. 759 upstream, whether or not it has been merged, etc.
760 760
761 There are two options for this same check - ``patch-status-core`` (for
762 recipes in OE-Core) and ``patch-status-noncore`` (for recipes in any other
763 layer).
764
765 For more information, see the 761 For more information, see the
766 ":ref:`contributor-guide/recipe-style-guide:patch upstream status`" 762 ":ref:`contributor-guide/recipe-style-guide:patch upstream status`"
767 section in the Yocto Project and OpenEmbedded Contributor Guide. 763 section in the Yocto Project and OpenEmbedded Contributor Guide.
768 764
769- ``Malformed Upstream-Status in patch <patchfile> Please correct according to <url> [patch-status-core/patch-status-noncore]`` 765- ``Malformed Upstream-Status in patch <patchfile> Please correct according to <url> [patch-status]``
770 766
771 The ``Upstream-Status`` value in the specified patch file's header is invalid - 767 The ``Upstream-Status`` value in the specified patch file's header is invalid -
772 it must be a specific format. See the "Missing Upstream-Status" entry above 768 it must be a specific format. See the "Missing Upstream-Status" entry above
@@ -795,7 +791,7 @@ Errors and Warnings
795 791
796 This check will detect if the source of the package contains some 792 This check will detect if the source of the package contains some
797 upstream-provided tests and, if so, that ptests are implemented for this 793 upstream-provided tests and, if so, that ptests are implemented for this
798 recipe. See the ":ref:`dev-manual/packages:testing packages with ptest`" 794 recipe. See the ":ref:`test-manual/ptest:testing packages with ptest`"
799 section in the Yocto Project Development Tasks Manual. See also the 795 section in the Yocto Project Development Tasks Manual. See also the
800 ":ref:`ref-classes-ptest`" section. 796 ":ref:`ref-classes-ptest`" section.
801 797
diff --git a/documentation/ref-manual/release-process.rst b/documentation/ref-manual/release-process.rst
index 920794679d..639921b9f6 100644
--- a/documentation/ref-manual/release-process.rst
+++ b/documentation/ref-manual/release-process.rst
@@ -103,17 +103,22 @@ have reached their End of Life (EOL) won't receive such updates.
103 103
104This started with version 3.1 ("Dunfell"), released in April 2020, which 104This started with version 3.1 ("Dunfell"), released in April 2020, which
105the project initially committed to supporting for two years, but this duration 105the project initially committed to supporting for two years, but this duration
106was later extended to four years. Similarly, the following :term:`LTS` release, 106was later extended to four years.
107version 4.0 ("Kirkstone"), was released two years later in May 2022 and the
108project committed to supporting it for four years too.
109 107
110Therefore, a new :term:`LTS` release is made every two years and is supported 108A new :term:`LTS` release is made every two years and is supported for four
111for four years. This offers more stability to project users and leaves more 109years. This offers more stability to project users and leaves more time to
112time to upgrade to the following :term:`LTS` release. 110upgrade to the following :term:`LTS` release.
111
112The currently supported :term:`LTS` releases are:
113
114- Version 5.0 ("Scarthgap"), released in April 2024 and supported until April 2028.
115- Version 4.0 ("Kirkstone"), released in May 2022 and supported until May 2026.
113 116
114See :yocto_wiki:`/Stable_Release_and_LTS` for details about the management 117See :yocto_wiki:`/Stable_Release_and_LTS` for details about the management
115of stable and :term:`LTS` releases. 118of stable and :term:`LTS` releases.
116 119
120This documentation was built for the &DISTRO_NAME; release.
121
117.. image:: svg/releases.* 122.. image:: svg/releases.*
118 :width: 100% 123 :width: 100%
119 124
@@ -143,8 +148,8 @@ Additionally, because the test strategies are visible to you as a
143developer, you can validate your projects. This section overviews the 148developer, you can validate your projects. This section overviews the
144available test infrastructure used in the Yocto Project. For information 149available test infrastructure used in the Yocto Project. For information
145on how to run available tests on your projects, see the 150on how to run available tests on your projects, see the
146":ref:`dev-manual/runtime-testing:performing automated runtime testing`" 151":ref:`test-manual/runtime-testing:performing automated runtime testing`"
147section in the Yocto Project Development Tasks Manual. 152section in the Yocto Project Test Environment Manual.
148 153
149The QA/testing infrastructure is woven into the project to the point 154The QA/testing infrastructure is woven into the project to the point
150where core developers take some of it for granted. The infrastructure 155where core developers take some of it for granted. The infrastructure
@@ -170,7 +175,7 @@ consists of the following pieces:
170 operation and functions. However, the test can also use the IP 175 operation and functions. However, the test can also use the IP
171 address of a machine to test. 176 address of a machine to test.
172 177
173- :ref:`ptest <dev-manual/packages:testing packages with ptest>`: 178- :ref:`ptest <test-manual/ptest:testing packages with ptest>`:
174 Runs tests against packages produced during the build for a given 179 Runs tests against packages produced during the build for a given
175 piece of software. The test allows the packages to be run within a 180 piece of software. The test allows the packages to be run within a
176 target image. 181 target image.
@@ -185,7 +190,7 @@ effort has been made to automate the tests so that more people can use
185them and the Yocto Project development team can run them faster and more 190them and the Yocto Project development team can run them faster and more
186efficiently. 191efficiently.
187 192
188The Yocto Project's main Autobuilder (&YOCTO_AB_URL;) publicly tests each Yocto 193The Yocto Project's main :yocto_ab:`Autobuilder <>` publicly tests each Yocto
189Project release's code in the :oe_git:`openembedded-core </openembedded-core>`, 194Project release's code in the :oe_git:`openembedded-core </openembedded-core>`,
190:yocto_git:`poky </poky>` and :oe_git:`bitbake </bitbake>` repositories. The 195:yocto_git:`poky </poky>` and :oe_git:`bitbake </bitbake>` repositories. The
191testing occurs for both the current state of the "master" branch and also for 196testing occurs for both the current state of the "master" branch and also for
diff --git a/documentation/ref-manual/structure.rst b/documentation/ref-manual/structure.rst
index e4d8b54bb9..2190f5b90e 100644
--- a/documentation/ref-manual/structure.rst
+++ b/documentation/ref-manual/structure.rst
@@ -335,6 +335,15 @@ Once the build process gets the sample file, it uses ``sed`` to substitute final
335 version of the ``bblayers.conf.sample`` file in the ``meta-poky/conf/templates/default`` 335 version of the ``bblayers.conf.sample`` file in the ``meta-poky/conf/templates/default``
336 directory. 336 directory.
337 337
338.. _structure-build-conf-bblock.conf:
339
340``build/conf/bblock.conf``
341--------------------------
342
343This configuration file is generated by :doc:`bblock </dev-manual/bblock>` and
344contains the signatures locked by ``bblock``. By default, it does not exist
345and will be created upon the first invocation of ``bblock``.
346
338.. _structure-build-downloads: 347.. _structure-build-downloads:
339 348
340``build/downloads/`` 349``build/downloads/``
@@ -484,6 +493,30 @@ the ":ref:`sdk-manual/appendix-obtain:building an sdk installer`"
484section in the Yocto Project Application Development and the Extensible 493section in the Yocto Project Application Development and the Extensible
485Software Development Kit (eSDK) manual. 494Software Development Kit (eSDK) manual.
486 495
496.. _structure-build-tmp-hosttools:
497
498``build/tmp/hosttools/``
499~~~~~~~~~~~~~~~~~~~~~~~~
500
501The OpenEmbedded build system uses this directory to create symbolic links to
502some of the host components that are allowed to be called within tasks. These
503are basic components listed in the :ref:`ref-manual/system-requirements:required
504packages for the build host` section. These components are also listed in the
505:term:`HOSTTOOLS` variable and are limited to this list to prevent host
506contamination.
507
508.. _structure-build-tmp-pkgdata:
509
510``build/tmp/pkgdata/``
511~~~~~~~~~~~~~~~~~~~~~~
512
513The OpenEmbedded build system uses this directory to store package metadata
514generated during the :ref:`ref-tasks-packagedata` task. The files stored in this
515directory contain information about each output package produced by the
516OpenEmbedded build system, and are used in different ways by the build system
517such as ":ref:`dev-manual/debugging:viewing package information with
518``oe-pkgdata-util```".
519
487.. _structure-build-tmp-sstate-control: 520.. _structure-build-tmp-sstate-control:
488 521
489``build/tmp/sstate-control/`` 522``build/tmp/sstate-control/``
@@ -657,8 +690,15 @@ Here are key subdirectories within each recipe work directory:
657 690
658For efficiency, the OpenEmbedded build system creates and uses this 691For efficiency, the OpenEmbedded build system creates and uses this
659directory to hold recipes that share a work directory with other 692directory to hold recipes that share a work directory with other
660recipes. In practice, this is only used for ``gcc`` and its variants 693recipes. This is for example used for ``gcc`` and its variants (e.g.
661(e.g. ``gcc-cross``, ``libgcc``, ``gcc-runtime``, and so forth). 694``gcc-cross``, ``libgcc``, ``gcc-runtime``, and so forth), or by the
695:ref:`ref-classes-kernel` class to make the kernel source code and kernel build
696artifacts available to out-of-tree kernel modules or other kernel-dependent
697recipes.
698
699In practice, only a few recipes make use of the ``work-shared`` directory. This
700directory is especially useful for recipes that would induce a lot of storage
701space if they were to be shared with the standard :term:`Sysroot` mechanism.
662 702
663.. _structure-meta: 703.. _structure-meta:
664 704
diff --git a/documentation/ref-manual/svg/releases.svg b/documentation/ref-manual/svg/releases.svg
index 036aa467cc..3a379078b8 100644
--- a/documentation/ref-manual/svg/releases.svg
+++ b/documentation/ref-manual/svg/releases.svg
@@ -2,11 +2,14 @@
2<svg 2<svg
3 version="1.1" 3 version="1.1"
4 id="svg2" 4 id="svg2"
5 width="2040.0006" 5 width="1992.7236"
6 height="669.30511" 6 height="613.35602"
7 viewBox="0 0 2040.0006 669.30509" 7 viewBox="0 0 1992.7236 613.35599"
8 sodipodi:docname="releases.svg" 8 sodipodi:docname="releases.svg"
9 inkscape:version="1.1.2 (0a00cf5339, 2022-02-04)" 9 inkscape:version="1.4.1 (93de688d07, 2025-03-30)"
10 inkscape:export-filename="../../../../../../../../tmp/releases.png"
11 inkscape:export-xdpi="96"
12 inkscape:export-ydpi="96"
10 xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" 13 xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
11 xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" 14 xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
12 xmlns="http://www.w3.org/2000/svg" 15 xmlns="http://www.w3.org/2000/svg"
@@ -24,29 +27,29 @@
24 <dc:format>image/svg+xml</dc:format> 27 <dc:format>image/svg+xml</dc:format>
25 <dc:type 28 <dc:type
26 rdf:resource="http://purl.org/dc/dcmitype/StillImage" /> 29 rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
27 <cc:license
28 rdf:resource="http://artlibre.org/licence/lal" />
29 <dc:title>Yocto Project Release Timeline</dc:title> 30 <dc:title>Yocto Project Release Timeline</dc:title>
30 <dc:creator> 31 <dc:creator>
31 <cc:Agent> 32 <cc:Agent>
32 <dc:title>The Yocto Project</dc:title> 33 <dc:title>The Yocto Project</dc:title>
33 </cc:Agent> 34 </cc:Agent>
34 </dc:creator> 35 </dc:creator>
36 <cc:license
37 rdf:resource="http://artlibre.org/licence/lal" />
35 </cc:Work> 38 </cc:Work>
36 <cc:License 39 <cc:License
37 rdf:about="http://creativecommons.org/licenses/by-sa/4.0/"> 40 rdf:about="http://artlibre.org/licence/lal">
38 <cc:permits 41 <cc:permits
39 rdf:resource="http://creativecommons.org/ns#Reproduction" /> 42 rdf:resource="http://creativecommons.org/ns#Reproduction" />
40 <cc:permits 43 <cc:permits
41 rdf:resource="http://creativecommons.org/ns#Distribution" /> 44 rdf:resource="http://creativecommons.org/ns#Distribution" />
42 <cc:requires
43 rdf:resource="http://creativecommons.org/ns#Notice" />
44 <cc:requires
45 rdf:resource="http://creativecommons.org/ns#Attribution" />
46 <cc:permits 45 <cc:permits
47 rdf:resource="http://creativecommons.org/ns#DerivativeWorks" /> 46 rdf:resource="http://creativecommons.org/ns#DerivativeWorks" />
48 <cc:requires 47 <cc:requires
49 rdf:resource="http://creativecommons.org/ns#ShareAlike" /> 48 rdf:resource="http://creativecommons.org/ns#ShareAlike" />
49 <cc:requires
50 rdf:resource="http://creativecommons.org/ns#Notice" />
51 <cc:requires
52 rdf:resource="http://creativecommons.org/ns#Attribution" />
50 </cc:License> 53 </cc:License>
51 </rdf:RDF> 54 </rdf:RDF>
52 </metadata> 55 </metadata>
@@ -66,7 +69,8 @@
66 miter_limit="4" 69 miter_limit="4"
67 scale_width="1" 70 scale_width="1"
68 end_linecap_type="zerowidth" 71 end_linecap_type="zerowidth"
69 not_jump="false" /> 72 not_jump="false"
73 message="" />
70 <marker 74 <marker
71 style="overflow:visible" 75 style="overflow:visible"
72 id="marker5783" 76 id="marker5783"
@@ -404,15 +408,15 @@
404 guidetolerance="10" 408 guidetolerance="10"
405 inkscape:pageopacity="0" 409 inkscape:pageopacity="0"
406 inkscape:pageshadow="2" 410 inkscape:pageshadow="2"
407 inkscape:window-width="1920" 411 inkscape:window-width="3826"
408 inkscape:window-height="1043" 412 inkscape:window-height="2069"
409 id="namedview4" 413 id="namedview4"
410 showgrid="true" 414 showgrid="true"
411 inkscape:zoom="1.4472045" 415 inkscape:zoom="1.5536106"
412 inkscape:cx="987.76641" 416 inkscape:cx="1158.2696"
413 inkscape:cy="357.93145" 417 inkscape:cy="273.55632"
414 inkscape:window-x="1728" 418 inkscape:window-x="2256"
415 inkscape:window-y="0" 419 inkscape:window-y="60"
416 inkscape:window-maximized="1" 420 inkscape:window-maximized="1"
417 inkscape:current-layer="g10" 421 inkscape:current-layer="g10"
418 inkscape:document-rotation="0" 422 inkscape:document-rotation="0"
@@ -422,94 +426,109 @@
422 fit-margin-left="30" 426 fit-margin-left="30"
423 fit-margin-right="30" 427 fit-margin-right="30"
424 fit-margin-bottom="30" 428 fit-margin-bottom="30"
425 inkscape:pagecheckerboard="0"> 429 inkscape:pagecheckerboard="0"
430 inkscape:showpageshadow="2"
431 inkscape:deskcolor="#d1d1d1"
432 showguides="true">
426 <inkscape:grid 433 <inkscape:grid
427 type="xygrid" 434 type="xygrid"
428 id="grid1257" 435 id="grid1257"
429 originx="-289.99936" 436 originx="-289.06071"
430 originy="369.99998" /> 437 originy="478.43017"
438 spacingy="1"
439 spacingx="1"
440 units="px"
441 visible="true" />
431 </sodipodi:namedview> 442 </sodipodi:namedview>
432 <g 443 <g
433 inkscape:groupmode="layer" 444 inkscape:groupmode="layer"
434 inkscape:label="Image" 445 inkscape:label="Image"
435 id="g10" 446 id="g10"
436 transform="translate(-289.99936,370.00003)"> 447 transform="translate(-289.06072,478.43022)">
437 <path 448 <rect
438 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 449 style="fill:#333333;fill-opacity:0;stroke:#000000;stroke-width:0.713896;stroke-linejoin:bevel;stroke-miterlimit:0;stroke-opacity:0"
439 d="m 1080,220.00003 v -515.00007 0 0" 450 id="rect1"
451 width="1992.0098"
452 height="612.64215"
453 x="289.41766"
454 y="-478.07327"
455 ry="24.97636" />
456 <path
457 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.50455;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
458 d="m 563.40434,64.000628 v -524.414808 0 0"
440 id="path207708" /> 459 id="path207708" />
441 <path 460 <path
442 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 461 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.50455;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
443 d="m 1200,220.00003 v -515.00007 0 0" 462 d="m 683.40434,64.000628 v -524.414808 0 0"
444 id="path207708-4" /> 463 id="path207708-4" />
445 <path 464 <path
446 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 465 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.50455;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
447 d="m 1320,220.00003 v -515.00007 0 0" 466 d="m 803.40434,64.000628 v -524.414808 0 0"
448 id="path207708-4-3" /> 467 id="path207708-4-3" />
449 <path 468 <path
450 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 469 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.50455;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
451 d="m 1440,219.99998 v -515.00002 0 0" 470 d="m 923.40434,64.000577 v -524.414757 0 0"
452 id="path207708-4-3-6" /> 471 id="path207708-4-3-6" />
453 <path 472 <path
454 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 473 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.50455;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
455 d="m 1560,219.99998 v -515.00001 0 0" 474 d="m 1043.4043,64.000577 v -524.414757 0 0"
456 id="path207708-4-3-6-2" /> 475 id="path207708-4-3-6-2" />
457 <path 476 <path
458 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 477 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.50455;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
459 d="m 1680,219.99998 v -515.00002 0 0" 478 d="m 1163.4043,64.000577 v -524.414757 0 0"
460 id="path207708-4-3-6-2-8" /> 479 id="path207708-4-3-6-2-8" />
461 <path 480 <path
462 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 481 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.50455;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
463 d="m 1800,219.99998 v -515.00002 0 0" 482 d="m 1283.4043,64.000577 v -524.414757 0 0"
464 id="path207708-4-3-6-2-8-4" /> 483 id="path207708-4-3-6-2-8-4" />
465 <path 484 <path
466 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 485 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.50455;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
467 d="m 1920,219.99998 v -515.00002 0 0" 486 d="m 1403.4043,64.000577 v -524.414757 0 0"
468 id="path207708-4-3-6-2-8-4-3" /> 487 id="path207708-4-3-6-2-8-4-3" />
469 <path 488 <path
470 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 489 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.475347;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
471 d="m 2040,219.99997 v -460.00002 0 0" 490 d="m 1523.4043,64.000568 v -415.757648 0 0"
472 id="path207708-4-3-6-2-8-4-3-8" /> 491 id="path207708-4-3-6-2-8-4-3-8" />
473 <path 492 <path
474 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 493 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.50455;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
475 d="m 2040,219.99998 v -515.00002 0 0" 494 d="m 1523.4043,64.000577 v -524.414757 0 0"
476 id="path207708-4-3-6-2-8-4-3-8-0" /> 495 id="path207708-4-3-6-2-8-4-3-8-0" />
477 <path 496 <path
478 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 497 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.50455;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
479 d="m 2159.954,219.99997 v -514.99999 0 0" 498 d="m 1643.3583,64.000565 v -524.414715 0 0"
480 id="path207708-4-3-6-2-8-4-3-8-4" /> 499 id="path207708-4-3-6-2-8-4-3-8-4" />
481 <path 500 <path
482 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 501 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.50455;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
483 d="m 2280,219.99997 v -514.99999 0 0" 502 d="m 1763.4043,64.000565 v -524.414715 0 0"
484 id="path207708-4-3-6-2-8-4-3-8-4-0" /> 503 id="path207708-4-3-6-2-8-4-3-8-4-0" />
485 <path 504 <path
486 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 505 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.50455;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
487 d="m 960,220.00003 v -515.00007 0 0" 506 d="m 1883.7877,64.878769 v -524.414709 0 0"
488 id="path207708-9" /> 507 id="path207708-4-3-6-2-8-4-3-8-4-0-8" />
489 <path 508 <path
490 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 509 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.50455;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
491 d="m 840,220.00001 v -375 0 0" 510 d="m 2002.9599,64.984489 v -524.414709 0 0"
492 id="path207708-9-6" /> 511 id="path207708-4-3-6-2-8-4-3-8-4-0-8-8" />
493 <path 512 <path
494 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 513 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.50455;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
495 d="m 840,220.00002 v -515.00004 0 0" 514 d="m 2123.2232,62.984489 v -524.414709 0 0"
496 id="path207708-9-6-2" /> 515 id="path207708-4-3-6-2-8-4-3-8-4-0-8-8-1" />
497 <path 516 <path
498 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 517 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.50455;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
499 d="m 720,220.00003 v -515.00007 0 0" 518 d="m 2243.313,63.984489 v -524.414709 0 0"
500 id="path207708-9-6-2-5" /> 519 id="path207708-4-3-6-2-8-4-3-8-4-0-8-8-1-9" />
501 <path 520 <path
502 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 521 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.50455;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
503 d="m 600,220.00003 v -515.00007 0 0" 522 d="m 443.40434,64.000628 v -524.414808 0 0"
504 id="path207708-9-6-2-5-9" /> 523 id="path207708-9" />
505 <path 524 <path
506 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 525 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
507 d="m 480,220.00003 v -515.00007 0 0" 526 d="m 323.40434,64.000608 v -375.000008 0 0"
508 id="path207708-9-6-2-5-9-0" /> 527 id="path207708-9-6" />
509 <path 528 <path
510 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.5;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 529 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.50455;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
511 d="m 360,220.00003 v -515.00007 0 0" 530 d="m 323.40434,64.000616 v -524.414766 0 0"
512 id="path207708-9-6-2-5-9-0-5" /> 531 id="path207708-9-6-2" />
513 <text 532 <text
514 xml:space="preserve" 533 xml:space="preserve"
515 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" 534 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"
@@ -541,186 +560,152 @@
541 x="-59.575905" 560 x="-59.575905"
542 y="580.05695" /></text> 561 y="580.05695" /></text>
543 <rect 562 <rect
544 style="fill:#333333;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2;stroke-opacity:1" 563 style="opacity:0.5;fill:#333333;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2;stroke-opacity:1"
545 id="rect917-0-0" 564 id="rect917-0-0-4-4-9-4"
546 width="980" 565 width="160.00002"
547 height="45.000004" 566 height="45.000004"
548 x="360" 567 x="443.40427"
549 y="154.99997" 568 y="-55.999405"
550 ry="2.2558987" /> 569 ry="2.2558987" />
551 <text 570 <text
552 xml:space="preserve" 571 xml:space="preserve"
553 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:#fffefe;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" 572 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:#fffefe;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
554 x="420.52835" 573 x="491.89841"
555 y="174.12433" 574 y="-36.604408"
556 id="text1185-3-55-4"><tspan 575 id="text1185-3-55-4-0-0-0"><tspan
557 sodipodi:role="line" 576 sodipodi:role="line"
558 x="420.52835" 577 x="491.89841"
559 y="174.12433" 578 y="-36.604408"
560 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;fill:#fffefe;fill-opacity:1;stroke:none" 579 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;fill:#fffefe;fill-opacity:1;stroke:none"
561 id="tspan957-2-8">Dunfell (LTS)</tspan><tspan 580 id="tspan957-2-8-6-3-9">Langdale</tspan><tspan
562 sodipodi:role="line" 581 sodipodi:role="line"
563 x="420.52835" 582 x="491.89841"
564 y="192.121" 583 y="-18.607729"
565 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;fill:#fffefe;fill-opacity:1;stroke:none" 584 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;fill:#fffefe;fill-opacity:1;stroke:none"
566 id="tspan10317">3.1</tspan></text> 585 id="tspan10317-2-9-1">4.1</tspan></text>
567 <rect 586 <rect
568 style="fill:#333333;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2;stroke-opacity:1" 587 style="opacity:0.5;fill:#333333;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2;stroke-opacity:1"
569 id="rect917-0-0-4" 588 id="rect917-0-0-4-4-9-4-5"
570 width="140.00002" 589 width="140.00003"
571 height="45.000004" 590 height="45.000004"
572 x="480" 591 x="583.40436"
573 y="99.999969" 592 y="-110.99944"
574 ry="2.2558987" /> 593 ry="2.2558987" />
575 <text 594 <text
576 xml:space="preserve" 595 xml:space="preserve"
577 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:#fffefe;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" 596 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:#fffefe;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
578 x="534.10651" 597 x="639.46136"
579 y="118.94971" 598 y="-91.498215"
580 id="text1185-3-55-4-0"><tspan 599 id="text1185-3-55-4-0-0-0-1"><tspan
581 sodipodi:role="line" 600 sodipodi:role="line"
582 x="534.10651" 601 x="639.46136"
583 y="118.94971" 602 y="-91.498215"
584 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;fill:#fffefe;fill-opacity:1;stroke:none" 603 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;fill:#fffefe;fill-opacity:1;stroke:none"
585 id="tspan957-2-8-6">Gatesgarth</tspan><tspan 604 id="tspan957-2-8-6-3-9-7">Mickledore</tspan><tspan
586 sodipodi:role="line" 605 sodipodi:role="line"
587 x="534.10651" 606 x="639.46136"
588 y="136.94638" 607 y="-73.501534"
589 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;fill:#fffefe;fill-opacity:1;stroke:none" 608 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;fill:#fffefe;fill-opacity:1;stroke:none"
590 id="tspan10317-2">3.2</tspan></text> 609 id="tspan10317-2-9-1-4">4.2</tspan></text>
591 <rect
592 style="fill:#333333;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2;stroke-opacity:1"
593 id="rect917-0-0-4-4"
594 width="260"
595 height="45.000004"
596 x="599.99994"
597 y="45.000011"
598 ry="2.2558987" />
599 <rect 610 <rect
600 style="fill:#333333;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2;stroke-opacity:1" 611 style="opacity:1;fill:#333333;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2;stroke-opacity:1"
601 id="rect917-0-0-4-4-9" 612 id="rect917-0-0-4-4-9-4-5-3-9-2-3-6"
602 width="160.00002" 613 width="140"
603 height="45.000004" 614 height="45.000004"
604 x="720" 615 x="923.65302"
605 y="-9.9999905" 616 y="-275.19217"
606 ry="2.2558987" /> 617 ry="2.2558987" />
607 <text 618 <text
608 xml:space="preserve" 619 xml:space="preserve"
609 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:#fffefe;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" 620 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:#fffefe;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
610 x="766.10297" 621 x="970.63739"
611 y="9.57586" 622 y="-256.32867"
612 id="text1185-3-55-4-0-0"><tspan 623 id="text1185-3-55-4-0-0-0-1-1-6-4"><tspan
613 sodipodi:role="line" 624 sodipodi:role="line"
614 x="766.10297" 625 x="970.63739"
615 y="9.57586" 626 y="-256.32867"
616 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;fill:#fffefe;fill-opacity:1;stroke:none" 627 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;fill:#fffefe;fill-opacity:1;stroke:none"
617 id="tspan957-2-8-6-3">Honister</tspan><tspan 628 id="tspan957-2-8-6-3-9-7-4-2-0">Styhead</tspan><tspan
618 sodipodi:role="line" 629 sodipodi:role="line"
619 x="766.10297" 630 x="970.63739"
620 y="27.57254" 631 y="-238.332"
621 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;fill:#fffefe;fill-opacity:1;stroke:none" 632 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;fill:#fffefe;fill-opacity:1;stroke:none"
622 id="tspan10317-2-9">3.4</tspan></text> 633 id="tspan10317-2-9-1-4-6-5-6">5.1</tspan></text>
623 <rect 634 <rect
624 style="fill:#333333;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2;stroke-opacity:1" 635 style="fill:#333333;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2;stroke-opacity:1"
625 id="rect917-0-0-4-4-9-4" 636 id="rect917-0-0-4-4-9-4-5-3-9-2-3-6-2"
626 width="160.00002" 637 width="140"
627 height="45.000004" 638 height="45.000004"
628 x="959.99994" 639 x="1043.4697"
629 y="-120" 640 y="-328.48172"
630 ry="2.2558987" /> 641 ry="2.2558987" />
631 <text 642 <text
632 xml:space="preserve" 643 xml:space="preserve"
633 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:#fffefe;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" 644 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:#fffefe;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
634 x="1008.4941" 645 x="1090.4542"
635 y="-100.605" 646 y="-309.61823"
636 id="text1185-3-55-4-0-0-0"><tspan 647 id="text1185-3-55-4-0-0-0-1-1-6-4-7"><tspan
637 sodipodi:role="line" 648 sodipodi:role="line"
638 x="1008.4941" 649 x="1090.4542"
639 y="-100.605" 650 y="-309.61823"
640 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;fill:#fffefe;fill-opacity:1;stroke:none" 651 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;fill:#fffefe;fill-opacity:1;stroke:none"
641 id="tspan957-2-8-6-3-9">Langdale</tspan><tspan 652 id="tspan957-2-8-6-3-9-7-4-2-0-0">Walnascar</tspan><tspan
642 sodipodi:role="line" 653 sodipodi:role="line"
643 x="1008.4941" 654 x="1090.4542"
644 y="-82.608322" 655 y="-291.62155"
645 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;fill:#fffefe;fill-opacity:1;stroke:none" 656 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;fill:#fffefe;fill-opacity:1;stroke:none"
646 id="tspan10317-2-9-1">4.1</tspan></text> 657 id="tspan10317-2-9-1-4-6-5-6-9">5.2</tspan></text>
647 <rect 658 <rect
648 style="opacity:1;fill:#333333;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2;stroke-opacity:1" 659 style="opacity:0.75;fill:#251f32;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2;stroke-opacity:1"
649 id="rect917-0-0-4-4-9-4-5" 660 id="rect917-0-0-4-4-9-4-5-3-9-2-3-67"
650 width="140.00003" 661 width="140"
651 height="45.000004" 662 height="45.000004"
652 x="1100" 663 x="1163.6425"
653 y="-175.00003" 664 y="-382.27469"
654 ry="2.2558987" /> 665 ry="2.2558987" />
655 <text 666 <text
656 xml:space="preserve" 667 xml:space="preserve"
657 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:#fffefe;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" 668 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:#fffefe;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
658 x="1156.057" 669 x="1214.9716"
659 y="-155.49881" 670 y="-363.89413"
660 id="text1185-3-55-4-0-0-0-1"><tspan 671 id="text1185-3-55-4-0-0-0-1-1-6-4-3-53"><tspan
661 sodipodi:role="line" 672 sodipodi:role="line"
662 x="1156.057" 673 x="1214.9716"
663 y="-155.49881" 674 y="-363.89413"
664 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;fill:#fffefe;fill-opacity:1;stroke:none" 675 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;fill:#fffefe;fill-opacity:1;stroke:none"
665 id="tspan957-2-8-6-3-9-7">Mickledore</tspan><tspan 676 id="tspan957-2-8-6-3-9-7-4-2-0-5-5">Whinlatter</tspan><tspan
666 sodipodi:role="line" 677 sodipodi:role="line"
667 x="1156.057" 678 x="1214.9716"
668 y="-137.50214" 679 y="-345.89746"
669 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;fill:#fffefe;fill-opacity:1;stroke:none" 680 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;fill:#fffefe;fill-opacity:1;stroke:none"
670 id="tspan10317-2-9-1-4">4.2</tspan></text> 681 id="tspan10317-2-9-1-4-6-5-6-6-6">5.3</tspan></text>
671 <g
672 id="g1258">
673 <rect
674 style="fill:#333333;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2;stroke-opacity:1"
675 id="rect917-0-0-4-4-9-4-5-38"
676 width="120.00002"
677 height="45.000004"
678 x="1220"
679 y="-230.00005"
680 ry="2.2558987" />
681 <text
682 xml:space="preserve"
683 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:#fffefe;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
684 x="1269.2329"
685 y="-210.32925"
686 id="text1185-3-55-4-0-0-0-1-1"><tspan
687 sodipodi:role="line"
688 x="1269.2329"
689 y="-210.32925"
690 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;fill:#fffefe;fill-opacity:1;stroke:none"
691 id="tspan957-2-8-6-3-9-7-4">Nanbield</tspan><tspan
692 sodipodi:role="line"
693 x="1269.2329"
694 y="-192.33258"
695 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;fill:#fffefe;fill-opacity:1;stroke:none"
696 id="tspan10317-2-9-1-4-6">4.3</tspan></text>
697 </g>
698 <rect 682 <rect
699 style="opacity:0.75;fill:#241f31;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2;stroke-opacity:1" 683 style="opacity:0.75;fill:#251f32;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:5.29752;stroke-opacity:1"
700 id="rect917-0-0-4-4-9-4-5-3-9-2" 684 id="rect917-0-0-4-4-9-4-5-3-9-2-3-67-6"
701 width="140" 685 width="982.23163"
702 height="45.000004" 686 height="45.000004"
703 x="1440" 687 x="1283.7023"
704 y="-340.00003" 688 y="-436.77539"
705 ry="2.2558987" /> 689 ry="2.2558987" />
706 <text 690 <text
707 xml:space="preserve" 691 xml:space="preserve"
708 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:#fffefe;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" 692 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:#fffefe;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
709 x="1487.233" 693 x="1335.1118"
710 y="-320.32928" 694 y="-418.39484"
711 id="text1185-3-55-4-0-0-0-1-1-6-4"><tspan 695 id="text1185-3-55-4-0-0-0-1-1-6-4-3-53-0"><tspan
712 sodipodi:role="line" 696 sodipodi:role="line"
713 x="1487.233" 697 x="1335.1118"
714 y="-320.32928" 698 y="-418.39484"
715 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;fill:#fffefe;fill-opacity:1;stroke:none" 699 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;fill:#fffefe;fill-opacity:1;stroke:none"
716 id="tspan957-2-8-6-3-9-7-4-2-0">Styhead</tspan><tspan 700 id="tspan957-2-8-6-3-9-7-4-2-0-5-5-6">Wrynose</tspan><tspan
717 sodipodi:role="line" 701 sodipodi:role="line"
718 x="1487.233" 702 x="1335.1118"
719 y="-302.33261" 703 y="-400.39816"
720 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;fill:#fffefe;fill-opacity:1;stroke:none" 704 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;fill:#fffefe;fill-opacity:1;stroke:none"
721 id="tspan10317-2-9-1-4-6-5-6">5.1</tspan></text> 705 id="tspan10317-2-9-1-4-6-5-6-6-6-2">6.0</tspan></text>
722 <g 706 <g
723 id="g1591"> 707 id="g1591"
708 transform="translate(-516.59566,64.000598)">
724 <rect 709 <rect
725 style="fill:#333333;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2;stroke-opacity:1" 710 style="fill:#333333;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2;stroke-opacity:1"
726 id="rect917-0-0-4-4-9-9" 711 id="rect917-0-0-4-4-9-9"
@@ -749,42 +734,26 @@
749 <path 734 <path
750 id="rect917-0-0-4-4-9-9-9" 735 id="rect917-0-0-4-4-9-9-9"
751 style="fill:#333333;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2;stroke-opacity:1" 736 style="fill:#333333;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:2;stroke-opacity:1"
752 d="m 1322.3015,-285.00003 c -1.2753,0 -2.302,1.00609 -2.302,2.25586 v 40.48828 c 0,1.24977 1.0267,2.25586 2.302,2.25586 h 975.0412 c 1.2754,0 2.302,-1.00609 2.302,-2.25586 v -40.48828 c 0,-1.24977 -1.0266,-2.25586 -2.302,-2.25586 z" /> 737 d="m 805.70584,-220.99944 c -1.2753,0 -2.302,1.00609 -2.302,2.25586 v 40.48828 c 0,1.24977 1.0267,2.25586 2.302,2.25586 H 1780.747 c 1.2754,0 2.302,-1.00609 2.302,-2.25586 v -40.48828 c 0,-1.24977 -1.0266,-2.25586 -2.302,-2.25586 z" />
753 <text 738 <text
754 xml:space="preserve" 739 xml:space="preserve"
755 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:#fffefe;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" 740 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:#fffefe;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
756 x="1390.4988" 741 x="873.90314"
757 y="-265.64832" 742 y="-201.64772"
758 id="text1185-3-55-4-0-0-9-0"><tspan 743 id="text1185-3-55-4-0-0-9-0"><tspan
759 sodipodi:role="line" 744 sodipodi:role="line"
760 x="1390.4988" 745 x="873.90314"
761 y="-265.64832" 746 y="-201.64772"
762 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;fill:#fffefe;fill-opacity:1;stroke:none" 747 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;fill:#fffefe;fill-opacity:1;stroke:none"
763 id="tspan957-2-8-6-3-6-8">Scarthgap (LTS)</tspan><tspan 748 id="tspan957-2-8-6-3-6-8">Scarthgap (LTS)</tspan><tspan
764 sodipodi:role="line" 749 sodipodi:role="line"
765 x="1390.4988" 750 x="873.90314"
766 y="-247.65164" 751 y="-183.65105"
767 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;fill:#fffefe;fill-opacity:1;stroke:none" 752 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;fill:#fffefe;fill-opacity:1;stroke:none"
768 id="tspan10317-2-9-0-1">5.0</tspan></text> 753 id="tspan10317-2-9-0-1">5.0</tspan></text>
769 <text
770 xml:space="preserve"
771 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:#fffefe;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
772 x="653.72168"
773 y="64.866302"
774 id="text1185-3-55-4-0-0-7"><tspan
775 sodipodi:role="line"
776 x="653.72168"
777 y="64.866302"
778 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;fill:#fffefe;fill-opacity:1;stroke:none"
779 id="tspan957-2-8-6-3-2">Hardknott </tspan><tspan
780 sodipodi:role="line"
781 x="653.72168"
782 y="82.862984"
783 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;fill:#fffefe;fill-opacity:1;stroke:none"
784 id="tspan10317-2-9-8">3.3</tspan></text>
785 <g 754 <g
786 id="g1125-0" 755 id="g1125-0"
787 transform="matrix(0.42240595,0,0,0.41654472,354.53445,-399.96314)" 756 transform="matrix(0.42240595,0,0,0.41654472,330.77064,-497.11721)"
788 style="stroke:none;stroke-width:2.38399"> 757 style="stroke:none;stroke-width:2.38399">
789 <rect 758 <rect
790 style="opacity:1;fill:#333333;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:4.76797;stroke-opacity:1" 759 style="opacity:1;fill:#333333;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:4.76797;stroke-opacity:1"
@@ -873,234 +842,149 @@
873 <text 842 <text
874 xml:space="preserve" 843 xml:space="preserve"
875 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" 844 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"
876 x="1199.6055" 845 x="683.00983"
877 y="250.21216" 846 y="94.212761"
878 id="text1185-9-7-1-1"><tspan 847 id="text1185-9-7-1-1"><tspan
879 sodipodi:role="line" 848 sodipodi:role="line"
880 x="1199.6055" 849 x="683.00983"
881 y="250.21216" 850 y="94.212761"
882 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';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" 851 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';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"
883 id="tspan31345">Oct.</tspan><tspan 852 id="tspan31345">Oct.</tspan><tspan
884 sodipodi:role="line" 853 sodipodi:role="line"
885 x="1199.6055" 854 x="683.00983"
886 y="268.20883" 855 y="112.20944"
887 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';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" 856 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';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"
888 id="tspan49906">2023</tspan></text> 857 id="tspan49906">2023</tspan></text>
889 <text 858 <text
890 xml:space="preserve" 859 xml:space="preserve"
891 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" 860 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"
892 x="1439.3904" 861 x="922.79474"
893 y="249.86044" 862 y="93.861046"
894 id="text1185-9-7-1-1-89"><tspan 863 id="text1185-9-7-1-1-89"><tspan
895 sodipodi:role="line" 864 sodipodi:role="line"
896 x="1439.3904" 865 x="922.79474"
897 y="249.86044" 866 y="93.861046"
898 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';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" 867 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';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"
899 id="tspan31345-7">Oct.</tspan><tspan 868 id="tspan31345-7">Oct.</tspan><tspan
900 sodipodi:role="line" 869 sodipodi:role="line"
901 x="1439.3904" 870 x="922.79474"
902 y="267.85712" 871 y="111.85773"
903 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';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" 872 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';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"
904 id="tspan49906-76">2024</tspan></text> 873 id="tspan49906-76">2024</tspan></text>
905 <text 874 <text
906 xml:space="preserve" 875 xml:space="preserve"
907 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" 876 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"
908 x="1679.3094" 877 x="1162.7139"
909 y="250.58356" 878 y="94.58416"
910 id="text1185-9-7-1-1-89-6"><tspan 879 id="text1185-9-7-1-1-89-6"><tspan
911 sodipodi:role="line" 880 sodipodi:role="line"
912 x="1679.3094" 881 x="1162.7139"
913 y="250.58356" 882 y="94.58416"
914 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';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" 883 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';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"
915 id="tspan31345-7-8">Oct.</tspan><tspan 884 id="tspan31345-7-8">Oct.</tspan><tspan
916 sodipodi:role="line" 885 sodipodi:role="line"
917 x="1679.3094" 886 x="1162.7139"
918 y="268.58023" 887 y="112.58084"
919 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';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" 888 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';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"
920 id="tspan49906-76-0">2025</tspan></text> 889 id="tspan49906-76-0">2025</tspan></text>
921 <text 890 <text
922 xml:space="preserve" 891 xml:space="preserve"
923 style="font-weight:bold;font-size:6.66667px;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"
924 x="849.49744"
925 y="61.106953"
926 id="text1185-9-7-1-1-0"><tspan
927 sodipodi:role="line"
928 x="849.49744"
929 y="61.106953"
930 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:6.66667px;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:end;text-anchor:end;fill:#fffefe;fill-opacity:1;stroke:none"
931 id="tspan46212">Support for this version was extended to leave</tspan><tspan
932 sodipodi:role="line"
933 x="849.49744"
934 y="70.105324"
935 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:6.66667px;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:end;text-anchor:end;fill:#fffefe;fill-opacity:1;stroke:none"
936 id="tspan120364">users more time to adapt to override syntax</tspan><tspan
937 sodipodi:role="line"
938 x="849.49744"
939 y="79.103691"
940 style="font-style:normal;font-variant:normal;font-weight:normal;font-stretch:normal;font-size:6.66667px;font-family:'Liberation Sans';-inkscape-font-specification:'Liberation Sans';font-variant-ligatures:normal;font-variant-caps:normal;font-variant-numeric:normal;font-variant-east-asian:normal;text-align:end;text-anchor:end;fill:#fffefe;fill-opacity:1;stroke:none"
941 id="tspan123280">changes in the 3.4 release.</tspan></text>
942 <text
943 xml:space="preserve"
944 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" 892 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"
945 x="959.52008" 893 x="442.92441"
946 y="250.67822" 894 y="94.678825"
947 id="text1185-9-7-1-1-0-7"><tspan 895 id="text1185-9-7-1-1-0-7"><tspan
948 sodipodi:role="line" 896 sodipodi:role="line"
949 x="959.52008" 897 x="442.92441"
950 y="250.67822" 898 y="94.678825"
951 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';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" 899 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';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"
952 id="tspan31345-42-7">Oct.</tspan><tspan 900 id="tspan31345-42-7">Oct.</tspan><tspan
953 sodipodi:role="line" 901 sodipodi:role="line"
954 x="959.52008" 902 x="442.92441"
955 y="268.6749" 903 y="112.67551"
956 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';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" 904 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';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"
957 id="tspan49906-9-6">2022</tspan></text> 905 id="tspan49906-9-6">2022</tspan></text>
958 <text 906 <text
959 xml:space="preserve" 907 xml:space="preserve"
960 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" 908 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"
961 x="719.13617" 909 x="324.32913"
962 y="250.21216" 910 y="94.076042"
963 id="text1185-9-7-1-1-2"><tspan
964 sodipodi:role="line"
965 x="719.13617"
966 y="250.21216"
967 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';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"
968 id="tspan31345-1">Oct.</tspan><tspan
969 sodipodi:role="line"
970 x="719.13617"
971 y="268.20883"
972 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';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"
973 id="tspan49906-5">2021</tspan></text>
974 <text
975 xml:space="preserve"
976 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"
977 x="478.82367"
978 y="250.21216"
979 id="text1185-9-7-1-1-80"><tspan
980 sodipodi:role="line"
981 x="478.82367"
982 y="250.21216"
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';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"
984 id="tspan31345-5">Oct.</tspan><tspan
985 sodipodi:role="line"
986 x="478.82367"
987 y="268.20883"
988 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';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"
989 id="tspan49906-6">2020</tspan></text>
990 <text
991 xml:space="preserve"
992 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"
993 x="361.81961"
994 y="250.07544"
995 id="text1185-9-7-1-1-8"><tspan
996 sodipodi:role="line"
997 x="361.81961"
998 y="250.07544"
999 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';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"
1000 id="tspan31345-4">Apr.</tspan><tspan
1001 sodipodi:role="line"
1002 x="361.81961"
1003 y="268.07211"
1004 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';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"
1005 id="tspan49906-7">2020</tspan></text>
1006 <text
1007 xml:space="preserve"
1008 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"
1009 x="840.9248"
1010 y="250.07544"
1011 id="text1185-9-7-1-1-8-1"><tspan 911 id="text1185-9-7-1-1-8-1"><tspan
1012 sodipodi:role="line" 912 sodipodi:role="line"
1013 x="840.9248" 913 x="324.32913"
1014 y="250.07544" 914 y="94.076042"
1015 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';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" 915 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';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"
1016 id="tspan31345-4-0">Apr</tspan><tspan 916 id="tspan31345-4-0">Apr</tspan><tspan
1017 sodipodi:role="line" 917 sodipodi:role="line"
1018 x="840.9248" 918 x="324.32913"
1019 y="268.07211" 919 y="112.07272"
1020 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';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" 920 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';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"
1021 id="tspan49906-7-3">2022</tspan></text> 921 id="tspan49906-7-3">2022</tspan></text>
1022 <text 922 <text
1023 xml:space="preserve" 923 xml:space="preserve"
1024 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" 924 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"
1025 x="1321.8608" 925 x="805.2652"
1026 y="250.07544" 926 y="94.076042"
1027 id="text1185-9-7-1-1-8-1-0"><tspan 927 id="text1185-9-7-1-1-8-1-0"><tspan
1028 sodipodi:role="line" 928 sodipodi:role="line"
1029 x="1321.8608" 929 x="805.2652"
1030 y="250.07544" 930 y="94.076042"
1031 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';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" 931 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';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"
1032 id="tspan31345-4-0-4">Apr.</tspan><tspan 932 id="tspan31345-4-0-4">Apr.</tspan><tspan
1033 sodipodi:role="line" 933 sodipodi:role="line"
1034 x="1321.8608" 934 x="805.2652"
1035 y="268.07211" 935 y="112.07272"
1036 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';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" 936 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';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"
1037 id="tspan49906-7-3-8">2024</tspan></text> 937 id="tspan49906-7-3-8">2024</tspan></text>
1038 <text 938 <text
1039 xml:space="preserve" 939 xml:space="preserve"
1040 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" 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"
1041 x="1561.8163" 941 x="1045.2207"
1042 y="249.66977" 942 y="93.670372"
1043 id="text1185-9-7-1-1-8-1-0-4"><tspan 943 id="text1185-9-7-1-1-8-1-0-4"><tspan
1044 sodipodi:role="line" 944 sodipodi:role="line"
1045 x="1561.8163" 945 x="1045.2207"
1046 y="249.66977" 946 y="93.670372"
1047 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';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" 947 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';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"
1048 id="tspan31345-4-0-4-81">Apr.</tspan><tspan 948 id="tspan31345-4-0-4-81">Apr.</tspan><tspan
1049 sodipodi:role="line" 949 sodipodi:role="line"
1050 x="1561.8163" 950 x="1045.2207"
1051 y="267.66644" 951 y="111.66705"
1052 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';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" 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';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"
1053 id="tspan49906-7-3-8-2">2025</tspan></text> 953 id="tspan49906-7-3-8-2">2025</tspan></text>
1054 <text 954 <text
1055 xml:space="preserve" 955 xml:space="preserve"
1056 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" 956 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"
1057 x="1802.1477" 957 x="1285.5521"
1058 y="250.26334" 958 y="94.263939"
1059 id="text1185-9-7-1-1-8-1-0-4-2"><tspan 959 id="text1185-9-7-1-1-8-1-0-4-2"><tspan
1060 sodipodi:role="line" 960 sodipodi:role="line"
1061 x="1802.1477" 961 x="1285.5521"
1062 y="250.26334" 962 y="94.263939"
1063 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';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" 963 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';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"
1064 id="tspan31345-4-0-4-81-5">Apr.</tspan><tspan 964 id="tspan31345-4-0-4-81-5">Apr.</tspan><tspan
1065 sodipodi:role="line" 965 sodipodi:role="line"
1066 x="1802.1477" 966 x="1285.5521"
1067 y="268.26001" 967 y="112.26062"
1068 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';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" 968 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';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"
1069 id="tspan49906-7-3-8-2-8">2026</tspan></text> 969 id="tspan49906-7-3-8-2-8">2026</tspan></text>
1070 <text 970 <text
1071 xml:space="preserve" 971 xml:space="preserve"
1072 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" 972 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"
1073 x="1081.4458" 973 x="564.85016"
1074 y="250.07544" 974 y="94.076042"
1075 id="text1185-9-7-1-1-8-1-0-2"><tspan 975 id="text1185-9-7-1-1-8-1-0-2"><tspan
1076 sodipodi:role="line" 976 sodipodi:role="line"
1077 x="1081.4458" 977 x="564.85016"
1078 y="250.07544" 978 y="94.076042"
1079 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';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" 979 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';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"
1080 id="tspan31345-4-0-4-8">Apr.</tspan><tspan 980 id="tspan31345-4-0-4-8">Apr.</tspan><tspan
1081 sodipodi:role="line" 981 sodipodi:role="line"
1082 x="1081.4458" 982 x="564.85016"
1083 y="268.07211" 983 y="112.07272"
1084 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';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" 984 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';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"
1085 id="tspan49906-7-3-8-3">2023</tspan></text> 985 id="tspan49906-7-3-8-3">2023</tspan></text>
1086 <text 986 <text
1087 xml:space="preserve" 987 xml:space="preserve"
1088 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"
1089 x="602.51526"
1090 y="250.07544"
1091 id="text1185-9-7-1-1-8-1-7"><tspan
1092 sodipodi:role="line"
1093 x="602.51526"
1094 y="250.07544"
1095 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';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"
1096 id="tspan31345-4-0-5">Apr.</tspan><tspan
1097 sodipodi:role="line"
1098 x="602.51526"
1099 y="268.07211"
1100 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';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"
1101 id="tspan49906-7-3-6">2021</tspan></text>
1102 <text
1103 xml:space="preserve"
1104 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" 988 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"
1105 x="-16.290483" 989 x="-16.290483"
1106 y="345.7359" 990 y="345.7359"
@@ -1111,252 +995,117 @@
1111 y="345.7359" /></text> 995 y="345.7359" /></text>
1112 <path 996 <path
1113 id="path29430" 997 id="path29430"
1114 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 998 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1.99503;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1115 d="M 319.99936,219.99912 H 2300 Z" /> 999 d="M 307.54809,63.999718 H 2277.72 Z" />
1116 <path
1117 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1118 d="m 360,219.99997 v 10.00004 0"
1119 id="path29548" />
1120 <path
1121 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1122 d="m 480,219.99996 v 10 0"
1123 id="path29548-5" />
1124 <path 1000 <path
1125 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1001 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1126 d="m 600,219.99992 v 10.00005 0" 1002 d="m 323.40434,64.000618 v 9.99995 0"
1127 id="path29548-5-1" />
1128 <path
1129 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1130 d="m 720,220.00002 v 9.99999 0"
1131 id="path29548-5-1-3" />
1132 <path
1133 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1134 d="m 840,220.00002 v 9.99995 0"
1135 id="path29548-5-1-3-6" /> 1003 id="path29548-5-1-3-6" />
1136 <path 1004 <path
1137 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1005 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1138 d="m 960,220.00002 v 9.99999 0" 1006 d="m 443.40434,64.000618 v 9.99999 0"
1139 id="path29548-5-1-3-6-3" /> 1007 id="path29548-5-1-3-6-3" />
1140 <path 1008 <path
1141 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1009 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1142 d="m 1080,220.00002 v 9.99999 0" 1010 d="m 563.40434,64.000618 v 9.99999 0"
1143 id="path29548-5-1-3-6-3-1" /> 1011 id="path29548-5-1-3-6-3-1" />
1144 <path 1012 <path
1145 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1013 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1146 d="m 380,219.99997 v 5.00004 0" 1014 d="m 343.40434,64.000568 v 5.00004 0"
1147 id="path29548-8"
1148 inkscape:transform-center-x="14.782001"
1149 inkscape:transform-center-y="-0.085282837" />
1150 <path
1151 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1152 d="m 400,219.99997 v 5.00004 0"
1153 id="path29548-8-5"
1154 inkscape:transform-center-x="14.782001"
1155 inkscape:transform-center-y="-0.085282837" />
1156 <path
1157 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.999997;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1158 d="m 420,219.99997 v 5 0"
1159 id="path29548-8-5-0"
1160 inkscape:transform-center-x="14.782001"
1161 inkscape:transform-center-y="-0.085282155" />
1162 <path
1163 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.999997;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1164 d="m 440,219.99997 v 5 0"
1165 id="path29548-8-5-0-6"
1166 inkscape:transform-center-x="14.782001"
1167 inkscape:transform-center-y="-0.085282155" />
1168 <path
1169 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1170 d="m 460,219.99997 v 5.00004 0"
1171 id="path29548-8-5-0-6-4-6"
1172 inkscape:transform-center-x="14.782001"
1173 inkscape:transform-center-y="-0.085282837" />
1174 <path
1175 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1176 d="m 500,219.99997 v 5.00004 0"
1177 id="path29548-8-5-0-6-4-6-2"
1178 inkscape:transform-center-x="14.782001"
1179 inkscape:transform-center-y="-0.085282837" />
1180 <path
1181 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:0.999997;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1182 d="m 520,219.99997 v 5 0"
1183 id="path29548-8-5-0-6-4-6-2-9"
1184 inkscape:transform-center-x="14.782001"
1185 inkscape:transform-center-y="-0.085282155" />
1186 <path
1187 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1188 d="m 540,219.99997 v 5.00004 0"
1189 id="path29548-8-5-0-6-4-6-2-9-0"
1190 inkscape:transform-center-x="14.782001"
1191 inkscape:transform-center-y="-0.085282837" />
1192 <path
1193 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1194 d="m 560,219.99997 v 5.00004 0"
1195 id="path29548-8-5-0-6-4-6-2-9-0-8"
1196 inkscape:transform-center-x="14.782001"
1197 inkscape:transform-center-y="-0.085282837" />
1198 <path
1199 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1200 d="m 580,219.99997 v 5.00004 0"
1201 id="path29548-8-5-0-6-4-6-2-9-0-8-1"
1202 inkscape:transform-center-x="14.782001"
1203 inkscape:transform-center-y="-0.085282837" />
1204 <path
1205 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1206 d="m 620.266,219.99997 v 5.00004 0"
1207 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3"
1208 inkscape:transform-center-x="14.782001"
1209 inkscape:transform-center-y="-0.085282837" />
1210 <path
1211 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1212 d="m 640,219.99997 v 5.00004 0"
1213 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1"
1214 inkscape:transform-center-x="14.782001"
1215 inkscape:transform-center-y="-0.085282837" />
1216 <path
1217 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1218 d="m 660,219.99997 v 5.00004 0"
1219 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9"
1220 inkscape:transform-center-x="14.782001"
1221 inkscape:transform-center-y="-0.085282837" />
1222 <path
1223 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1224 d="m 679.61073,219.99997 v 5.00004 0"
1225 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6"
1226 inkscape:transform-center-x="14.782001"
1227 inkscape:transform-center-y="-0.085282837" />
1228 <path
1229 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1230 d="m 700,219.99997 v 5.00004 0"
1231 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9"
1232 inkscape:transform-center-x="14.782001"
1233 inkscape:transform-center-y="-0.085282837" />
1234 <path
1235 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1236 d="m 740,219.99997 v 5.00004 0"
1237 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3"
1238 inkscape:transform-center-x="14.782001"
1239 inkscape:transform-center-y="-0.085282837" />
1240 <path
1241 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1242 d="m 760,219.99997 v 5.00004 0"
1243 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4"
1244 inkscape:transform-center-x="14.782001"
1245 inkscape:transform-center-y="-0.085282837" />
1246 <path
1247 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1248 d="m 780.36587,219.99997 v 5.00004 0"
1249 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0"
1250 inkscape:transform-center-x="14.782001"
1251 inkscape:transform-center-y="-0.085282837" />
1252 <path
1253 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1254 d="m 800,219.99997 v 5.00004 0"
1255 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4"
1256 inkscape:transform-center-x="14.782001"
1257 inkscape:transform-center-y="-0.085282837" />
1258 <path
1259 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1260 d="m 820,219.99997 v 5.00004 0"
1261 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6"
1262 inkscape:transform-center-x="14.782001"
1263 inkscape:transform-center-y="-0.085282837" />
1264 <path
1265 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1266 d="m 860,219.99997 v 5.00004 0"
1267 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2" 1015 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2"
1268 inkscape:transform-center-x="14.782001" 1016 inkscape:transform-center-x="14.782001"
1269 inkscape:transform-center-y="-0.085282837" /> 1017 inkscape:transform-center-y="-0.085282837" />
1270 <path 1018 <path
1271 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1019 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1272 d="m 880,219.99997 v 5.00004 0" 1020 d="m 363.40434,64.000568 v 5.00004 0"
1273 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2" 1021 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2"
1274 inkscape:transform-center-x="14.782001" 1022 inkscape:transform-center-x="14.782001"
1275 inkscape:transform-center-y="-0.085282837" /> 1023 inkscape:transform-center-y="-0.085282837" />
1276 <path 1024 <path
1277 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1025 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1278 d="m 899.72384,219.99997 v 5.00004 0" 1026 d="m 383.12818,64.000568 v 5.00004 0"
1279 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7" 1027 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7"
1280 inkscape:transform-center-x="14.782001" 1028 inkscape:transform-center-x="14.782001"
1281 inkscape:transform-center-y="-0.085282837" /> 1029 inkscape:transform-center-y="-0.085282837" />
1282 <path 1030 <path
1283 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1031 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1284 d="m 920,219.99997 v 5.00004 0" 1032 d="m 403.40434,64.000568 v 5.00004 0"
1285 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6" 1033 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6"
1286 inkscape:transform-center-x="14.782001" 1034 inkscape:transform-center-x="14.782001"
1287 inkscape:transform-center-y="-0.085282837" /> 1035 inkscape:transform-center-y="-0.085282837" />
1288 <path 1036 <path
1289 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1037 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1290 d="m 940,219.99997 v 5.00004 0" 1038 d="m 423.40434,64.000568 v 5.00004 0"
1291 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1" 1039 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1"
1292 inkscape:transform-center-x="14.782001" 1040 inkscape:transform-center-x="14.782001"
1293 inkscape:transform-center-y="-0.085282837" /> 1041 inkscape:transform-center-y="-0.085282837" />
1294 <path 1042 <path
1295 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1043 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1296 d="m 980,219.99997 v 5.00004 0" 1044 d="m 463.40434,64.000568 v 5.00004 0"
1297 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9" 1045 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9"
1298 inkscape:transform-center-x="14.782001" 1046 inkscape:transform-center-x="14.782001"
1299 inkscape:transform-center-y="-0.085282837" /> 1047 inkscape:transform-center-y="-0.085282837" />
1300 <path 1048 <path
1301 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1049 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1302 d="m 1000,219.99997 v 5.00004 0" 1050 d="m 483.40434,64.000568 v 5.00004 0"
1303 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9" 1051 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9"
1304 inkscape:transform-center-x="14.782001" 1052 inkscape:transform-center-x="14.782001"
1305 inkscape:transform-center-y="-0.085282837" /> 1053 inkscape:transform-center-y="-0.085282837" />
1306 <path 1054 <path
1307 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1055 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1308 d="m 1020,219.99997 v 5.00004 0" 1056 d="m 503.40434,64.000568 v 5.00004 0"
1309 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-1" 1057 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-1"
1310 inkscape:transform-center-x="14.782001" 1058 inkscape:transform-center-x="14.782001"
1311 inkscape:transform-center-y="-0.085282837" /> 1059 inkscape:transform-center-y="-0.085282837" />
1312 <path 1060 <path
1313 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1061 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1314 d="m 1040,219.99997 v 5.00004 0" 1062 d="m 523.40434,64.000568 v 5.00004 0"
1315 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-1-4" 1063 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-1-4"
1316 inkscape:transform-center-x="14.782001" 1064 inkscape:transform-center-x="14.782001"
1317 inkscape:transform-center-y="-0.085282837" /> 1065 inkscape:transform-center-y="-0.085282837" />
1318 <path 1066 <path
1319 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1067 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1320 d="m 1059.7216,219.99997 v 5.00004 0" 1068 d="m 543.12594,64.000568 v 5.00004 0"
1321 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-1-4-9" 1069 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-1-4-9"
1322 inkscape:transform-center-x="-14.78205" 1070 inkscape:transform-center-x="-14.78205"
1323 inkscape:transform-center-y="-0.085282837" /> 1071 inkscape:transform-center-y="-0.085282837" />
1324 <path 1072 <path
1325 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1073 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1326 d="m 1100,219.99997 v 5.00004 0" 1074 d="m 583.40434,64.000568 v 5.00004 0"
1327 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-0" 1075 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-0"
1328 inkscape:transform-center-x="14.782001" 1076 inkscape:transform-center-x="14.782001"
1329 inkscape:transform-center-y="-0.085282837" /> 1077 inkscape:transform-center-y="-0.085282837" />
1330 <path 1078 <path
1331 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1079 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1332 d="m 1120,219.99997 v 5.00004 0" 1080 d="m 603.40434,64.000568 v 5.00004 0"
1333 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-7" 1081 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-7"
1334 inkscape:transform-center-x="14.782001" 1082 inkscape:transform-center-x="14.782001"
1335 inkscape:transform-center-y="-0.085282837" /> 1083 inkscape:transform-center-y="-0.085282837" />
1336 <path 1084 <path
1337 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1085 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1338 d="m 1140,219.99997 v 5.00004 0" 1086 d="m 623.40434,64.000568 v 5.00004 0"
1339 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-1-5" 1087 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-1-5"
1340 inkscape:transform-center-x="14.782001" 1088 inkscape:transform-center-x="14.782001"
1341 inkscape:transform-center-y="-0.085282837" /> 1089 inkscape:transform-center-y="-0.085282837" />
1342 <path 1090 <path
1343 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1091 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1344 d="m 1160,219.99997 v 5.00004 0" 1092 d="m 643.40434,64.000568 v 5.00004 0"
1345 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-1-4-8" 1093 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-1-4-8"
1346 inkscape:transform-center-x="14.782001" 1094 inkscape:transform-center-x="14.782001"
1347 inkscape:transform-center-y="-0.085282837" /> 1095 inkscape:transform-center-y="-0.085282837" />
1348 <path 1096 <path
1349 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1097 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1350 d="m 1179.7216,219.99997 v 5.00004 0" 1098 d="m 663.12594,64.000568 v 5.00004 0"
1351 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-1-4-9-7" 1099 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-1-4-9-7"
1352 inkscape:transform-center-x="-14.78205" 1100 inkscape:transform-center-x="-14.78205"
1353 inkscape:transform-center-y="-0.085282837" /> 1101 inkscape:transform-center-y="-0.085282837" />
1354 <path 1102 <path
1355 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1103 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1356 d="m 1320,219.99996 v 10 0" 1104 d="m 803.40434,64.000558 v 10 0"
1357 id="path29548-5-1-3-6-3-1-0-8" /> 1105 id="path29548-5-1-3-6-3-1-0-8" />
1358 <g 1106 <g
1359 id="g1267"> 1107 id="g1267"
1108 transform="translate(-516.59566,-155.99941)">
1360 <path 1109 <path
1361 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1110 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1362 d="m 1200,220.00002 v 9.99999 0" 1111 d="m 1200,220.00002 v 9.99999 0"
@@ -1394,7 +1143,7 @@
1394 </g> 1143 </g>
1395 <g 1144 <g
1396 id="g1267-4" 1145 id="g1267-4"
1397 transform="translate(240,-4e-5)"> 1146 transform="translate(-276.59566,-155.99945)">
1398 <path 1147 <path
1399 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1148 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1400 d="m 1200,220.00002 v 9.99999 0" 1149 d="m 1200,220.00002 v 9.99999 0"
@@ -1432,7 +1181,7 @@
1432 </g> 1181 </g>
1433 <g 1182 <g
1434 id="g1267-4-5" 1183 id="g1267-4-5"
1435 transform="translate(480,-5e-5)"> 1184 transform="translate(-36.595659,-155.99946)">
1436 <path 1185 <path
1437 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1186 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1438 d="m 1200,220.00002 v 9.99999 0" 1187 d="m 1200,220.00002 v 9.99999 0"
@@ -1470,7 +1219,7 @@
1470 </g> 1219 </g>
1471 <g 1220 <g
1472 id="g1267-4-5-22" 1221 id="g1267-4-5-22"
1473 transform="translate(600,-4e-5)"> 1222 transform="translate(83.404341,-155.99945)">
1474 <path 1223 <path
1475 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1224 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1476 d="m 1200,220.00002 v 9.99999 0" 1225 d="m 1200,220.00002 v 9.99999 0"
@@ -1508,7 +1257,7 @@
1508 </g> 1257 </g>
1509 <g 1258 <g
1510 id="g1267-4-5-9" 1259 id="g1267-4-5-9"
1511 transform="translate(360,-4e-5)"> 1260 transform="translate(-156.59566,-155.99945)">
1512 <path 1261 <path
1513 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1262 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1514 d="m 1200,220.00002 v 9.99999 0" 1263 d="m 1200,220.00002 v 9.99999 0"
@@ -1546,105 +1295,105 @@
1546 </g> 1295 </g>
1547 <path 1296 <path
1548 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1297 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1549 d="m 1800,219.99997 v 9.99999 0" 1298 d="m 1283.4043,64.000568 v 9.99999 0"
1550 id="path29548-5-1-3-6-3-1-0-3-4-2-0" /> 1299 id="path29548-5-1-3-6-3-1-0-3-4-2-0" />
1551 <path 1300 <path
1552 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1301 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1553 d="m 1340,219.99997 v 5.00004 0" 1302 d="m 823.40434,64.000568 v 5.00004 0"
1554 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-0-5-3" 1303 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-0-5-3"
1555 inkscape:transform-center-x="14.782001" 1304 inkscape:transform-center-x="14.782001"
1556 inkscape:transform-center-y="-0.085282837" /> 1305 inkscape:transform-center-y="-0.085282837" />
1557 <path 1306 <path
1558 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1307 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1559 d="m 1360,219.99997 v 5.00004 0" 1308 d="m 843.40434,64.000568 v 5.00004 0"
1560 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-7-5-0" 1309 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-7-5-0"
1561 inkscape:transform-center-x="14.782001" 1310 inkscape:transform-center-x="14.782001"
1562 inkscape:transform-center-y="-0.085282837" /> 1311 inkscape:transform-center-y="-0.085282837" />
1563 <path 1312 <path
1564 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1313 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1565 d="m 1380,219.99997 v 5.00004 0" 1314 d="m 863.40434,64.000568 v 5.00004 0"
1566 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-1-5-2-3" 1315 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-1-5-2-3"
1567 inkscape:transform-center-x="14.782001" 1316 inkscape:transform-center-x="14.782001"
1568 inkscape:transform-center-y="-0.085282837" /> 1317 inkscape:transform-center-y="-0.085282837" />
1569 <path 1318 <path
1570 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1319 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1571 d="m 1400,219.99997 v 5.00004 0" 1320 d="m 883.40434,64.000568 v 5.00004 0"
1572 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-1-4-8-9-0" 1321 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-1-4-8-9-0"
1573 inkscape:transform-center-x="14.782001" 1322 inkscape:transform-center-x="14.782001"
1574 inkscape:transform-center-y="-0.085282837" /> 1323 inkscape:transform-center-y="-0.085282837" />
1575 <path 1324 <path
1576 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1325 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1577 d="m 1419.7216,219.99997 v 5.00004 0" 1326 d="m 903.12594,64.000568 v 5.00004 0"
1578 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-1-4-9-7-0-9" 1327 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-1-4-9-7-0-9"
1579 inkscape:transform-center-x="-14.78205" 1328 inkscape:transform-center-x="-14.78205"
1580 inkscape:transform-center-y="-0.085282837" /> 1329 inkscape:transform-center-y="-0.085282837" />
1581 <text 1330 <text
1582 xml:space="preserve" 1331 xml:space="preserve"
1583 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" 1332 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"
1584 x="1919.3904" 1333 x="1402.7948"
1585 y="249.86044" 1334 y="93.861046"
1586 id="text1185-9-7-1-1-89-62"><tspan 1335 id="text1185-9-7-1-1-89-62"><tspan
1587 sodipodi:role="line" 1336 sodipodi:role="line"
1588 x="1919.3904" 1337 x="1402.7948"
1589 y="249.86044" 1338 y="93.861046"
1590 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';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" 1339 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';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"
1591 id="tspan31345-7-6">Oct.</tspan><tspan 1340 id="tspan31345-7-6">Oct.</tspan><tspan
1592 sodipodi:role="line" 1341 sodipodi:role="line"
1593 x="1919.3904" 1342 x="1402.7948"
1594 y="267.85712" 1343 y="111.85773"
1595 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';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" 1344 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';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"
1596 id="tspan49906-76-7">2026</tspan></text> 1345 id="tspan49906-76-7">2026</tspan></text>
1597 <text 1346 <text
1598 xml:space="preserve" 1347 xml:space="preserve"
1599 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" 1348 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"
1600 x="2159.3093" 1349 x="1642.7137"
1601 y="250.58356" 1350 y="94.58416"
1602 id="text1185-9-7-1-1-89-6-5"><tspan 1351 id="text1185-9-7-1-1-89-6-5"><tspan
1603 sodipodi:role="line" 1352 sodipodi:role="line"
1604 x="2159.3093" 1353 x="1642.7137"
1605 y="250.58356" 1354 y="94.58416"
1606 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';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" 1355 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';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"
1607 id="tspan31345-7-8-6">Oct.</tspan><tspan 1356 id="tspan31345-7-8-6">Oct.</tspan><tspan
1608 sodipodi:role="line" 1357 sodipodi:role="line"
1609 x="2159.3093" 1358 x="1642.7137"
1610 y="268.58023" 1359 y="112.58084"
1611 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';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" 1360 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';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"
1612 id="tspan49906-76-0-9">2027</tspan></text> 1361 id="tspan49906-76-0-9">2027</tspan></text>
1613 <text 1362 <text
1614 xml:space="preserve" 1363 xml:space="preserve"
1615 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" 1364 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"
1616 x="2041.8163" 1365 x="1525.2207"
1617 y="249.66977" 1366 y="93.670372"
1618 id="text1185-9-7-1-1-8-1-0-4-8"><tspan 1367 id="text1185-9-7-1-1-8-1-0-4-8"><tspan
1619 sodipodi:role="line" 1368 sodipodi:role="line"
1620 x="2041.8163" 1369 x="1525.2207"
1621 y="249.66977" 1370 y="93.670372"
1622 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';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" 1371 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';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"
1623 id="tspan31345-4-0-4-81-7">Apr.</tspan><tspan 1372 id="tspan31345-4-0-4-81-7">Apr.</tspan><tspan
1624 sodipodi:role="line" 1373 sodipodi:role="line"
1625 x="2041.8163" 1374 x="1525.2207"
1626 y="267.66644" 1375 y="111.66705"
1627 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';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" 1376 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';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"
1628 id="tspan49906-7-3-8-2-2">2027</tspan></text> 1377 id="tspan49906-7-3-8-2-2">2027</tspan></text>
1629 <text 1378 <text
1630 xml:space="preserve" 1379 xml:space="preserve"
1631 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" 1380 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"
1632 x="2282.1477" 1381 x="1765.5521"
1633 y="250.26334" 1382 y="94.263939"
1634 id="text1185-9-7-1-1-8-1-0-4-2-8"><tspan 1383 id="text1185-9-7-1-1-8-1-0-4-2-8"><tspan
1635 sodipodi:role="line" 1384 sodipodi:role="line"
1636 x="2282.1477" 1385 x="1765.5521"
1637 y="250.26334" 1386 y="94.263939"
1638 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';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" 1387 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';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"
1639 id="tspan31345-4-0-4-81-5-2">Apr.</tspan><tspan 1388 id="tspan31345-4-0-4-81-5-2">Apr.</tspan><tspan
1640 sodipodi:role="line" 1389 sodipodi:role="line"
1641 x="2282.1477" 1390 x="1765.5521"
1642 y="268.26001" 1391 y="112.26062"
1643 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';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" 1392 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';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"
1644 id="tspan49906-7-3-8-2-8-9">2028</tspan></text> 1393 id="tspan49906-7-3-8-2-8-9">2028</tspan></text>
1645 <g 1394 <g
1646 id="g1267-4-9" 1395 id="g1267-4-9"
1647 transform="translate(720,-3e-5)"> 1396 transform="translate(203.40434,-155.99944)">
1648 <path 1397 <path
1649 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1398 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1650 d="m 1200,220.00002 v 9.99999 0" 1399 d="m 1200,220.00002 v 9.99999 0"
@@ -1682,7 +1431,7 @@
1682 </g> 1431 </g>
1683 <g 1432 <g
1684 id="g1267-4-5-2" 1433 id="g1267-4-5-2"
1685 transform="translate(960,-4e-5)"> 1434 transform="translate(443.40434,-155.99945)">
1686 <path 1435 <path
1687 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1436 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1688 d="m 1200,220.00002 v 9.99999 0" 1437 d="m 1200,220.00002 v 9.99999 0"
@@ -1720,7 +1469,7 @@
1720 </g> 1469 </g>
1721 <g 1470 <g
1722 id="g1267-4-5-9-9" 1471 id="g1267-4-5-9-9"
1723 transform="translate(840,-3e-5)"> 1472 transform="translate(323.40434,-155.99944)">
1724 <path 1473 <path
1725 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1474 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1726 d="m 1200,220.00002 v 9.99999 0" 1475 d="m 1200,220.00002 v 9.99999 0"
@@ -1758,8 +1507,390 @@
1758 </g> 1507 </g>
1759 <path 1508 <path
1760 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1" 1509 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1761 d="m 2280,219.99998 v 9.99999 0" 1510 d="m 1763.4043,64.000578 v 9.99999 0"
1762 id="path29548-5-1-3-6-3-1-0-3-4-2-0-0" /> 1511 id="path29548-5-1-3-6-3-1-0-3-4-2-0-0" />
1512 <text
1513 xml:space="preserve"
1514 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"
1515 x="1885.6029"
1516 y="94.285194"
1517 id="text1185-9-7-1-1-8-1-0-4-2-8-2"><tspan
1518 sodipodi:role="line"
1519 x="1885.6029"
1520 y="94.285194"
1521 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';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"
1522 id="tspan31345-4-0-4-81-5-2-8">Oct.</tspan><tspan
1523 sodipodi:role="line"
1524 x="1885.6029"
1525 y="112.28188"
1526 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';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"
1527 id="tspan49906-7-3-8-2-8-9-9">2028</tspan></text>
1528 <g
1529 id="g1267-4-5-2-7"
1530 transform="translate(563.45518,-155.9782)">
1531 <path
1532 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1533 d="m 1200,220.00002 v 9.99999 0"
1534 id="path29548-5-1-3-6-3-1-0-3-4-1-3" />
1535 <path
1536 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1537 d="m 1220,219.99997 v 5.00004 0"
1538 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-0-5-0-0-5-6"
1539 inkscape:transform-center-x="14.782001"
1540 inkscape:transform-center-y="-0.085282837" />
1541 <path
1542 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1543 d="m 1240,219.99997 v 5.00004 0"
1544 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-7-5-3-5-9-1"
1545 inkscape:transform-center-x="14.782001"
1546 inkscape:transform-center-y="-0.085282837" />
1547 <path
1548 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1549 d="m 1260,219.99997 v 5.00004 0"
1550 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-1-5-2-0-9-9-2"
1551 inkscape:transform-center-x="14.782001"
1552 inkscape:transform-center-y="-0.085282837" />
1553 <path
1554 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1555 d="m 1280,219.99997 v 5.00004 0"
1556 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-1-4-8-9-9-4-1-9"
1557 inkscape:transform-center-x="14.782001"
1558 inkscape:transform-center-y="-0.085282837" />
1559 <path
1560 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1561 d="m 1299.7216,219.99997 v 5.00004 0"
1562 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-1-4-9-7-0-2-6-4-3"
1563 inkscape:transform-center-x="-14.78205"
1564 inkscape:transform-center-y="-0.085282837" />
1565 </g>
1566 <path
1567 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1568 d="m 1883.4551,64.021829 v 9.99999 0"
1569 id="path29548-5-1-3-6-3-1-0-3-4-2-0-0-1" />
1570 <text
1571 xml:space="preserve"
1572 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"
1573 x="2005.5908"
1574 y="94.339828"
1575 id="text1185-9-7-1-1-8-1-0-4-2-8-2-4"><tspan
1576 sodipodi:role="line"
1577 x="2005.5908"
1578 y="94.339828"
1579 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';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"
1580 id="tspan31345-4-0-4-81-5-2-8-7">Apr.</tspan><tspan
1581 sodipodi:role="line"
1582 x="2005.5908"
1583 y="112.33651"
1584 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';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"
1585 id="tspan49906-7-3-8-2-8-9-9-8">2029</tspan></text>
1586 <g
1587 id="g1267-4-5-2-7-4"
1588 transform="translate(683.44312,-155.92356)">
1589 <path
1590 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1591 d="m 1200,220.00002 v 9.99999 0"
1592 id="path29548-5-1-3-6-3-1-0-3-4-1-3-5" />
1593 <path
1594 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1595 d="m 1220,219.99997 v 5.00004 0"
1596 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-0-5-0-0-5-6-0"
1597 inkscape:transform-center-x="14.782001"
1598 inkscape:transform-center-y="-0.085282837" />
1599 <path
1600 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1601 d="m 1240,219.99997 v 5.00004 0"
1602 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-7-5-3-5-9-1-3"
1603 inkscape:transform-center-x="14.782001"
1604 inkscape:transform-center-y="-0.085282837" />
1605 <path
1606 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1607 d="m 1260,219.99997 v 5.00004 0"
1608 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-1-5-2-0-9-9-2-6"
1609 inkscape:transform-center-x="14.782001"
1610 inkscape:transform-center-y="-0.085282837" />
1611 <path
1612 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1613 d="m 1280,219.99997 v 5.00004 0"
1614 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-1-4-8-9-9-4-1-9-1"
1615 inkscape:transform-center-x="14.782001"
1616 inkscape:transform-center-y="-0.085282837" />
1617 <path
1618 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1619 d="m 1299.7216,219.99997 v 5.00004 0"
1620 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-1-4-9-7-0-2-6-4-3-0"
1621 inkscape:transform-center-x="-14.78205"
1622 inkscape:transform-center-y="-0.085282837" />
1623 </g>
1624 <path
1625 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1626 d="m 2003.443,64.076464 v 9.99999 0"
1627 id="path29548-5-1-3-6-3-1-0-3-4-2-0-0-1-6" />
1628 <text
1629 xml:space="preserve"
1630 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"
1631 x="2125.6079"
1632 y="94.692207"
1633 id="text1185-9-7-1-1-8-1-0-4-2-8-2-4-2"><tspan
1634 sodipodi:role="line"
1635 x="2125.6079"
1636 y="94.692207"
1637 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';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"
1638 id="tspan31345-4-0-4-81-5-2-8-7-0">Oct.</tspan><tspan
1639 sodipodi:role="line"
1640 x="2125.6079"
1641 y="112.68889"
1642 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';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"
1643 id="tspan49906-7-3-8-2-8-9-9-8-6">2029</tspan></text>
1644 <g
1645 id="g1267-4-5-2-7-4-1"
1646 transform="translate(803.46019,-155.57118)">
1647 <path
1648 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1649 d="m 1200,220.00002 v 9.99999 0"
1650 id="path29548-5-1-3-6-3-1-0-3-4-1-3-5-5" />
1651 <path
1652 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1653 d="m 1220,219.99997 v 5.00004 0"
1654 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-0-5-0-0-5-6-0-5"
1655 inkscape:transform-center-x="14.782001"
1656 inkscape:transform-center-y="-0.085282837" />
1657 <path
1658 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1659 d="m 1240,219.99997 v 5.00004 0"
1660 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-7-5-3-5-9-1-3-4"
1661 inkscape:transform-center-x="14.782001"
1662 inkscape:transform-center-y="-0.085282837" />
1663 <path
1664 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1665 d="m 1260,219.99997 v 5.00004 0"
1666 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-1-5-2-0-9-9-2-6-7"
1667 inkscape:transform-center-x="14.782001"
1668 inkscape:transform-center-y="-0.085282837" />
1669 <path
1670 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1671 d="m 1280,219.99997 v 5.00004 0"
1672 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-1-4-8-9-9-4-1-9-1-6"
1673 inkscape:transform-center-x="14.782001"
1674 inkscape:transform-center-y="-0.085282837" />
1675 <path
1676 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1677 d="m 1299.7216,219.99997 v 5.00004 0"
1678 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-1-4-9-7-0-2-6-4-3-0-5"
1679 inkscape:transform-center-x="-14.78205"
1680 inkscape:transform-center-y="-0.085282837" />
1681 </g>
1682 <path
1683 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1684 d="m 2123.4601,64.428843 v 9.99999 0"
1685 id="path29548-5-1-3-6-3-1-0-3-4-2-0-0-1-6-6" />
1686 <path
1687 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1688 d="m 2123.3825,64.223284 v 9.99999 0"
1689 id="path29548-5-1-3-6-3-1-0-3-4-2-0-0-1-6-3" />
1690 <text
1691 xml:space="preserve"
1692 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"
1693 x="2245.5474"
1694 y="94.839027"
1695 id="text1185-9-7-1-1-8-1-0-4-2-8-2-4-2-7"><tspan
1696 sodipodi:role="line"
1697 x="2245.5474"
1698 y="94.839027"
1699 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';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"
1700 id="tspan31345-4-0-4-81-5-2-8-7-0-4">Apr.</tspan><tspan
1701 sodipodi:role="line"
1702 x="2245.5474"
1703 y="112.83571"
1704 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';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"
1705 id="tspan49906-7-3-8-2-8-9-9-8-6-5">2030</tspan></text>
1706 <g
1707 id="g1267-4-5-2-7-4-1-2"
1708 transform="translate(923.39972,-155.42436)">
1709 <path
1710 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1711 d="m 1200,220.00002 v 9.99999 0"
1712 id="path29548-5-1-3-6-3-1-0-3-4-1-3-5-5-5" />
1713 <path
1714 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1715 d="m 1220,219.99997 v 5.00004 0"
1716 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-0-5-0-0-5-6-0-5-4"
1717 inkscape:transform-center-x="14.782001"
1718 inkscape:transform-center-y="-0.085282837" />
1719 <path
1720 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1721 d="m 1240,219.99997 v 5.00004 0"
1722 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-7-5-3-5-9-1-3-4-7"
1723 inkscape:transform-center-x="14.782001"
1724 inkscape:transform-center-y="-0.085282837" />
1725 <path
1726 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1727 d="m 1260,219.99997 v 5.00004 0"
1728 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-1-5-2-0-9-9-2-6-7-4"
1729 inkscape:transform-center-x="14.782001"
1730 inkscape:transform-center-y="-0.085282837" />
1731 <path
1732 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1733 d="m 1280,219.99997 v 5.00004 0"
1734 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-1-4-8-9-9-4-1-9-1-6-4"
1735 inkscape:transform-center-x="14.782001"
1736 inkscape:transform-center-y="-0.085282837" />
1737 <path
1738 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1739 d="m 1299.7216,219.99997 v 5.00004 0"
1740 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-1-4-9-7-0-2-6-4-3-0-5-3"
1741 inkscape:transform-center-x="-14.78205"
1742 inkscape:transform-center-y="-0.085282837" />
1743 </g>
1744 <g
1745 id="g1267-4-5-2-7-4-1-2-0"
1746 transform="translate(1043.3579,-155.33829)">
1747 <path
1748 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1749 d="m 1200,220.00002 v 9.99999 0"
1750 id="path29548-5-1-3-6-3-1-0-3-4-1-3-5-5-5-6" />
1751 <path
1752 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1753 d="m 1220,219.99997 v 5.00004 0"
1754 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-0-5-0-0-5-6-0-5-4-8"
1755 inkscape:transform-center-x="14.782001"
1756 inkscape:transform-center-y="-0.085282837" />
1757 <path
1758 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1759 d="m 1240,219.99997 v 5.00004 0"
1760 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-7-5-3-5-9-1-3-4-7-9"
1761 inkscape:transform-center-x="14.782001"
1762 inkscape:transform-center-y="-0.085282837" />
1763 <path
1764 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1765 d="m 1260,219.99997 v 5.00004 0"
1766 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-1-5-2-0-9-9-2-6-7-4-2"
1767 inkscape:transform-center-x="14.782001"
1768 inkscape:transform-center-y="-0.085282837" />
1769 <path
1770 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1771 d="m 1280,219.99997 v 5.00004 0"
1772 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-1-4-8-9-9-4-1-9-1-6-4-6"
1773 inkscape:transform-center-x="14.782001"
1774 inkscape:transform-center-y="-0.085282837" />
1775 <path
1776 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:1;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1777 d="m 1299.7216,219.99997 v 5.00004 0"
1778 id="path29548-8-5-0-6-4-6-2-9-0-8-1-3-1-9-6-9-3-4-0-4-6-2-2-7-6-1-9-9-1-4-9-7-0-2-6-4-3-0-5-3-6"
1779 inkscape:transform-center-x="-14.78205"
1780 inkscape:transform-center-y="-0.085282837" />
1781 </g>
1782 <path
1783 style="fill:none;fill-rule:evenodd;stroke:#000000;stroke-width:2;stroke-linecap:butt;stroke-linejoin:miter;stroke-miterlimit:4;stroke-dasharray:none;stroke-opacity:1"
1784 d="m 2243.3996,64.575663 v 9.99999 0"
1785 id="path29548-5-1-3-6-3-1-0-3-4-2-0-0-1-6-6-0" />
1786 <rect
1787 style="opacity:0.75;fill:#241f31;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.751473;stroke-opacity:1"
1788 id="rect917-0-0-4-4-9-4-5-3-9-2-36"
1789 width="38.418175"
1790 height="23.151052"
1791 x="2047.6135"
1792 y="-45.172161"
1793 ry="1.1605872" />
1794 <rect
1795 style="opacity:1;fill:#ffffff;fill-opacity:1;fill-rule:evenodd;stroke:#000000;stroke-width:1.98878;stroke-dasharray:none;stroke-opacity:1"
1796 id="rect917-0-0-4-4-9-4-5-3-9-2-36-7"
1797 width="186.42949"
1798 height="110.40546"
1799 x="2036.5294"
1800 y="-77.753708"
1801 ry="5.5347452" />
1802 <rect
1803 style="opacity:0.75;fill:#241f31;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.50949;stroke-opacity:1"
1804 id="rect917-0-0-4-4-9-4-5-3-9-2-6"
1805 width="21.197233"
1806 height="19.28739"
1807 x="2053.8164"
1808 y="-45.883858"
1809 ry="0.96689767" />
1810 <text
1811 xml:space="preserve"
1812 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:#fffefe;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1813 x="2132.4917"
1814 y="-57.687912"
1815 id="text1185-3-55-4-0-0-0-1-1-6-4-3-5"><tspan
1816 sodipodi:role="line"
1817 x="2132.4917"
1818 y="-57.687912"
1819 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;fill:#000000;fill-opacity:1;stroke:none"
1820 id="tspan10317-2-9-1-4-6-5-6-6-5">Legend</tspan></text>
1821 <text
1822 xml:space="preserve"
1823 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:#fffefe;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1824 x="2098.0986"
1825 y="-31.899874"
1826 id="text1185-3-55-4-0-0-0-1-1-6-4-3-5-2"><tspan
1827 sodipodi:role="line"
1828 x="2098.0986"
1829 y="-31.899874"
1830 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;fill:#000000;fill-opacity:1;stroke:none"
1831 id="tspan10317-2-9-1-4-6-5-6-6-5-9">Future</tspan></text>
1832 <rect
1833 style="opacity:1;fill:#333333;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.50949;stroke-opacity:1"
1834 id="rect917-0-0-4-4-9-4-5-3-9-2-6-1"
1835 width="21.197233"
1836 height="19.28739"
1837 x="2053.8672"
1838 y="-21.756365"
1839 ry="0.96689767" />
1840 <text
1841 xml:space="preserve"
1842 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:#fffefe;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1843 x="2128.7158"
1844 y="-7.6722765"
1845 id="text1185-3-55-4-0-0-0-1-1-6-4-3-5-2-2"><tspan
1846 sodipodi:role="line"
1847 x="2128.7158"
1848 y="-7.6722765"
1849 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;fill:#000000;fill-opacity:1;stroke:none"
1850 id="tspan10317-2-9-1-4-6-5-6-6-5-9-7">Current (Apr. 25)</tspan></text>
1851 <text
1852 xml:space="preserve"
1853 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:#fffefe;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1854 x="2109.363"
1855 y="16.03771"
1856 id="text1185-3-55-4-0-0-0-1-1-6-4-3-5-2-2-9"><tspan
1857 sodipodi:role="line"
1858 x="2109.363"
1859 y="16.03771"
1860 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;fill:#000000;fill-opacity:1;stroke:none"
1861 id="tspan10317-2-9-1-4-6-5-6-6-5-9-7-3">End-of-life</tspan></text>
1862 <rect
1863 style="opacity:0.5;fill:#333333;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:0.50949;stroke-opacity:1"
1864 id="rect917-0-0-4-4-9-4-5-3-9-2-6-1-0"
1865 width="21.197233"
1866 height="19.28739"
1867 x="2054.0239"
1868 y="1.9667883"
1869 ry="0.96689767" />
1870 <rect
1871 style="opacity:0.5;fill:#333333;fill-opacity:1;fill-rule:evenodd;stroke:none;stroke-width:1.85786;stroke-opacity:1"
1872 id="rect917-0-0-4-4-9-4-5-6"
1873 width="120.80748"
1874 height="45.000004"
1875 x="703.10553"
1876 y="-165.72791"
1877 ry="2.2558987" />
1878 <text
1879 xml:space="preserve"
1880 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:#fffefe;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
1881 x="752.16809"
1882 y="-147.18787"
1883 id="text1185-3-55-4-0-0-0-1-2"><tspan
1884 sodipodi:role="line"
1885 x="752.16809"
1886 y="-147.18787"
1887 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;fill:#fffefe;fill-opacity:1;stroke:none"
1888 id="tspan1">Nanbield</tspan><tspan
1889 sodipodi:role="line"
1890 x="752.16809"
1891 y="-129.19119"
1892 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;fill:#fffefe;fill-opacity:1;stroke:none"
1893 id="tspan2">4.3</tspan></text>
1763 </g> 1894 </g>
1764 <style 1895 <style
1765 type="text/css" 1896 type="text/css"
diff --git a/documentation/ref-manual/system-requirements.rst b/documentation/ref-manual/system-requirements.rst
index 0fc92550a5..b22572c6b4 100644
--- a/documentation/ref-manual/system-requirements.rst
+++ b/documentation/ref-manual/system-requirements.rst
@@ -62,8 +62,12 @@ supported on the following distributions:
62 62
63- Ubuntu 22.04 (LTS) 63- Ubuntu 22.04 (LTS)
64 64
65- Ubuntu 23.04
66
65- Fedora 38 67- Fedora 38
66 68
69- Fedora 39
70
67- CentOS Stream 8 71- CentOS Stream 8
68 72
69- Debian GNU/Linux 11 (Bullseye) 73- Debian GNU/Linux 11 (Bullseye)
@@ -150,10 +154,27 @@ Ubuntu and Debian
150Here are the packages needed to build an image on a headless system 154Here are the packages needed to build an image on a headless system
151with a supported Ubuntu or Debian Linux distribution:: 155with a supported Ubuntu or Debian Linux distribution::
152 156
153 $ sudo apt install &UBUNTU_HOST_PACKAGES_ESSENTIAL; 157 $ sudo apt install &UBUNTU_DEBIAN_HOST_PACKAGES_ESSENTIAL;
158
159You also need to ensure you have the ``en_US.UTF-8`` locale enabled::
160
161 $ locale --all-locales | grep en_US.utf8
162
163If this is not the case, you can reconfigure the ``locales`` package to add it
164(requires an interactive shell)::
165
166 $ sudo dpkg-reconfigure locales
154 167
155.. note:: 168.. note::
156 169
170 - If you are not in an interactive shell, ``dpkg-reconfigure`` will
171 not work as expected. To add the locale you will need to edit
172 ``/etc/locale.gen`` file to add/uncomment the ``en_US.UTF-8`` locale.
173 A naive way to do this as root is::
174
175 $ echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen
176 $ locale-gen
177
157 - If your build system has the ``oss4-dev`` package installed, you 178 - If your build system has the ``oss4-dev`` package installed, you
158 might experience QEMU build failures due to the package installing 179 might experience QEMU build failures due to the package installing
159 its own custom ``/usr/include/linux/soundcard.h`` on the Debian 180 its own custom ``/usr/include/linux/soundcard.h`` on the Debian
@@ -164,8 +185,12 @@ with a supported Ubuntu or Debian Linux distribution::
164 185
165Here are the packages needed to build Project documentation manuals:: 186Here are the packages needed to build Project documentation manuals::
166 187
167 $ sudo apt install git make inkscape texlive-latex-extra 188 $ sudo apt install &UBUNTU_DEBIAN_HOST_PACKAGES_DOC;
168 $ sudo apt install sphinx python3-saneyaml python3-sphinx-rtd-theme 189
190In addition to the previous packages, here are the packages needed to build the
191documentation in PDF format::
192
193 $ sudo apt install &UBUNTU_DEBIAN_HOST_PACKAGES_DOC_PDF;
169 194
170Fedora Packages 195Fedora Packages
171--------------- 196---------------
@@ -177,8 +202,13 @@ with a supported Fedora Linux distribution::
177 202
178Here are the packages needed to build Project documentation manuals:: 203Here are the packages needed to build Project documentation manuals::
179 204
180 $ sudo dnf install git make python3-pip which inkscape texlive-fncychap 205 $ sudo dnf install &FEDORA_HOST_PACKAGES_DOC;
181 &PIP3_HOST_PACKAGES_DOC; 206 $ sudo pip3 install &PIP3_HOST_PACKAGES_DOC;
207
208In addition to the previous packages, here are the packages needed to build the
209documentation in PDF format::
210
211 $ sudo dnf install &FEDORA_HOST_PACKAGES_DOC_PDF;
182 212
183openSUSE Packages 213openSUSE Packages
184----------------- 214-----------------
@@ -187,11 +217,17 @@ Here are the packages needed to build an image on a headless system
187with a supported openSUSE distribution:: 217with a supported openSUSE distribution::
188 218
189 $ sudo zypper install &OPENSUSE_HOST_PACKAGES_ESSENTIAL; 219 $ sudo zypper install &OPENSUSE_HOST_PACKAGES_ESSENTIAL;
220 $ sudo pip3 install &OPENSUSE_PIP3_HOST_PACKAGES_ESSENTIAL;
190 221
191Here are the packages needed to build Project documentation manuals:: 222Here are the packages needed to build Project documentation manuals::
192 223
193 $ sudo zypper install git make python3-pip which inkscape texlive-fncychap 224 $ sudo zypper install &OPENSUSE_HOST_PACKAGES_DOC;
194 &PIP3_HOST_PACKAGES_DOC; 225 $ sudo pip3 install &PIP3_HOST_PACKAGES_DOC;
226
227In addition to the previous packages, here are the packages needed to build the
228documentation in PDF format::
229
230 $ sudo zypper install &OPENSUSE_HOST_PACKAGES_DOC_PDF;
195 231
196 232
197AlmaLinux Packages 233AlmaLinux Packages
@@ -200,6 +236,10 @@ AlmaLinux Packages
200Here are the packages needed to build an image on a headless system 236Here are the packages needed to build an image on a headless system
201with a supported AlmaLinux distribution:: 237with a supported AlmaLinux distribution::
202 238
239 $ sudo dnf install -y epel-release
240 $ sudo yum install dnf-plugins-core
241 $ sudo dnf config-manager --set-enabled crb
242 $ sudo dnf makecache
203 $ sudo dnf install &ALMALINUX_HOST_PACKAGES_ESSENTIAL; 243 $ sudo dnf install &ALMALINUX_HOST_PACKAGES_ESSENTIAL;
204 244
205.. note:: 245.. note::
@@ -217,8 +257,20 @@ with a supported AlmaLinux distribution::
217 257
218Here are the packages needed to build Project documentation manuals:: 258Here are the packages needed to build Project documentation manuals::
219 259
220 $ sudo dnf install git make python3-pip which inkscape texlive-fncychap 260 $ sudo dnf install &ALMALINUX_HOST_PACKAGES_DOC;
221 &PIP3_HOST_PACKAGES_DOC; 261 $ sudo pip3 install &PIP3_HOST_PACKAGES_DOC;
262
263In addition to the previous packages, here are the packages needed to build the
264documentation in PDF format::
265
266 $ sudo dnf install &ALMALINUX_HOST_PACKAGES_DOC_PDF;
267
268.. warning::
269
270 Unlike Fedora or OpenSUSE, AlmaLinux does not provide the packages
271 ``texlive-collection-fontsextra``, ``texlive-collection-lang*`` and
272 ``texlive-collection-latexextra``, so you may run into issues. These may be
273 installed using `tlmgr <https://tug.org/texlive/tlmgr.html>`_.
222 274
223.. _system-requirements-buildtools: 275.. _system-requirements-buildtools:
224 276
@@ -319,7 +371,7 @@ If you would prefer not to use the ``install-buildtools`` script, you can instea
319download and run a pre-built :term:`buildtools` installer yourself with the following 371download and run a pre-built :term:`buildtools` installer yourself with the following
320steps: 372steps:
321 373
322#. Go to :yocto_dl:`/releases/yocto/yocto-&DISTRO;/buildtools/`, locate and 374#. Go to :yocto_dl:`/releases/yocto/&DISTRO_REL_LATEST_TAG;/buildtools/`, locate and
323 download the ``.sh`` file corresponding to your host architecture 375 download the ``.sh`` file corresponding to your host architecture
324 and to :term:`buildtools`, :term:`buildtools-extended` or :term:`buildtools-make`. 376 and to :term:`buildtools`, :term:`buildtools-extended` or :term:`buildtools-make`.
325 377
diff --git a/documentation/ref-manual/tasks.rst b/documentation/ref-manual/tasks.rst
index 2e4b23408d..cf6b9876ca 100644
--- a/documentation/ref-manual/tasks.rst
+++ b/documentation/ref-manual/tasks.rst
@@ -616,8 +616,8 @@ information on how the root filesystem is created.
616 616
617Boots an image and performs runtime tests within the image. For 617Boots an image and performs runtime tests within the image. For
618information on automatically testing images, see the 618information on automatically testing images, see the
619":ref:`dev-manual/runtime-testing:performing automated runtime testing`" 619":ref:`test-manual/runtime-testing:performing automated runtime testing`"
620section in the Yocto Project Development Tasks Manual. 620section in the Yocto Project Test Environment Manual.
621 621
622.. _ref-tasks-testimage_auto: 622.. _ref-tasks-testimage_auto:
623 623
@@ -629,8 +629,8 @@ after it has been built. This task is enabled when you set
629:term:`TESTIMAGE_AUTO` equal to "1". 629:term:`TESTIMAGE_AUTO` equal to "1".
630 630
631For information on automatically testing images, see the 631For information on automatically testing images, see the
632":ref:`dev-manual/runtime-testing:performing automated runtime testing`" 632":ref:`test-manual/runtime-testing:performing automated runtime testing`"
633section in the Yocto Project Development Tasks Manual. 633section in the Yocto Project Test Environment Manual.
634 634
635Kernel-Related Tasks 635Kernel-Related Tasks
636==================== 636====================
@@ -727,7 +727,7 @@ tool, which you then use to modify the kernel configuration.
727 $ bitbake linux-yocto -c menuconfig 727 $ bitbake linux-yocto -c menuconfig
728 728
729 729
730See the ":ref:`kernel-dev/common:using \`\`menuconfig\`\``" 730See the ":ref:`kernel-dev/common:using ``menuconfig```"
731section in the Yocto Project Linux Kernel Development Manual for more 731section in the Yocto Project Linux Kernel Development Manual for more
732information on this configuration tool. 732information on this configuration tool.
733 733
@@ -751,7 +751,7 @@ which can then be applied by subsequent tasks such as
751 751
752Runs ``make menuconfig`` for the kernel. For information on 752Runs ``make menuconfig`` for the kernel. For information on
753``menuconfig``, see the 753``menuconfig``, see the
754":ref:`kernel-dev/common:using \`\`menuconfig\`\``" 754":ref:`kernel-dev/common:using ``menuconfig```"
755section in the Yocto Project Linux Kernel Development Manual. 755section in the Yocto Project Linux Kernel Development Manual.
756 756
757.. _ref-tasks-savedefconfig: 757.. _ref-tasks-savedefconfig:
diff --git a/documentation/ref-manual/terms.rst b/documentation/ref-manual/terms.rst
index b18c4183b6..9f61061415 100644
--- a/documentation/ref-manual/terms.rst
+++ b/documentation/ref-manual/terms.rst
@@ -63,7 +63,7 @@ universal, the list includes them just in case:
63 This term refers to the area used by the OpenEmbedded build system for 63 This term refers to the area used by the OpenEmbedded build system for
64 builds. The area is created when you ``source`` the setup environment 64 builds. The area is created when you ``source`` the setup environment
65 script that is found in the Source Directory 65 script that is found in the Source Directory
66 (i.e. :ref:`ref-manual/structure:\`\`oe-init-build-env\`\``). The 66 (i.e. :ref:`ref-manual/structure:``oe-init-build-env```). The
67 :term:`TOPDIR` variable points to the :term:`Build Directory`. 67 :term:`TOPDIR` variable points to the :term:`Build Directory`.
68 68
69 You have a lot of flexibility when creating the :term:`Build Directory`. 69 You have a lot of flexibility when creating the :term:`Build Directory`.
@@ -452,7 +452,7 @@ universal, the list includes them just in case:
452 the Source Directory, if you do, the top-level directory name of the 452 the Source Directory, if you do, the top-level directory name of the
453 Source Directory is derived from the Yocto Project release tarball. 453 Source Directory is derived from the Yocto Project release tarball.
454 For example, downloading and unpacking poky tarballs from 454 For example, downloading and unpacking poky tarballs from
455 :yocto_dl:`/releases/yocto/&DISTRO_REL_TAG;/` 455 :yocto_dl:`/releases/yocto/&DISTRO_REL_LATEST_TAG;/`
456 results in a Source Directory whose root folder is named poky. 456 results in a Source Directory whose root folder is named poky.
457 457
458 458
diff --git a/documentation/ref-manual/variables.rst b/documentation/ref-manual/variables.rst
index f694640c00..9406f3548c 100644
--- a/documentation/ref-manual/variables.rst
+++ b/documentation/ref-manual/variables.rst
@@ -143,7 +143,7 @@ system and gives an overview of their function and contents.
143 information on how this variable is used. 143 information on how this variable is used.
144 144
145 :term:`AR` 145 :term:`AR`
146 The minimal command and arguments used to run ``ar``. 146 The minimal command and arguments used to run :manpage:`ar <ar(1)>`.
147 147
148 :term:`ARCHIVER_MODE` 148 :term:`ARCHIVER_MODE`
149 When used with the :ref:`ref-classes-archiver` class, 149 When used with the :ref:`ref-classes-archiver` class,
@@ -165,7 +165,8 @@ system and gives an overview of their function and contents.
165 ``meta/classes/archiver.bbclass`` file in the :term:`Source Directory`. 165 ``meta/classes/archiver.bbclass`` file in the :term:`Source Directory`.
166 166
167 :term:`AS` 167 :term:`AS`
168 Minimal command and arguments needed to run the assembler. 168 Minimal command and arguments needed to run the :manpage:`assembler
169 <as(1)>`.
169 170
170 :term:`ASSUME_PROVIDED` 171 :term:`ASSUME_PROVIDED`
171 Lists recipe names (:term:`PN` values) BitBake does not 172 Lists recipe names (:term:`PN` values) BitBake does not
@@ -209,12 +210,11 @@ system and gives an overview of their function and contents.
209 SRCREV = "${AUTOREV}" 210 SRCREV = "${AUTOREV}"
210 211
211 If you use the previous statement to retrieve the latest version of 212 If you use the previous statement to retrieve the latest version of
212 software, you need to be sure :term:`PV` contains 213 software, you need to make sure :term:`PV` contains the ``+`` sign so
213 ``${``\ :term:`SRCPV`\ ``}``. For example, suppose you have a kernel 214 :term:`bitbake` includes source control information to :term:`PKGV` when
214 recipe that inherits the :ref:`ref-classes-kernel` class and you 215 packaging the recipe. For example::
215 use the previous statement. In this example, ``${SRCPV}`` does not 216
216 automatically get into :term:`PV`. Consequently, you need to change 217 PV = "6.10.y+git"
217 :term:`PV` in your recipe so that it does contain ``${SRCPV}``.
218 218
219 For more information see the 219 For more information see the
220 ":ref:`dev-manual/packages:automatically incrementing a package version number`" 220 ":ref:`dev-manual/packages:automatically incrementing a package version number`"
@@ -225,6 +225,12 @@ system and gives an overview of their function and contents.
225 must set this variable in your recipe. The 225 must set this variable in your recipe. The
226 :ref:`ref-classes-syslinux` class checks this variable. 226 :ref:`ref-classes-syslinux` class checks this variable.
227 227
228 :term:`AUTOTOOLS_SCRIPT_PATH`
229 When using the :ref:`ref-classes-autotools` class, the
230 :term:`AUTOTOOLS_SCRIPT_PATH` variable stores the location of the
231 different scripts used by the Autotools build system. The default
232 value for this variable is :term:`S`.
233
228 :term:`AVAILTUNES` 234 :term:`AVAILTUNES`
229 The list of defined CPU and Application Binary Interface (ABI) 235 The list of defined CPU and Application Binary Interface (ABI)
230 tunings (i.e. "tunes") available for use by the OpenEmbedded build 236 tunings (i.e. "tunes") available for use by the OpenEmbedded build
@@ -972,55 +978,165 @@ system and gives an overview of their function and contents.
972 variable is a useful pointer in case a bug in the software being 978 variable is a useful pointer in case a bug in the software being
973 built needs to be manually reported. 979 built needs to be manually reported.
974 980
981 :term:`BUILD_AR`
982 Specifies the architecture-specific :manpage:`archiver <ar(1)>` for the
983 build host, and its default definition is derived in part from
984 :term:`BUILD_PREFIX`::
985
986 BUILD_AR = "${BUILD_PREFIX}ar"
987
988 When building a :ref:`ref-classes-native` recipe, :term:`AR` is set to the
989 value of this variable by default.
990
991 The :term:`BUILD_AR` variable should not be set manually, and is rarely
992 used in recipes as :term:`AR` contains the appropriate value depending on
993 the context (native or target recipes). Exception be made for target
994 recipes that need to use the :manpage:`archiver <ar(1)>` from the build
995 host at some point during the build.
996
975 :term:`BUILD_ARCH` 997 :term:`BUILD_ARCH`
976 Specifies the architecture of the build host (e.g. ``i686``). The 998 Specifies the architecture of the build host (e.g. ``i686``). The
977 OpenEmbedded build system sets the value of :term:`BUILD_ARCH` from the 999 OpenEmbedded build system sets the value of :term:`BUILD_ARCH` from the
978 machine name reported by the ``uname`` command. 1000 machine name reported by the ``uname`` command.
979 1001
1002 :term:`BUILD_AS`
1003 Specifies the architecture-specific :manpage:`assembler <as(1)>` for the
1004 build host, and its default definition is derived in part from
1005 :term:`BUILD_PREFIX`::
1006
1007 BUILD_AS = "${BUILD_PREFIX}as ${BUILD_AS_ARCH}"
1008
1009 When building a :ref:`ref-classes-native` recipe, :term:`AS` is set to the
1010 value of this variable by default.
1011
1012 The :term:`BUILD_AS` variable should not be set manually, and is rarely
1013 used in recipes as :term:`AS` contains the appropriate value depending on
1014 the context (native or target recipes). Exception be made for target
1015 recipes that need to use the :manpage:`assembler <as(1)>` from the build
1016 host at some point during the build.
1017
980 :term:`BUILD_AS_ARCH` 1018 :term:`BUILD_AS_ARCH`
981 Specifies the architecture-specific assembler flags for the build 1019 Specifies the architecture-specific assembler flags for the build
982 host. By default, the value of :term:`BUILD_AS_ARCH` is empty. 1020 host. By default, the value of :term:`BUILD_AS_ARCH` is empty.
983 1021
1022 :term:`BUILD_CC`
1023 Specifies the architecture-specific C compiler for the build host,
1024 and its default definition is derived in part from :term:`BUILD_PREFIX`
1025 and :term:`BUILD_CC_ARCH`::
1026
1027 BUILD_CC = "${CCACHE}${BUILD_PREFIX}gcc ${BUILD_CC_ARCH}"
1028
1029 When building a :ref:`ref-classes-native` recipe, :term:`CC` is set to the
1030 value of this variable by default.
1031
1032 The :term:`BUILD_CC` variable should not be set manually, and is rarely
1033 used in recipes as :term:`CC` contains the appropriate value depending on
1034 the context (native or target recipes). Exception be made for target
1035 recipes that need to use the compiler from the build host at some point
1036 during the build.
1037
984 :term:`BUILD_CC_ARCH` 1038 :term:`BUILD_CC_ARCH`
985 Specifies the architecture-specific C compiler flags for the build 1039 Specifies the architecture-specific C compiler flags for the build
986 host. By default, the value of :term:`BUILD_CC_ARCH` is empty. 1040 host. By default, the value of :term:`BUILD_CC_ARCH` is empty.
987 1041
988 :term:`BUILD_CCLD` 1042 :term:`BUILD_CCLD`
989 Specifies the linker command to be used for the build host when the C 1043 Specifies the :manpage:`linker <ld(1)>` command to be used for the build
990 compiler is being used as the linker. By default, :term:`BUILD_CCLD` 1044 host when the C compiler is being used as the linker, and its default
991 points to GCC and passes as arguments the value of 1045 definition is derived in part from :term:`BUILD_PREFIX` and
992 :term:`BUILD_CC_ARCH`, assuming 1046 :term:`BUILD_CC_ARCH`::
993 :term:`BUILD_CC_ARCH` is set. 1047
1048 BUILD_CCLD = "${BUILD_PREFIX}gcc ${BUILD_CC_ARCH}"
1049
1050 When building a :ref:`ref-classes-native` recipe, :term:`CCLD` is set to
1051 the value of this variable by default.
1052
1053 The :term:`BUILD_CCLD` variable should not be set manually, and is rarely
1054 used in recipes as :term:`CCLD` contains the appropriate value depending on
1055 the context (native or target recipes). Exception be made for target
1056 recipes that need to use the :manpage:`linker <ld(1)>` from the build host
1057 at some point during the build.
994 1058
995 :term:`BUILD_CFLAGS` 1059 :term:`BUILD_CFLAGS`
996 Specifies the flags to pass to the C compiler when building for the 1060 Specifies the flags to pass to the C compiler when building for the
997 build host. When building in the ``-native`` context, 1061 build host. When building a :ref:`ref-classes-native` recipe,
998 :term:`CFLAGS` is set to the value of this variable by 1062 :term:`CFLAGS` is set to the value of this variable by
999 default. 1063 default.
1000 1064
1065 :term:`BUILD_CPP`
1066 Specifies the C preprocessor command (to both the C and the C++ compilers)
1067 when building for the build host, and its default definition is derived in
1068 part from :term:`BUILD_PREFIX` and :term:`BUILD_CC_ARCH`::
1069
1070 BUILD_CPP = "${BUILD_PREFIX}gcc ${BUILD_CC_ARCH} -E"
1071
1072 When building a :ref:`ref-classes-native` recipe, :term:`CPP` is set to
1073 the value of this variable by default.
1074
1075 The :term:`BUILD_CPP` variable should not be set manually, and is rarely
1076 used in recipes as :term:`CPP` contains the appropriate value depending on
1077 the context (native or target recipes). Exception be made for target
1078 recipes that need to use the preprocessor from the build host at some
1079 point during the build.
1080
1001 :term:`BUILD_CPPFLAGS` 1081 :term:`BUILD_CPPFLAGS`
1002 Specifies the flags to pass to the C preprocessor (i.e. to both the C 1082 Specifies the flags to pass to the C preprocessor (i.e. to both the C
1003 and the C++ compilers) when building for the build host. When 1083 and the C++ compilers) when building for the build host. When
1004 building in the ``-native`` context, :term:`CPPFLAGS` 1084 building in the ``-native`` context, :term:`CPPFLAGS`
1005 is set to the value of this variable by default. 1085 is set to the value of this variable by default.
1006 1086
1087 :term:`BUILD_CXX`
1088 Specifies the architecture-specific C++ compiler for the build host,
1089 and its default definition is derived in part from :term:`BUILD_PREFIX`
1090 and :term:`BUILD_CC_ARCH`::
1091
1092 BUILD_CXX = "${CCACHE}${BUILD_PREFIX}g++ ${BUILD_CC_ARCH}"
1093
1094 When building a :ref:`ref-classes-native` recipe, :term:`CXX` is set to
1095 the value of this variable by default.
1096
1097 The :term:`BUILD_CXX` variable should not be set manually, and is rarely
1098 used in recipes as :term:`CXX` contains the appropriate value depending on
1099 the context (native or target recipes). Exception be made for target
1100 recipes that need to use the C++ compiler from the build host at some
1101 point during the build.
1102
1007 :term:`BUILD_CXXFLAGS` 1103 :term:`BUILD_CXXFLAGS`
1008 Specifies the flags to pass to the C++ compiler when building for the 1104 Specifies the flags to pass to the C++ compiler when building for the
1009 build host. When building in the ``-native`` context, 1105 build host. When building a :ref:`ref-classes-native` recipe,
1010 :term:`CXXFLAGS` is set to the value of this variable 1106 :term:`CXXFLAGS` is set to the value of this variable
1011 by default. 1107 by default.
1012 1108
1013 :term:`BUILD_FC` 1109 :term:`BUILD_FC`
1014 Specifies the Fortran compiler command for the build host. By 1110 Specifies the Fortran compiler command for the build host, and its default
1015 default, :term:`BUILD_FC` points to Gfortran and passes as arguments the 1111 definition is derived in part from :term:`BUILD_PREFIX` and
1016 value of :term:`BUILD_CC_ARCH`, assuming 1112 :term:`BUILD_CC_ARCH`::
1017 :term:`BUILD_CC_ARCH` is set. 1113
1114 BUILD_FC = "${BUILD_PREFIX}gfortran ${BUILD_CC_ARCH}"
1115
1116 When building a :ref:`ref-classes-native` recipe, :term:`FC` is set to the
1117 value of this variable by default.
1118
1119 The :term:`BUILD_FC` variable should not be set manually, and is rarely
1120 used in recipes as :term:`FC` contains the appropriate value depending on
1121 the context (native or target recipes). Exception be made for target
1122 recipes that need to use the Fortran compiler from the build host at some
1123 point during the build.
1018 1124
1019 :term:`BUILD_LD` 1125 :term:`BUILD_LD`
1020 Specifies the linker command for the build host. By default, 1126 Specifies the linker command for the build host, and its default
1021 :term:`BUILD_LD` points to the GNU linker (ld) and passes as arguments 1127 definition is derived in part from :term:`BUILD_PREFIX` and
1022 the value of :term:`BUILD_LD_ARCH`, assuming 1128 :term:`BUILD_LD_ARCH`::
1023 :term:`BUILD_LD_ARCH` is set. 1129
1130 BUILD_LD = "${BUILD_PREFIX}ld ${BUILD_LD_ARCH}"
1131
1132 When building a :ref:`ref-classes-native` recipe, :term:`LD` is set to the
1133 value of this variable by default.
1134
1135 The :term:`BUILD_LD` variable should not be set manually, and is rarely
1136 used in recipes as :term:`LD` contains the appropriate value depending on
1137 the context (native or target recipes). Exception be made for target
1138 recipes that need to use the linker from the build host at some point
1139 during the build.
1024 1140
1025 :term:`BUILD_LD_ARCH` 1141 :term:`BUILD_LD_ARCH`
1026 Specifies architecture-specific linker flags for the build host. By 1142 Specifies architecture-specific linker flags for the build host. By
@@ -1028,10 +1144,58 @@ system and gives an overview of their function and contents.
1028 1144
1029 :term:`BUILD_LDFLAGS` 1145 :term:`BUILD_LDFLAGS`
1030 Specifies the flags to pass to the linker when building for the build 1146 Specifies the flags to pass to the linker when building for the build
1031 host. When building in the ``-native`` context, 1147 host. When building a :ref:`ref-classes-native` recipe,
1032 :term:`LDFLAGS` is set to the value of this variable 1148 :term:`LDFLAGS` is set to the value of this variable
1033 by default. 1149 by default.
1034 1150
1151 :term:`BUILD_NM`
1152 Specifies the architecture-specific utility to list symbols from object
1153 files for the build host, and its default definition is derived in part
1154 from :term:`BUILD_PREFIX`::
1155
1156 BUILD_NM = "${BUILD_PREFIX}nm"
1157
1158 When building a :ref:`ref-classes-native` recipe, :term:`NM` is set to the
1159 value of this variable by default.
1160
1161 The :term:`BUILD_NM` variable should not be set manually, and is rarely
1162 used in recipes as :term:`NM` contains the appropriate value depending on
1163 the context (native or target recipes). Exception be made for target
1164 recipes that need to use the utility from the build host at some point
1165 during the build.
1166
1167 :term:`BUILD_OBJCOPY`
1168 Specifies the architecture-specific utility to copy object files for the
1169 build host, and its default definition is derived in part from
1170 :term:`BUILD_PREFIX`::
1171
1172 BUILD_OBJCOPY = "${BUILD_PREFIX}objcopy"
1173
1174 When building a :ref:`ref-classes-native` recipe, :term:`OBJCOPY` is set
1175 to the value of this variable by default.
1176
1177 The :term:`BUILD_OBJCOPY` variable should not be set manually, and is
1178 rarely used in recipes as :term:`OBJCOPY` contains the appropriate value
1179 depending on the context (native or target recipes). Exception be made for
1180 target recipes that need to use the utility from the build host at some
1181 point during the build.
1182
1183 :term:`BUILD_OBJDUMP`
1184 Specifies the architecture-specific utility to display object files
1185 information for the build host, and its default definition is derived in
1186 part from :term:`BUILD_PREFIX`::
1187
1188 BUILD_OBJDUMP = "${BUILD_PREFIX}objdump"
1189
1190 When building a :ref:`ref-classes-native` recipe, :term:`OBJDUMP` is set
1191 to the value of this variable by default.
1192
1193 The :term:`BUILD_OBJDUMP` variable should not be set manually, and is
1194 rarely used in recipes as :term:`OBJDUMP` contains the appropriate value
1195 depending on the context (native or target recipes). Exception be made for
1196 target recipes that need to use the utility from the build host at some
1197 point during the build.
1198
1035 :term:`BUILD_OPTIMIZATION` 1199 :term:`BUILD_OPTIMIZATION`
1036 Specifies the optimization flags passed to the C compiler when 1200 Specifies the optimization flags passed to the C compiler when
1037 building for the build host or the SDK. The flags are passed through 1201 building for the build host or the SDK. The flags are passed through
@@ -1052,11 +1216,53 @@ system and gives an overview of their function and contents.
1052 build system uses the :term:`BUILD_PREFIX` value to set the 1216 build system uses the :term:`BUILD_PREFIX` value to set the
1053 :term:`TARGET_PREFIX` when building for :ref:`ref-classes-native` recipes. 1217 :term:`TARGET_PREFIX` when building for :ref:`ref-classes-native` recipes.
1054 1218
1219 :term:`BUILD_RANLIB`
1220 Specifies the architecture-specific utility to generate indexes for
1221 archives for the build host, and its default definition is derived in part
1222 from :term:`BUILD_PREFIX`::
1223
1224 BUILD_RANLIB = "${BUILD_PREFIX}ranlib -D"
1225
1226 When building a :ref:`ref-classes-native` recipe, :term:`RANLIB` is set to
1227 the value of this variable by default.
1228
1229 The :term:`BUILD_RANLIB` variable should not be set manually, and is
1230 rarely used in recipes as :term:`RANLIB` contains the appropriate value
1231 depending on the context (native or target recipes). Exception be made for
1232 target recipes that need to use the utility from the build host at some
1233 point during the build.
1234
1235 :term:`BUILD_READELF`
1236 Specifies the architecture-specific utility to display information about
1237 ELF files for the build host, and its default definition is derived in
1238 part from :term:`BUILD_PREFIX`::
1239
1240 BUILD_READELF = "${BUILD_PREFIX}readelf"
1241
1242 When building a :ref:`ref-classes-native` recipe, :term:`READELF` is set
1243 to the value of this variable by default.
1244
1245 The :term:`BUILD_READELF` variable should not be set manually, and is
1246 rarely used in recipes as :term:`READELF` contains the appropriate value
1247 depending on the context (native or target recipes). Exception be made for
1248 target recipes that need to use the utility from the build host at some
1249 point during the build.
1250
1055 :term:`BUILD_STRIP` 1251 :term:`BUILD_STRIP`
1056 Specifies the command to be used to strip debugging symbols from 1252 Specifies the command to be used to strip debugging symbols from binaries
1057 binaries produced for the build host. By default, :term:`BUILD_STRIP` 1253 produced for the build host, and its default definition is derived in part
1058 points to 1254 from :term:`BUILD_PREFIX`::
1059 ``${``\ :term:`BUILD_PREFIX`\ ``}strip``. 1255
1256 BUILD_STRIP = "${BUILD_PREFIX}strip"
1257
1258 When building a :ref:`ref-classes-native` recipe, :term:`STRIP` is set to
1259 the value of this variable by default.
1260
1261 The :term:`BUILD_STRIP` variable should not be set manually, and is
1262 rarely used in recipes as :term:`STRIP` contains the appropriate value
1263 depending on the context (native or target recipes). Exception be made for
1264 target recipes that need to use the utility from the build host at some
1265 point during the build.
1060 1266
1061 :term:`BUILD_SYS` 1267 :term:`BUILD_SYS`
1062 Specifies the system, including the architecture and the operating 1268 Specifies the system, including the architecture and the operating
@@ -1252,6 +1458,10 @@ system and gives an overview of their function and contents.
1252 :term:`CC` 1458 :term:`CC`
1253 The minimal command and arguments used to run the C compiler. 1459 The minimal command and arguments used to run the C compiler.
1254 1460
1461 :term:`CCLD`
1462 The minimal command and arguments used to run the linker when the C
1463 compiler is being used as the linker.
1464
1255 :term:`CFLAGS` 1465 :term:`CFLAGS`
1256 Specifies the flags to pass to the C compiler. This variable is 1466 Specifies the flags to pass to the C compiler. This variable is
1257 exported to an environment variable and thus made visible to the 1467 exported to an environment variable and thus made visible to the
@@ -1495,6 +1705,17 @@ system and gives an overview of their function and contents.
1495 :term:`CONFIGURE_FLAGS` 1705 :term:`CONFIGURE_FLAGS`
1496 The minimal arguments for GNU configure. 1706 The minimal arguments for GNU configure.
1497 1707
1708 :term:`CONFIGURE_SCRIPT`
1709 When using the :ref:`ref-classes-autotools` class, the
1710 :term:`CONFIGURE_SCRIPT` variable stores the location of the ``configure``
1711 script for the Autotools build system. The default definition for this
1712 variable is::
1713
1714 CONFIGURE_SCRIPT ?= "${AUTOTOOLS_SCRIPT_PATH}/configure"
1715
1716 Where :term:`AUTOTOOLS_SCRIPT_PATH` is the location of the of the
1717 Autotools build system scripts, which defaults to :term:`S`.
1718
1498 :term:`CONFLICT_DISTRO_FEATURES` 1719 :term:`CONFLICT_DISTRO_FEATURES`
1499 When inheriting the :ref:`ref-classes-features_check` 1720 When inheriting the :ref:`ref-classes-features_check`
1500 class, this variable identifies distribution features that would be 1721 class, this variable identifies distribution features that would be
@@ -1678,9 +1899,27 @@ system and gives an overview of their function and contents.
1678 variable only in certain contexts (e.g. when building for kernel 1899 variable only in certain contexts (e.g. when building for kernel
1679 and kernel module recipes). 1900 and kernel module recipes).
1680 1901
1902 :term:`CVE_CHECK_CREATE_MANIFEST`
1903 Specifies whether to create a CVE manifest to place in the deploy
1904 directory. The default is "1".
1905
1681 :term:`CVE_CHECK_IGNORE` 1906 :term:`CVE_CHECK_IGNORE`
1682 This variable is deprecated and should be replaced by :term:`CVE_STATUS`. 1907 This variable is deprecated and should be replaced by :term:`CVE_STATUS`.
1683 1908
1909 :term:`CVE_CHECK_MANIFEST_JSON`
1910 Specifies the path to the CVE manifest in JSON format. See
1911 :term:`CVE_CHECK_CREATE_MANIFEST`.
1912
1913 :term:`CVE_CHECK_MANIFEST_JSON_SUFFIX`
1914 Allows to modify the JSON manifest suffix. See
1915 :term:`CVE_CHECK_MANIFEST_JSON`.
1916
1917 :term:`CVE_CHECK_REPORT_PATCHED`
1918 Specifies whether or not the :ref:`ref-classes-cve-check`
1919 class should report patched or ignored CVEs. The default is "1", but you
1920 may wish to set it to "0" if you do not need patched or ignored CVEs in
1921 the logs.
1922
1684 :term:`CVE_CHECK_SHOW_WARNINGS` 1923 :term:`CVE_CHECK_SHOW_WARNINGS`
1685 Specifies whether or not the :ref:`ref-classes-cve-check` 1924 Specifies whether or not the :ref:`ref-classes-cve-check`
1686 class should generate warning messages on the console when unpatched 1925 class should generate warning messages on the console when unpatched
@@ -1960,7 +2199,7 @@ system and gives an overview of their function and contents.
1960 resides within the :term:`Build Directory` as ``${TMPDIR}/deploy``. 2199 resides within the :term:`Build Directory` as ``${TMPDIR}/deploy``.
1961 2200
1962 For more information on the structure of the Build Directory, see 2201 For more information on the structure of the Build Directory, see
1963 ":ref:`ref-manual/structure:the build directory --- \`\`build/\`\``" section. 2202 ":ref:`ref-manual/structure:the build directory --- ``build/```" section.
1964 For more detail on the contents of the ``deploy`` directory, see the 2203 For more detail on the contents of the ``deploy`` directory, see the
1965 ":ref:`overview-manual/concepts:images`", 2204 ":ref:`overview-manual/concepts:images`",
1966 ":ref:`overview-manual/concepts:package feeds`", and 2205 ":ref:`overview-manual/concepts:package feeds`", and
@@ -2002,7 +2241,7 @@ system and gives an overview of their function and contents.
2002 contents of :term:`IMGDEPLOYDIR` by the :ref:`ref-classes-image` class. 2241 contents of :term:`IMGDEPLOYDIR` by the :ref:`ref-classes-image` class.
2003 2242
2004 For more information on the structure of the :term:`Build Directory`, see 2243 For more information on the structure of the :term:`Build Directory`, see
2005 ":ref:`ref-manual/structure:the build directory --- \`\`build/\`\``" section. 2244 ":ref:`ref-manual/structure:the build directory --- ``build/```" section.
2006 For more detail on the contents of the ``deploy`` directory, see the 2245 For more detail on the contents of the ``deploy`` directory, see the
2007 ":ref:`overview-manual/concepts:images`" and 2246 ":ref:`overview-manual/concepts:images`" and
2008 ":ref:`overview-manual/concepts:application development sdk`" sections both in 2247 ":ref:`overview-manual/concepts:application development sdk`" sections both in
@@ -2501,6 +2740,13 @@ system and gives an overview of their function and contents.
2501 external tools. See the :ref:`ref-classes-kernel-yocto` class in 2740 external tools. See the :ref:`ref-classes-kernel-yocto` class in
2502 ``meta/classes-recipe`` to see how the variable is used. 2741 ``meta/classes-recipe`` to see how the variable is used.
2503 2742
2743 :term:`EXTERNAL_KERNEL_DEVICETREE`
2744 When inheriting :ref:`ref-classes-kernel-fitimage` and a
2745 :term:`PREFERRED_PROVIDER` for ``virtual/dtb`` set to ``devicetree``, the
2746 variable :term:`EXTERNAL_KERNEL_DEVICETREE` can be used to specify a
2747 directory containing one or more compiled device tree or device tree
2748 overlays to use.
2749
2504 :term:`KERNEL_LOCALVERSION` 2750 :term:`KERNEL_LOCALVERSION`
2505 This variable allows to append a string to the version 2751 This variable allows to append a string to the version
2506 of the kernel image. This corresponds to the ``CONFIG_LOCALVERSION`` 2752 of the kernel image. This corresponds to the ``CONFIG_LOCALVERSION``
@@ -2744,6 +2990,9 @@ system and gives an overview of their function and contents.
2744 :term:`FAKEROOTNOENV` 2990 :term:`FAKEROOTNOENV`
2745 See :term:`bitbake:FAKEROOTNOENV` in the BitBake manual. 2991 See :term:`bitbake:FAKEROOTNOENV` in the BitBake manual.
2746 2992
2993 :term:`FC`
2994 The minimal command and arguments used to run the Fortran compiler.
2995
2747 :term:`FEATURE_PACKAGES` 2996 :term:`FEATURE_PACKAGES`
2748 Defines one or more packages to include in an image when a specific 2997 Defines one or more packages to include in an image when a specific
2749 item is included in :term:`IMAGE_FEATURES`. 2998 item is included in :term:`IMAGE_FEATURES`.
@@ -3323,6 +3572,20 @@ system and gives an overview of their function and contents.
3323 - mips 3572 - mips
3324 - mipsel 3573 - mipsel
3325 3574
3575 :term:`HOST_AS_ARCH`
3576 Specifies architecture-specific assembler flags.
3577
3578 Default initialization for :term:`HOST_AS_ARCH` varies depending on what
3579 is being built:
3580
3581 - :term:`TARGET_AS_ARCH` when building for the
3582 target
3583
3584 - :term:`BUILD_AS_ARCH` when building for the build host (i.e.
3585 ``-native``)
3586
3587 - :term:`SDK_AS_ARCH` when building for an SDK (i.e. ``nativesdk-``)
3588
3326 :term:`HOST_CC_ARCH` 3589 :term:`HOST_CC_ARCH`
3327 Specifies architecture-specific compiler flags that are passed to the 3590 Specifies architecture-specific compiler flags that are passed to the
3328 C compiler. 3591 C compiler.
@@ -3336,8 +3599,20 @@ system and gives an overview of their function and contents.
3336 - :term:`BUILD_CC_ARCH` when building for the build host (i.e. 3599 - :term:`BUILD_CC_ARCH` when building for the build host (i.e.
3337 ``-native``) 3600 ``-native``)
3338 3601
3339 - ``BUILDSDK_CC_ARCH`` when building for an SDK (i.e. 3602 - :term:`SDK_CC_ARCH` when building for an SDK (i.e. ``nativesdk-``)
3340 ``nativesdk-``) 3603
3604 :term:`HOST_LD_ARCH`
3605 Specifies architecture-specific linker flags.
3606
3607 Default initialization for :term:`HOST_LD_ARCH` varies depending on what
3608 is being built:
3609
3610 - :term:`TARGET_LD_ARCH` when building for the target
3611
3612 - :term:`BUILD_LD_ARCH` when building for the build host (i.e.
3613 ``-native``)
3614
3615 - :term:`SDK_LD_ARCH` when building for an SDK (i.e. ``nativesdk-``)
3341 3616
3342 :term:`HOST_OS` 3617 :term:`HOST_OS`
3343 Specifies the name of the target operating system, which is normally 3618 Specifies the name of the target operating system, which is normally
@@ -3878,6 +4153,36 @@ system and gives an overview of their function and contents.
3878 4153
3879 IMAGE_ROOTFS_EXTRA_SPACE = "41943040" 4154 IMAGE_ROOTFS_EXTRA_SPACE = "41943040"
3880 4155
4156 :term:`IMAGE_ROOTFS_MAXSIZE`
4157 Defines the maximum allowed size of the generated image in kilobytes.
4158 The build will fail if the generated image size exceeds this value.
4159
4160 The generated image size undergoes several calculation steps before being
4161 compared to :term:`IMAGE_ROOTFS_MAXSIZE`.
4162 In the first step, the size of the directory pointed to by :term:`IMAGE_ROOTFS`
4163 is calculated.
4164 In the second step, the result from the first step is multiplied
4165 by :term:`IMAGE_OVERHEAD_FACTOR`.
4166 In the third step, the result from the second step is compared with
4167 :term:`IMAGE_ROOTFS_SIZE`. The larger value of these is added to
4168 :term:`IMAGE_ROOTFS_EXTRA_SPACE`.
4169 In the fourth step, the result from the third step is checked for
4170 a decimal part. If it has one, it is rounded up to the next integer.
4171 If it does not, it is simply converted into an integer.
4172 In the fifth step, the :term:`IMAGE_ROOTFS_ALIGNMENT` is added to the result
4173 from the fourth step and "1" is subtracted.
4174 In the sixth step, the remainder of the division between the result
4175 from the fifth step and :term:`IMAGE_ROOTFS_ALIGNMENT` is subtracted from the
4176 result of the fifth step. In this way, the result from the fourth step is
4177 rounded up to the nearest multiple of :term:`IMAGE_ROOTFS_ALIGNMENT`.
4178
4179 Thus, if the :term:`IMAGE_ROOTFS_MAXSIZE` is set, is compared with the result
4180 of the above calculations and is independent of the final image type.
4181 No default value is set for :term:`IMAGE_ROOTFS_MAXSIZE`.
4182
4183 It's a good idea to set this variable for images that need to fit on a limited
4184 space (e.g. SD card, a fixed-size partition, ...).
4185
3881 :term:`IMAGE_ROOTFS_SIZE` 4186 :term:`IMAGE_ROOTFS_SIZE`
3882 Defines the size in Kbytes for the generated image. The OpenEmbedded 4187 Defines the size in Kbytes for the generated image. The OpenEmbedded
3883 build system determines the final size for the generated image using 4188 build system determines the final size for the generated image using
@@ -4059,6 +4364,23 @@ system and gives an overview of their function and contents.
4059 Set the variable to "1" to prevent the default dependencies from 4364 Set the variable to "1" to prevent the default dependencies from
4060 being added. 4365 being added.
4061 4366
4367 :term:`INHIBIT_DEFAULT_RUST_DEPS`
4368 Prevents the :ref:`ref-classes-rust` class from automatically adding
4369 its default build-time dependencies.
4370
4371 When a recipe inherits the :ref:`ref-classes-rust` class, several
4372 tools such as ``rust-native`` and ``${RUSTLIB_DEP}`` (only added when cross-compiling) are added
4373 to :term:`DEPENDS` to support the ``rust`` build process.
4374
4375 To prevent the build system from adding these dependencies automatically,
4376 set the :term:`INHIBIT_DEFAULT_RUST_DEPS` variable as follows::
4377
4378 INHIBIT_DEFAULT_RUST_DEPS = "1"
4379
4380 By default, the value of :term:`INHIBIT_DEFAULT_RUST_DEPS` is empty. Setting
4381 it to "0" does not disable inhibition. Only the empty string will disable
4382 inhibition.
4383
4062 :term:`INHIBIT_PACKAGE_DEBUG_SPLIT` 4384 :term:`INHIBIT_PACKAGE_DEBUG_SPLIT`
4063 Prevents the OpenEmbedded build system from splitting out debug 4385 Prevents the OpenEmbedded build system from splitting out debug
4064 information during packaging. By default, the build system splits out 4386 information during packaging. By default, the build system splits out
@@ -4105,6 +4427,25 @@ system and gives an overview of their function and contents.
4105 even if the toolchain's binaries are strippable, there are other files 4427 even if the toolchain's binaries are strippable, there are other files
4106 needed for the build that are not strippable. 4428 needed for the build that are not strippable.
4107 4429
4430 :term:`INHIBIT_UPDATERCD_BBCLASS`
4431 Prevents the :ref:`ref-classes-update-rc.d` class from automatically
4432 installing and registering SysV init scripts for packages.
4433
4434 When a recipe inherits the :ref:`ref-classes-update-rc.d` class, init
4435 scripts are typically installed and registered for the packages listed in
4436 :term:`INITSCRIPT_PACKAGES`. This ensures that the relevant
4437 services are started and stopped at the appropriate runlevels using the
4438 traditional SysV init system.
4439
4440 To prevent the build system from adding these scripts and configurations
4441 automatically, set the :term:`INHIBIT_UPDATERCD_BBCLASS` variable as follows::
4442
4443 INHIBIT_UPDATERCD_BBCLASS = "1"
4444
4445 By default, the value of :term:`INHIBIT_UPDATERCD_BBCLASS` is empty. Setting
4446 it to "0" does not disable inhibition. Only the empty string will disable
4447 inhibition.
4448
4108 :term:`INIT_MANAGER` 4449 :term:`INIT_MANAGER`
4109 Specifies the system init manager to use. Available options are: 4450 Specifies the system init manager to use. Available options are:
4110 4451
@@ -4271,6 +4612,20 @@ system and gives an overview of their function and contents.
4271 See the :term:`MACHINE` variable for additional 4612 See the :term:`MACHINE` variable for additional
4272 information. 4613 information.
4273 4614
4615 :term:`INITRAMFS_MAXSIZE`
4616 Defines the maximum allowed size of the :term:`Initramfs` image in Kbytes.
4617 The build will fail if the :term:`Initramfs` image size exceeds this value.
4618
4619 The :term:`Initramfs` image size undergoes several calculation steps before
4620 being compared to :term:`INITRAMFS_MAXSIZE`.
4621 These steps are the same as those used for :term:`IMAGE_ROOTFS_MAXSIZE`
4622 and are described in detail in that entry.
4623
4624 Thus, :term:`INITRAMFS_MAXSIZE` is compared with the result of the calculations
4625 and is independent of the final image type (e.g. compressed).
4626 A default value for :term:`INITRAMFS_MAXSIZE` is set in
4627 :oe_git:`meta/conf/bitbake.conf </openembedded-core/tree/meta/conf/bitbake.conf>`.
4628
4274 :term:`INITRAMFS_MULTICONFIG` 4629 :term:`INITRAMFS_MULTICONFIG`
4275 Defines the multiconfig to create a multiconfig dependency to be used by 4630 Defines the multiconfig to create a multiconfig dependency to be used by
4276 the :ref:`ref-classes-kernel` class. 4631 the :ref:`ref-classes-kernel` class.
@@ -4336,8 +4691,7 @@ system and gives an overview of their function and contents.
4336 4691
4337 The value in :term:`INITSCRIPT_PARAMS` is passed through to the 4692 The value in :term:`INITSCRIPT_PARAMS` is passed through to the
4338 ``update-rc.d`` command. For more information on valid parameters, 4693 ``update-rc.d`` command. For more information on valid parameters,
4339 please see the ``update-rc.d`` manual page at 4694 please see the manual page: :manpage:`update-rc.d <update-rc.d(8)>`.
4340 https://manpages.debian.org/buster/init-system-helpers/update-rc.d.8.en.html
4341 4695
4342 :term:`INSANE_SKIP` 4696 :term:`INSANE_SKIP`
4343 Specifies the QA checks to skip for a specific package within a 4697 Specifies the QA checks to skip for a specific package within a
@@ -4454,15 +4808,8 @@ system and gives an overview of their function and contents.
4454 options not explicitly specified will be disabled in the kernel 4808 options not explicitly specified will be disabled in the kernel
4455 config. 4809 config.
4456 4810
4457 In case :term:`KCONFIG_MODE` is not set the behaviour will depend on where 4811 In case :term:`KCONFIG_MODE` is not set the ``defconfig`` file
4458 the ``defconfig`` file is coming from. An "in-tree" ``defconfig`` file 4812 will be handled in ``allnoconfig`` mode.
4459 will be handled in ``alldefconfig`` mode, a ``defconfig`` file placed
4460 in ``${WORKDIR}`` through a meta-layer will be handled in
4461 ``allnoconfig`` mode.
4462
4463 An "in-tree" ``defconfig`` file can be selected via the
4464 :term:`KBUILD_DEFCONFIG` variable. :term:`KCONFIG_MODE` does not need to
4465 be explicitly set.
4466 4813
4467 A ``defconfig`` file compatible with ``allnoconfig`` mode can be 4814 A ``defconfig`` file compatible with ``allnoconfig`` mode can be
4468 generated by copying the ``.config`` file from a working Linux kernel 4815 generated by copying the ``.config`` file from a working Linux kernel
@@ -4906,7 +5253,8 @@ system and gives an overview of their function and contents.
4906 ``LAYERVERSION_mylayer``). 5253 ``LAYERVERSION_mylayer``).
4907 5254
4908 :term:`LD` 5255 :term:`LD`
4909 The minimal command and arguments used to run the linker. 5256 The minimal command and arguments used to run the :manpage:`linker
5257 <ld(1)>`.
4910 5258
4911 :term:`LDFLAGS` 5259 :term:`LDFLAGS`
4912 Specifies the flags to pass to the linker. This variable is exported 5260 Specifies the flags to pass to the linker. This variable is exported
@@ -5084,7 +5432,7 @@ system and gives an overview of their function and contents.
5084 The :term:`LINUX_VERSION` variable is used to define :term:`PV` 5432 The :term:`LINUX_VERSION` variable is used to define :term:`PV`
5085 for the recipe:: 5433 for the recipe::
5086 5434
5087 PV = "${LINUX_VERSION}+git${SRCPV}" 5435 PV = "${LINUX_VERSION}+git"
5088 5436
5089 :term:`LINUX_VERSION_EXTENSION` 5437 :term:`LINUX_VERSION_EXTENSION`
5090 A string extension compiled into the version string of the Linux 5438 A string extension compiled into the version string of the Linux
@@ -5512,7 +5860,7 @@ system and gives an overview of their function and contents.
5512 variable is set. 5860 variable is set.
5513 5861
5514 :term:`NM` 5862 :term:`NM`
5515 The minimal command and arguments to run ``nm``. 5863 The minimal command and arguments to run :manpage:`nm <nm(1)>`.
5516 5864
5517 :term:`NO_GENERIC_LICENSE` 5865 :term:`NO_GENERIC_LICENSE`
5518 Avoids QA errors when you use a non-common, non-CLOSED license in a 5866 Avoids QA errors when you use a non-common, non-CLOSED license in a
@@ -5586,10 +5934,10 @@ system and gives an overview of their function and contents.
5586 NON_MULTILIB_RECIPES = "grub grub-efi make-mod-scripts ovmf u-boot" 5934 NON_MULTILIB_RECIPES = "grub grub-efi make-mod-scripts ovmf u-boot"
5587 5935
5588 :term:`OBJCOPY` 5936 :term:`OBJCOPY`
5589 The minimal command and arguments to run ``objcopy``. 5937 The minimal command and arguments to run :manpage:`objcopy <objcopy(1)>`.
5590 5938
5591 :term:`OBJDUMP` 5939 :term:`OBJDUMP`
5592 The minimal command and arguments to run ``objdump``. 5940 The minimal command and arguments to run :manpage:`objdump <objdump(1)>`.
5593 5941
5594 :term:`OE_BINCONFIG_EXTRA_MANGLE` 5942 :term:`OE_BINCONFIG_EXTRA_MANGLE`
5595 When inheriting the :ref:`ref-classes-binconfig` class, 5943 When inheriting the :ref:`ref-classes-binconfig` class,
@@ -5614,14 +5962,6 @@ system and gives an overview of their function and contents.
5614 5962
5615 OECMAKE_GENERATOR = "Unix Makefiles" 5963 OECMAKE_GENERATOR = "Unix Makefiles"
5616 5964
5617 :term:`OE_IMPORTS`
5618 An internal variable used to tell the OpenEmbedded build system what
5619 Python modules to import for every Python function run by the system.
5620
5621 .. note::
5622
5623 Do not set this variable. It is for internal use only.
5624
5625 :term:`OE_INIT_ENV_SCRIPT` 5965 :term:`OE_INIT_ENV_SCRIPT`
5626 The name of the build environment setup script for the purposes of 5966 The name of the build environment setup script for the purposes of
5627 setting up the environment within the extensible SDK. The default 5967 setting up the environment within the extensible SDK. The default
@@ -5684,6 +6024,13 @@ system and gives an overview of their function and contents.
5684 :term:`OPKG_MAKE_INDEX_EXTRA_PARAMS` 6024 :term:`OPKG_MAKE_INDEX_EXTRA_PARAMS`
5685 Specifies extra parameters for the ``opkg-make-index`` command. 6025 Specifies extra parameters for the ``opkg-make-index`` command.
5686 6026
6027 :term:`OPKGBUILDCMD`
6028 The variable :term:`OPKGBUILDCMD` specifies the command used to build opkg
6029 packages when using the :ref:`ref-classes-package_ipk` class. It is
6030 defined in :ref:`ref-classes-package_ipk` as::
6031
6032 OPKGBUILDCMD ??= 'opkg-build -Z zstd -a "${ZSTD_DEFAULTS}"'
6033
5687 :term:`OVERLAYFS_ETC_DEVICE` 6034 :term:`OVERLAYFS_ETC_DEVICE`
5688 When the :ref:`ref-classes-overlayfs-etc` class is 6035 When the :ref:`ref-classes-overlayfs-etc` class is
5689 inherited, specifies the device to be mounted for the read/write 6036 inherited, specifies the device to be mounted for the read/write
@@ -6450,7 +6797,7 @@ system and gives an overview of their function and contents.
6450 For examples of how this data is used, see the 6797 For examples of how this data is used, see the
6451 ":ref:`overview-manual/concepts:automatically added runtime dependencies`" 6798 ":ref:`overview-manual/concepts:automatically added runtime dependencies`"
6452 section in the Yocto Project Overview and Concepts Manual and the 6799 section in the Yocto Project Overview and Concepts Manual and the
6453 ":ref:`dev-manual/debugging:viewing package information with \`\`oe-pkgdata-util\`\``" 6800 ":ref:`dev-manual/debugging:viewing package information with ``oe-pkgdata-util```"
6454 section in the Yocto Project Development Tasks Manual. For more 6801 section in the Yocto Project Development Tasks Manual. For more
6455 information on the shared, global-state directory, see 6802 information on the shared, global-state directory, see
6456 :term:`STAGING_DIR_HOST`. 6803 :term:`STAGING_DIR_HOST`.
@@ -6491,6 +6838,23 @@ system and gives an overview of their function and contents.
6491 The version of the package(s) built by the recipe. By default, 6838 The version of the package(s) built by the recipe. By default,
6492 :term:`PKGV` is set to :term:`PV`. 6839 :term:`PKGV` is set to :term:`PV`.
6493 6840
6841 If :term:`PV` contains the ``+`` sign, source control information will be
6842 included in :term:`PKGV` later in the packaging phase. For more
6843 information, see the :doc:`/dev-manual/external-scm` section of the Yocto
6844 Project Development Tasks Manual.
6845
6846 .. warning::
6847
6848 Since source control information is included in a late stage by the
6849 :ref:`ref-classes-package` class, it cannot be seen from the BitBake
6850 environment with ``bitbake -e`` or ``bitbake-getvar``. Instead, after
6851 the package is built, the version information can be retrieved with
6852 ``oe-pkgdata-util package-info <package name>``. See the
6853 :ref:`dev-manual/debugging:Viewing Package Information with
6854 ``oe-pkgdata-util``` section of the Yocto Project Development Tasks
6855 Manual for more information on ``oe-pkgdata-util``.
6856
6857
6494 :term:`PN` 6858 :term:`PN`
6495 This variable can have two separate functions depending on the 6859 This variable can have two separate functions depending on the
6496 context: a recipe name or a resulting package name. 6860 context: a recipe name or a resulting package name.
@@ -6625,22 +6989,14 @@ system and gives an overview of their function and contents.
6625 string. You cannot use the wildcard character in any other 6989 string. You cannot use the wildcard character in any other
6626 location of the string. 6990 location of the string.
6627 6991
6628 The specified version is matched against :term:`PV`, which 6992 The specified version is matched against :term:`PV`, which does not
6629 does not necessarily match the version part of the recipe's filename. 6993 necessarily match the version part of the recipe's filename.
6630 For example, consider two recipes ``foo_1.2.bb`` and ``foo_git.bb``
6631 where ``foo_git.bb`` contains the following assignment::
6632
6633 PV = "1.1+git${SRCPV}"
6634
6635 In this case, the correct way to select
6636 ``foo_git.bb`` is by using an assignment such as the following::
6637
6638 PREFERRED_VERSION_foo = "1.1+git%"
6639 6994
6640 Compare that previous example 6995 If you want to select a recipe named ``foo_git.bb`` which has :term:`PV`
6641 against the following incorrect example, which does not work:: 6996 set to ``1.2.3+git``, you can do so by setting ```PREFERRED_VERSION_foo``
6642 6997 to ``1.2.3%`` (i.e. simply setting ``PREFERRED_VERSION_foo`` to ``git``
6643 PREFERRED_VERSION_foo = "git" 6998 will not work as the name of the recipe isn't used, but rather its
6999 :term:`PV` definition).
6644 7000
6645 Sometimes the :term:`PREFERRED_VERSION` variable can be set by 7001 Sometimes the :term:`PREFERRED_VERSION` variable can be set by
6646 configuration files in a way that is hard to change. You can use 7002 configuration files in a way that is hard to change. You can use
@@ -6805,7 +7161,7 @@ system and gives an overview of their function and contents.
6805 7161
6806 :term:`PTEST_ENABLED` 7162 :term:`PTEST_ENABLED`
6807 Specifies whether or not :ref:`Package 7163 Specifies whether or not :ref:`Package
6808 Test <dev-manual/packages:testing packages with ptest>` (ptest) 7164 Test <test-manual/ptest:testing packages with ptest>` (ptest)
6809 functionality is enabled when building a recipe. You should not set 7165 functionality is enabled when building a recipe. You should not set
6810 this variable directly. Enabling and disabling building Package Tests 7166 this variable directly. Enabling and disabling building Package Tests
6811 at build time should be done by adding "ptest" to (or removing it 7167 at build time should be done by adding "ptest" to (or removing it
@@ -6862,7 +7218,7 @@ system and gives an overview of their function and contents.
6862 QA_EMPTY_DIRS_RECOMMENDATION:/dev = "but all devices must be created at runtime" 7218 QA_EMPTY_DIRS_RECOMMENDATION:/dev = "but all devices must be created at runtime"
6863 7219
6864 :term:`RANLIB` 7220 :term:`RANLIB`
6865 The minimal command and arguments to run ``ranlib``. 7221 The minimal command and arguments to run :manpage:`ranlib <ranlib(1)>`.
6866 7222
6867 :term:`RCONFLICTS` 7223 :term:`RCONFLICTS`
6868 The list of packages that conflict with packages. Note that packages 7224 The list of packages that conflict with packages. Note that packages
@@ -6999,6 +7355,9 @@ system and gives an overview of their function and contents.
6999 ":ref:`bitbake-user-manual/bitbake-user-manual-execution:dependencies`" sections in the 7355 ":ref:`bitbake-user-manual/bitbake-user-manual-execution:dependencies`" sections in the
7000 BitBake User Manual for additional information on tasks and dependencies. 7356 BitBake User Manual for additional information on tasks and dependencies.
7001 7357
7358 :term:`READELF`
7359 The minimal command and arguments to run :manpage:`readelf <readelf(1)>`.
7360
7002 :term:`RECIPE_MAINTAINER` 7361 :term:`RECIPE_MAINTAINER`
7003 This variable defines the name and e-mail address of the maintainer of a 7362 This variable defines the name and e-mail address of the maintainer of a
7004 recipe. Such information can be used by human users submitted changes, 7363 recipe. Such information can be used by human users submitted changes,
@@ -7093,17 +7452,12 @@ system and gives an overview of their function and contents.
7093 prefer to have a read-only root filesystem and prefer to keep 7452 prefer to have a read-only root filesystem and prefer to keep
7094 writeable data in one place. 7453 writeable data in one place.
7095 7454
7096 You can override the default by setting the variable in any layer or 7455 When setting ``INIT_MANAGER = systemd``, the default will be set to::
7097 in the ``local.conf`` file. Because the default is set using a "weak"
7098 assignment (i.e. "??="), you can use either of the following forms to
7099 define your override::
7100 7456
7101 ROOT_HOME = "/root"
7102 ROOT_HOME ?= "/root" 7457 ROOT_HOME ?= "/root"
7103 7458
7104 These 7459 You can also override the default by setting the variable in your distro
7105 override examples use ``/root``, which is probably the most commonly 7460 configuration or in the ``local.conf`` file.
7106 used override.
7107 7461
7108 :term:`ROOTFS` 7462 :term:`ROOTFS`
7109 Indicates a filesystem image to include as the root filesystem. 7463 Indicates a filesystem image to include as the root filesystem.
@@ -7348,11 +7702,21 @@ system and gives an overview of their function and contents.
7348 7702
7349 Only one archive type can be specified. 7703 Only one archive type can be specified.
7350 7704
7705 :term:`SDK_AS_ARCH`
7706 Specifies architecture-specific assembler flags when building
7707 :ref:`ref-classes-nativesdk` recipes. By default, the value of
7708 :term:`SDK_AS_ARCH` equals the one of :term:`BUILD_AS_ARCH`.
7709
7351 :term:`SDK_BUILDINFO_FILE` 7710 :term:`SDK_BUILDINFO_FILE`
7352 When using the :ref:`ref-classes-image-buildinfo` class, 7711 When using the :ref:`ref-classes-image-buildinfo` class,
7353 specifies the file in the SDK to write the build information into. The 7712 specifies the file in the SDK to write the build information into. The
7354 default value is "``/buildinfo``". 7713 default value is "``/buildinfo``".
7355 7714
7715 :term:`SDK_CC_ARCH`
7716 Specifies the architecture-specific C compiler flags when building
7717 :ref:`ref-classes-nativesdk` recipes. By default, the value of
7718 :term:`SDK_CC_ARCH` equals the one of :term:`BUILD_CC_ARCH`.
7719
7356 :term:`SDK_CUSTOM_TEMPLATECONF` 7720 :term:`SDK_CUSTOM_TEMPLATECONF`
7357 When building the extensible SDK, if :term:`SDK_CUSTOM_TEMPLATECONF` is set to 7721 When building the extensible SDK, if :term:`SDK_CUSTOM_TEMPLATECONF` is set to
7358 "1" and a ``conf/templateconf.cfg`` file exists in the :term:`Build Directory` 7722 "1" and a ``conf/templateconf.cfg`` file exists in the :term:`Build Directory`
@@ -7434,6 +7798,11 @@ system and gives an overview of their function and contents.
7434 :term:`SDK_EXT_TYPE` is set to "minimal", and defaults to "1" if 7798 :term:`SDK_EXT_TYPE` is set to "minimal", and defaults to "1" if
7435 :term:`SDK_EXT_TYPE` is set to "full". 7799 :term:`SDK_EXT_TYPE` is set to "full".
7436 7800
7801 :term:`SDK_LD_ARCH`
7802 Specifies architecture-specific linker flags when building
7803 :ref:`ref-classes-nativesdk` recipes. By default, the value of
7804 :term:`SDK_LD_ARCH` equals the one of :term:`BUILD_LD_ARCH`.
7805
7437 :term:`SDK_NAME` 7806 :term:`SDK_NAME`
7438 The base name for SDK output files. The default value (as set in 7807 The base name for SDK output files. The default value (as set in
7439 ``meta-poky/conf/distro/poky.conf``) is derived from the 7808 ``meta-poky/conf/distro/poky.conf``) is derived from the
@@ -7725,6 +8094,53 @@ system and gives an overview of their function and contents.
7725 might break at runtime if the interface of the recipe was changed 8094 might break at runtime if the interface of the recipe was changed
7726 after the other had been built. 8095 after the other had been built.
7727 8096
8097 :term:`SIGGEN_LOCKEDSIGS`
8098 The list of locked tasks, with the form::
8099
8100 SIGGEN_LOCKEDSIGS += "<package>:<task>:<signature>"
8101
8102 If ``<signature>`` exists for the specified ``<task>`` and ``<package>``
8103 in the sstate cache, BitBake will use the cached output instead of
8104 rebuilding the ``<task>``. If it does not exist, BitBake will build the
8105 ``<task>`` and the sstate cache will be used next time.
8106
8107 Example::
8108
8109 SIGGEN_LOCKEDSIGS += "bc:do_compile:09772aa4532512baf96d433484f27234d4b7c11dd9cda0d6f56fa1b7ce6f25f0"
8110
8111 You can obtain the signature of all the tasks for the recipe ``bc`` using::
8112
8113 bitbake -S none bc
8114
8115 Then you can look at files in ``build/tmp/stamps/<arch>/bc`` and look for
8116 files like: ``<PV>.do_compile.sigdata.09772aa4532512baf96d433484f27234d4b7c11dd9cda0d6f56fa1b7ce6f25f0``.
8117
8118 Alternatively, you can also use :doc:`bblock </dev-manual/bblock>` to
8119 generate this line for you.
8120
8121 :term:`SIGGEN_LOCKEDSIGS_TASKSIG_CHECK`
8122 Specifies the debug level of task signature check. 3 levels are supported:
8123
8124 * ``info``: displays a "Note" message to remind the user that a task is locked
8125 and the current signature matches the locked one.
8126 * ``warn``: displays a "Warning" message if a task is locked and the current
8127 signature does not match the locked one.
8128 * ``error``: same as warn but displays an "Error" message and aborts.
8129
8130 :term:`SIGGEN_LOCKEDSIGS_TYPES`
8131 Allowed overrides for :term:`SIGGEN_LOCKEDSIGS`. This is mainly used
8132 for architecture specific locks. A common value for
8133 :term:`SIGGEN_LOCKEDSIGS_TYPES` is ``${PACKAGE_ARCHS}``::
8134
8135 SIGGEN_LOCKEDSIGS_TYPES += "${PACKAGE_ARCHS}"
8136
8137 SIGGEN_LOCKEDSIGS_core2-64 += "bc:do_compile:09772aa4532512baf96d433484f27234d4b7c11dd9cda0d6f56fa1b7ce6f25f0"
8138 SIGGEN_LOCKEDSIGS_cortexa57 += "bc:do_compile:12178eb6d55ef602a8fe638e49862fd247e07b228f0f08967697b655bfe4bb61"
8139
8140 Here, the ``do_compile`` task from ``bc`` will be locked only for
8141 ``core2-64`` and ``cortexa57`` but not for other architectures such as
8142 ``mips32r2``.
8143
7728 :term:`SITEINFO_BITS` 8144 :term:`SITEINFO_BITS`
7729 Specifies the number of bits for the target system CPU. The value 8145 Specifies the number of bits for the target system CPU. The value
7730 should be either "32" or "64". 8146 should be either "32" or "64".
@@ -7835,6 +8251,31 @@ system and gives an overview of their function and contents.
7835 8251
7836 You can specify only a single URL in :term:`SOURCE_MIRROR_URL`. 8252 You can specify only a single URL in :term:`SOURCE_MIRROR_URL`.
7837 8253
8254 .. note::
8255
8256 If the mirror is protected behind a username and password, the
8257 :term:`build host` needs to be configured so the :term:`build system
8258 <OpenEmbedded Build System>` is able to fetch from the mirror.
8259
8260 The recommended way to do that is by setting the following parameters
8261 in ``$HOME/.netrc`` (``$HOME`` being the :term:`build host` home
8262 directory)::
8263
8264 machine example.com
8265 login <user>
8266 password <password>
8267
8268 This file requires permissions set to ``400`` or ``600`` to prevent
8269 other users from reading the file::
8270
8271 chmod 600 "$HOME/.netrc"
8272
8273 Another method to configure the username and password is from the URL
8274 in :term:`SOURCE_MIRROR_URL` directly, with the ``user`` and ``pswd``
8275 parameters::
8276
8277 SOURCE_MIRROR_URL = "http://example.com/my_source_mirror;user=<user>;pswd=<password>"
8278
7838 :term:`SPDX_ARCHIVE_PACKAGED` 8279 :term:`SPDX_ARCHIVE_PACKAGED`
7839 This option allows to add to :term:`SPDX` output compressed archives 8280 This option allows to add to :term:`SPDX` output compressed archives
7840 of the files in the generated target packages. 8281 of the files in the generated target packages.
@@ -8009,7 +8450,7 @@ system and gives an overview of their function and contents.
8009 class. 8450 class.
8010 8451
8011 :term:`SPL_SIGN_KEYNAME` 8452 :term:`SPL_SIGN_KEYNAME`
8012 The name of keys used by the :ref:`ref-classes-kernel-fitimage` class 8453 The name of keys used by the :ref:`ref-classes-uboot-sign` class
8013 for signing U-Boot FIT image stored in the :term:`SPL_SIGN_KEYDIR` 8454 for signing U-Boot FIT image stored in the :term:`SPL_SIGN_KEYDIR`
8014 directory. If we have for example a ``dev.key`` key and a ``dev.crt`` 8455 directory. If we have for example a ``dev.key`` key and a ``dev.crt``
8015 certificate stored in the :term:`SPL_SIGN_KEYDIR` directory, you will 8456 certificate stored in the :term:`SPL_SIGN_KEYDIR` directory, you will
@@ -8115,21 +8556,23 @@ system and gives an overview of their function and contents.
8115 (SCM). 8556 (SCM).
8116 8557
8117 :term:`SRCPV` 8558 :term:`SRCPV`
8118 Returns the version string of the current package. This string is 8559 The variable :term:`SRCPV` is deprecated. It was previously used to
8119 used to help define the value of :term:`PV`. 8560 include source control information in :term:`PV` for :term:`bitbake` to
8561 work correctly but this is no longer a requirement. Source control
8562 information will be automatically included by :term:`bitbake` in the
8563 variable :term:`PKGV` during packaging if the ``+`` sign is present in
8564 :term:`PV`.
8120 8565
8121 The :term:`SRCPV` variable is defined in the ``meta/conf/bitbake.conf`` 8566 .. note::
8122 configuration file in the :term:`Source Directory` as
8123 follows::
8124 8567
8125 SRCPV = "${@bb.fetch2.get_srcrev(d)}" 8568 The :term:`SRCPV` variable used to be defined in the
8569 ``meta/conf/bitbake.conf`` configuration file in the :term:`Source
8570 Directory` as follows::
8126 8571
8127 Recipes that need to define :term:`PV` do so with the help of the 8572 SRCPV = "${@bb.fetch2.get_srcrev(d)}"
8128 :term:`SRCPV`. For example, the ``ofono`` recipe (``ofono_git.bb``)
8129 located in ``meta/recipes-connectivity`` in the Source Directory
8130 defines :term:`PV` as follows::
8131 8573
8132 PV = "0.12-git${SRCPV}" 8574 The ``get_srcrev`` function can still be used to include source control
8575 information in variables manually.
8133 8576
8134 :term:`SRCREV` 8577 :term:`SRCREV`
8135 The revision of the source code used to build the package. This 8578 The revision of the source code used to build the package. This
@@ -8240,10 +8683,38 @@ system and gives an overview of their function and contents.
8240 file://.* https://someserver.tld/share/sstate/PATH;downloadfilename=PATH \ 8683 file://.* https://someserver.tld/share/sstate/PATH;downloadfilename=PATH \
8241 file://.* file:///some-local-dir/sstate/PATH" 8684 file://.* file:///some-local-dir/sstate/PATH"
8242 8685
8686 .. note::
8687
8688 If the mirror is protected behind a username and password, the
8689 :term:`build host` needs to be configured so the :term:`build system
8690 <OpenEmbedded Build System>` is able to download the sstate cache using
8691 authentication.
8692
8693 The recommended way to do that is by setting the following parameters
8694 in ``$HOME/.netrc`` (``$HOME`` being the :term:`build host` home
8695 directory)::
8696
8697 machine someserver.tld
8698 login <user>
8699 password <password>
8700
8701 This file requires permissions set to ``400`` or ``600`` to prevent
8702 other users from reading the file::
8703
8704 chmod 600 "$HOME/.netrc"
8705
8706 Another method to configure the username and password is from the
8707 URL in :term:`SSTATE_MIRRORS` directly, with the ``user`` and ``pswd``
8708 parameters::
8709
8710 SSTATE_MIRRORS ?= "\
8711 file://.* https://someserver.tld/share/sstate/PATH;user=<user>;pswd=<password>;downloadfilename=PATH \
8712 "
8713
8243 The Yocto Project actually shares the cache data objects built by its 8714 The Yocto Project actually shares the cache data objects built by its
8244 autobuilder:: 8715 autobuilder::
8245 8716
8246 SSTATE_MIRRORS ?= "file://.* http://cdn.jsdelivr.net/yocto/sstate/all/PATH;downloadfilename=PATH" 8717 SSTATE_MIRRORS ?= "file://.* http://sstate.yoctoproject.org/all/PATH;downloadfilename=PATH"
8247 8718
8248 As such binary artifacts are built for the generic QEMU machines 8719 As such binary artifacts are built for the generic QEMU machines
8249 supported by the various Poky releases, they are less likely to be 8720 supported by the various Poky releases, they are less likely to be
@@ -8267,6 +8738,26 @@ system and gives an overview of their function and contents.
8267 8738
8268 For details on the process, see the :ref:`ref-classes-staging` class. 8739 For details on the process, see the :ref:`ref-classes-staging` class.
8269 8740
8741 :term:`SSTATE_SKIP_CREATION`
8742 The :term:`SSTATE_SKIP_CREATION` variable can be used to skip the
8743 creation of :ref:`shared state <overview-manual/concepts:shared state cache>`
8744 tarball files. It makes sense e.g. for image creation tasks as tarring images
8745 and keeping them in sstate would consume a lot of disk space.
8746
8747 In general it is not recommended to use this variable as missing sstate
8748 artefacts adversely impact the build, particularly for entries in the
8749 middle of dependency chains. The case it can make sense is where the
8750 size and time costs of the artefact are similar to just running the
8751 tasks. This generally only applies to end artefact output like images.
8752
8753 The syntax to disable it for one task is::
8754
8755 SSTATE_SKIP_CREATION:task-image-complete = "1"
8756
8757 The syntax to disable it for the whole recipe is::
8758
8759 SSTATE_SKIP_CREATION = "1"
8760
8270 :term:`STAGING_BASE_LIBDIR_NATIVE` 8761 :term:`STAGING_BASE_LIBDIR_NATIVE`
8271 Specifies the path to the ``/lib`` subdirectory of the sysroot 8762 Specifies the path to the ``/lib`` subdirectory of the sysroot
8272 directory for the build host. 8763 directory for the build host.
@@ -8457,8 +8948,8 @@ system and gives an overview of their function and contents.
8457 places stamps. The default directory is ``${TMPDIR}/stamps``. 8948 places stamps. The default directory is ``${TMPDIR}/stamps``.
8458 8949
8459 :term:`STRIP` 8950 :term:`STRIP`
8460 The minimal command and arguments to run ``strip``, which is used to 8951 The minimal command and arguments to run :manpage:`strip <strip(1)>`,
8461 strip symbols. 8952 which is used to strip symbols.
8462 8953
8463 :term:`SUMMARY` 8954 :term:`SUMMARY`
8464 The short (72 characters or less) summary of the binary package for 8955 The short (72 characters or less) summary of the binary package for
@@ -9018,8 +9509,8 @@ system and gives an overview of their function and contents.
9018 file. 9509 file.
9019 9510
9020 For more information on testing images, see the 9511 For more information on testing images, see the
9021 ":ref:`dev-manual/runtime-testing:performing automated runtime testing`" 9512 ":ref:`test-manual/runtime-testing:performing automated runtime testing`"
9022 section in the Yocto Project Development Tasks Manual. 9513 section in the Yocto Project Test Environment Manual.
9023 9514
9024 :term:`TEST_SERIALCONTROL_CMD` 9515 :term:`TEST_SERIALCONTROL_CMD`
9025 For automated hardware testing, specifies the command to use to 9516 For automated hardware testing, specifies the command to use to
@@ -9090,8 +9581,8 @@ system and gives an overview of their function and contents.
9090 TEST_SUITES = "test_A test_B" 9581 TEST_SUITES = "test_A test_B"
9091 9582
9092 For more information on testing images, see the 9583 For more information on testing images, see the
9093 ":ref:`dev-manual/runtime-testing:performing automated runtime testing`" 9584 ":ref:`test-manual/runtime-testing:performing automated runtime testing`"
9094 section in the Yocto Project Development Tasks Manual. 9585 section in the Yocto Project Test Environment Manual.
9095 9586
9096 :term:`TEST_TARGET` 9587 :term:`TEST_TARGET`
9097 Specifies the target controller to use when running tests against a 9588 Specifies the target controller to use when running tests against a
@@ -9109,8 +9600,8 @@ system and gives an overview of their function and contents.
9109 You can provide the following arguments with :term:`TEST_TARGET`: 9600 You can provide the following arguments with :term:`TEST_TARGET`:
9110 9601
9111 - *"qemu":* Boots a QEMU image and runs the tests. See the 9602 - *"qemu":* Boots a QEMU image and runs the tests. See the
9112 ":ref:`dev-manual/runtime-testing:enabling runtime tests on qemu`" section 9603 ":ref:`test-manual/runtime-testing:enabling runtime tests on qemu`" section
9113 in the Yocto Project Development Tasks Manual for more 9604 in the Yocto Project Test Environment Manual for more
9114 information. 9605 information.
9115 9606
9116 - *"simpleremote":* Runs the tests on target hardware that is 9607 - *"simpleremote":* Runs the tests on target hardware that is
@@ -9125,8 +9616,8 @@ system and gives an overview of their function and contents.
9125 ``meta/lib/oeqa/controllers/simpleremote.py``. 9616 ``meta/lib/oeqa/controllers/simpleremote.py``.
9126 9617
9127 For information on running tests on hardware, see the 9618 For information on running tests on hardware, see the
9128 ":ref:`dev-manual/runtime-testing:enabling runtime tests on hardware`" 9619 ":ref:`test-manual/runtime-testing:enabling runtime tests on hardware`"
9129 section in the Yocto Project Development Tasks Manual. 9620 section in the Yocto Project Test Environment Manual.
9130 9621
9131 :term:`TEST_TARGET_IP` 9622 :term:`TEST_TARGET_IP`
9132 The IP address of your hardware under test. The :term:`TEST_TARGET_IP` 9623 The IP address of your hardware under test. The :term:`TEST_TARGET_IP`
@@ -9162,10 +9653,15 @@ system and gives an overview of their function and contents.
9162 9653
9163 For more information 9654 For more information
9164 on enabling, running, and writing these tests, see the 9655 on enabling, running, and writing these tests, see the
9165 ":ref:`dev-manual/runtime-testing:performing automated runtime testing`" 9656 ":ref:`test-manual/runtime-testing:performing automated runtime testing`"
9166 section in the Yocto Project Development Tasks Manual and the 9657 section in the Yocto Project Test Environment Manual and the
9167 ":ref:`ref-classes-testimage`" section. 9658 ":ref:`ref-classes-testimage`" section.
9168 9659
9660 :term:`TESTIMAGE_FAILED_QA_ARTIFACTS`
9661 When using the :ref:`ref-classes-testimage` class, the variable
9662 :term:`TESTIMAGE_FAILED_QA_ARTIFACTS` lists space-separated paths on the
9663 target to retrieve onto the host.
9664
9169 :term:`THISDIR` 9665 :term:`THISDIR`
9170 The directory in which the file BitBake is currently parsing is 9666 The directory in which the file BitBake is currently parsing is
9171 located. Do not manually set this variable. 9667 located. Do not manually set this variable.
@@ -9957,8 +10453,22 @@ system and gives an overview of their function and contents.
9957 ":ref:`ref-classes-insane`" section. 10453 ":ref:`ref-classes-insane`" section.
9958 10454
9959 :term:`WATCHDOG_TIMEOUT` 10455 :term:`WATCHDOG_TIMEOUT`
9960 Specifies the timeout in seconds used by the ``watchdog`` recipe and 10456 Specifies the timeout in seconds used by the ``watchdog-config`` recipe
9961 also by ``systemd`` during reboot. The default is 60 seconds. 10457 and also by ``systemd`` during reboot. The default is 60 seconds.
10458
10459 :term:`WIC_CREATE_EXTRA_ARGS`
10460 If the :term:`IMAGE_FSTYPES` variable contains "wic", the build
10461 will generate a
10462 :ref:`Wic image <dev-manual/wic:creating partitioned images using wic>`
10463 automatically when BitBake builds an image recipe. As part of
10464 this process BitBake will invoke the "`wic create`" command. The
10465 :term:`WIC_CREATE_EXTRA_ARGS` variable is placed at the end of this
10466 command which allows the user to supply additional arguments.
10467
10468 One such useful purpose for this mechanism is to add the ``-D`` (or
10469 ``--debug``) argument to the "`wic create`" command. This increases the
10470 amount of debugging information written out to the Wic log during the
10471 Wic creation process.
9962 10472
9963 :term:`WIRELESS_DAEMON` 10473 :term:`WIRELESS_DAEMON`
9964 For ``connman`` and ``packagegroup-base``, specifies the wireless 10474 For ``connman`` and ``packagegroup-base``, specifies the wireless