From 2ea44cfb5e85174e531ab5c062454fd162d79f30 Mon Sep 17 00:00:00 2001 From: Kathleen Dollard Date: Tue, 19 Jun 2018 16:13:39 -0700 Subject: [PATCH 01/17] Reorganize version topic --- docs/core/tutorials/metapackages.md | 14 ++ docs/core/versions/_trash.md | 55 +++++ docs/core/versions/index.md | 225 +++--------------- docs/core/versions/lts-current.md | 48 ++++ docs/core/versions/version-history.md | 47 ++++ docs/core/versions/versioning-docker.md | 15 ++ docs/core/versions/versioning-for-packages.md | 19 ++ docs/core/versions/versioning-standard.md | 21 ++ 8 files changed, 253 insertions(+), 191 deletions(-) create mode 100644 docs/core/tutorials/metapackages.md create mode 100644 docs/core/versions/_trash.md create mode 100644 docs/core/versions/lts-current.md create mode 100644 docs/core/versions/version-history.md create mode 100644 docs/core/versions/versioning-docker.md create mode 100644 docs/core/versions/versioning-for-packages.md create mode 100644 docs/core/versions/versioning-standard.md diff --git a/docs/core/tutorials/metapackages.md b/docs/core/tutorials/metapackages.md new file mode 100644 index 0000000000000..3e9f311a8da4f --- /dev/null +++ b/docs/core/tutorials/metapackages.md @@ -0,0 +1,14 @@ + +### Shipping a patch release + +After shipping a major release of .NET Core, such as version 2.0.0, patch-level changes are made to .NET Core libraries to fix bugs and improve performance and reliability. That means that no new APIs are introduced. The various metapackages are updated to reference the updated .NET Core library packages. The metapackages are versioned as patch updates (`MAJOR.MINOR.PATCH`). Target frameworks are never updated as part of patch releases. A new .NET Core distribution is released with a version number that matches that of the `Microsoft.NETCore.App` metapackage. + +### Shipping a minor release + +After shipping a .NET Core version with an incremented `MAJOR` version number, new APIs are added to .NET Core libraries to enable new scenarios. The various metapackages are updated to reference the updated .NET Core library packages. The metapackages are versioned as patch updates with `MAJOR` and `MINOR` version numbers matching the new framework version. New target framework names with the new `MAJOR.MINOR` version are added to describe the new APIs (for example, `netcoreapp2.1`). A new .NET Core distribution is released with a matching version number to the `Microsoft.NETCore.App` metapackage. + +### Shipping a major release + +Every time a new major version of .NET Core ships, the `MAJOR` version number gets incremented, and the `MINOR` version number gets reset to zero. The new major version contains at least all the APIs that were added by minor releases after the previous major version. A new major version should enable important new scenarios, and it may also drop support for an older platform. + +The various metapackages are updated to reference the updated .NET Core library packages. The [`Microsoft.NETCore.App`](https://www.nuget.org/packages/Microsoft.NETCore.App) metapackage and the `netcore` target framework are versioned as a major update matching the `MAJOR` version number of the new release. diff --git a/docs/core/versions/_trash.md b/docs/core/versions/_trash.md new file mode 100644 index 0000000000000..9df375e96717e --- /dev/null +++ b/docs/core/versions/_trash.md @@ -0,0 +1,55 @@ +## Versioning scheme details + +.NET Core is made of the following parts: + +- A host: either *dotnet.exe* for framework-dependent applications, or *\.exe* for self-contained applications. +- An SDK (the set of tools necessary on a developer's machine, but not in production). +- A runtime. +- A shared framework implementation, distributed as packages. Each package is versioned independently, particularly for patch versioning. +- Optionally, a set of [metapackages](../packages.md) that reference fine-grained packages as a versioned unit. Metapackages can be versioned separately from packages. + +.NET Core also includes a set of target frameworks (for example, `netstandard` or `netcoreapp`) that represent a progressively larger API set, as version numbers are incremented. + +### Packages + +Library packages evolve and version independently. Packages that overlap with .NET Framework System.\* assemblies typically use 4.x versions, aligning with the .NET Framework 4.x versioning (a historical choice). Packages that do not overlap with the .NET Framework libraries (for example, [`System.Reflection.Metadata`](https://www.nuget.org/packages/System.Reflection.Metadata)) typically start at 1.0 and increment from there. + +The packages described by [`NETStandard.Library`](https://www.nuget.org/packages/NETStandard.Library) are treated specially due to being at the base of the platform. + +`NETStandard.Library` packages will typically version as a set, since they have implementation-level dependencies between them. + +### Metapackages + +Versioning for .NET Core metapackages is based on the .NET Core version they are a part of. + +For instance, the metapackages in .NET Core 2.1.3 should all have 2.1 as their `MAJOR` and `MINOR` version numbers. + +The patch version for the metapackage is incremented every time any referenced package is updated. Patch versions don't include an updated framework version. As a result, the metapackages aren't strictly SemVer-compliant because their versioning scheme doesn't represent the degree of change in the underlying packages, but primarily of the API level. + +There are currently two primary metapackages for .NET Core: + +**Microsoft.NETCore.App** + +- v1.0 as of .NET Core 1.0 (these versions match). +- Maps to the `netcoreapp` framework. +- Describes the packages in the .NET Core distribution. + +Note: [`Microsoft.NETCore.Portable.Compatibility`](https://www.nuget.org/packages/Microsoft.NETCore.Portable.Compatibility) is another .NET Core metapackage that exists to enable compatibility with pre-.NET Standard implementation of .NET. It doesn't map to a particular framework, so it versions like a package. + +**NETStandard.Library** + +[`NETStandard.Library`](https://www.nuget.org/packages/NETStandard.Library) describes the libraries that are part of the [.NET Standard](../../standard/library.md). Applies to all .NET implementations that support .NET Standard, such as .NET Framework, .NET Core, and Mono. + +### Target frameworks + +Target framework versions are updated when new APIs are added. They have no concept of patch version, since they represent API shape and not implementation concerns. Major and minor versioning follows the SemVer rules specified earlier, and coincides with the `MAJOR` and `MINOR` numbers of the .NET Core distributions that implement them. + +## Versioning in practice + +There are commits and pull requests on .NET Core repos on GitHub on a daily basis, resulting in new builds of many libraries. It isn't practical to create new public versions of .NET Core for every change. Instead, changes are aggregated over an undetermined period of time (for example, weeks or months) before making a new public stable .NET Core version. + +A new version of .NET Core could mean several things: + +- New versions of packages and metapackages. +- New versions of various frameworks, assuming the addition of new APIs. +- New version of the .NET Core distribution. \ No newline at end of file diff --git a/docs/core/versions/index.md b/docs/core/versions/index.md index 92b7dd83a473f..cb0e9cbae7247 100644 --- a/docs/core/versions/index.md +++ b/docs/core/versions/index.md @@ -7,125 +7,54 @@ ms.date: 02/13/2018 --- # .NET Core versioning -.NET Core is made of [NuGet packages](../packages.md), tools, and frameworks that are distributed as a unit. Each of these platform layers can be versioned separately, enabling better agility. While there is significant versioning flexibility in that regard, there's also a desire to version the platform as a unit to make the product easier to understand. +.NET Core refers to the .NET Core Runtime and the .NET Core SDK which contains the tools you need to develop applications. A version of the .NET Core Runtime. .NET Core SDKs are designed to work with any previous version of the .NET Core Runtime. -This article aims at clarifying how the .NET Core SDK and runtime are versioned. +This article aims at clarifying version numbers for .NET Core SDK and .NET Core Runtime. [An explanation of version numbers for .NET Standard can be found here](). -There are lots of moving parts that version independently in .NET Core. However, starting with .NET Core 2.0, there is an easy to understand top-level version number that everybody understands to be *the* version of ".NET Core" as a whole. The rest of this document goes into the details of the versioning of all those parts. These details can be important if you're a package manager, for example. - -> [!IMPORTANT] -> The versioning details explained on this topic don't apply to the current version of the .NET Core SDK and runtime. -> The version scheme is changing in future releases. You can see the current proposal at the [dotnet/designs](https://github.com/dotnet/designs/pull/29) repository. +The central problem of versioning is that the .NET Core Runtime and .NET Core SDK add new features at a different rate - in general the .NET Core SDK provides updated tools more quickly than the .NET Core Runtime changes the runtime you use in production. Unfortunately, this problem has resulted in several versioning strategies over the last few years. You can learn about the [history of .NET Core versioning here](). ## Versioning details -With .NET Core 2.0, downloads show a single version number in their file name. The following version numbers were unified: - -* The shared framework and associated runtime. -* The .NET Core SDK and associated .NET Core CLI. -* The `Microsoft.NETCore.App` metapackage. - -The use of a single version number makes it easier for users to know what version of the SDK to install on their dev machines, and what the corresponding version of the shared framework should be when time comes to provision a production environment. When downloading an SDK or runtime, the version number you see is going to be the same. - -### Version selection - -.NET Core applies a set of policies that determine which versions of the .NET Core runtime and SDK are used in various scenarios. These scenarios and policies are fully explored in the article on [version selection](selection.md). - -You can think of these policies as performing the following roles: - -* Enable easy and efficient deployment of .NET Core, including security and reliability updates. -* Enable developers to use the latest tools and commands independent of target runtime. - -### Installers - -With .NET Core 2.0, downloads for the [daily builds](https://github.com/dotnet/core-setup#daily-builds) and [releases](https://www.microsoft.com/net/download/core) adhere to a new naming scheme that is easier to understand. -The installer UI in those downloads was also modified to clearly present the names and versions of the components being installed. In particular, titles now show the same version number that is in the download's file name. +.NET Core 2.1 aligns to the .NET Core Runtime version number. .NET Core Runtime has a major/minor/patch approach to versioning that is roughly aligned with the [semantic versioning]([[Link to semantic versioning later in this doc]]). -#### File name format +The .NET Core SDK will not follow semantic versioning. Since the .NET Core SDK will release faster, we need to communicate both the aligned runtime and the communicate the SDK's own minor and patch releases. To do this, the first two positions of the .NET Core SDK is locked to the .NET Core Runtime it is released with. Each version of the SDK can create applications in this runtime or any lower version. -`[product]-[component]-[major].[minor].[patch]-[previewN]-[optional build #]-[rid].[file ext]` +The third position of the SDK version number will be used to communicate both the minor and patch number. We will do this by multiplying the minor version by 100 (starting at 100). The final two digits will be the patch number. For example, the release of .NET Core 2.2 are expected to be similar to: -Here are some examples of this format: +| Change | .NET Core Runtime | .NET Core SDK (*) | +|-----------------------|-------------------|-------------------| +| Initial release | 2.2.0 | 2.2.100 | +| SDK Patch | 2.2.0 | 2.2.101 | +| Runtime and SDK Patch | 2.2.1 | 2.2.102 | +| SDK Feature change | 2.2.1 | 2.2.200 | -``` -dotnet-runtime-2.0.4-osx.10.12-x64.pkg # Mac runtime installer -dotnet-sdk-2.0.4-win-x64.exe # Windows SDK installer -dotnet-sdk-2.0.4-linux-x64.tar.gz # Linux binary archive - -#Ubuntu file set needed for the SDK -dotnet-host-2.0.4-ubuntu.16.04-x64.deb # Host / muxer and host policy -dotnet-runtime-2.0.4-ubuntu.16.04-x64.deb # runtime -dotnet-sdk-2.0.4-ubuntu.16.04-x64.deb # SDK tools -``` - -The format is readable and clearly shows what you're downloading, what version it is, and where you can use it. The runtime package name includes `runtime`, and the SDK includes `SDK`. - -#### UI string format - -All web site descriptions and UI strings in the installers are kept consistent, accurate, and simple. The following table shows some examples: +(*) this chart uses .NET Core Runtime as the example because a historic artifact meant the first SDK for .NET Core 2.1 is 2.1.300. See the [history of .NET Core versioning here]() -| Installer | Window Title | Other content in installer | What is installed | -| :-- | :-- | :-- | :-- | -| SDK | .NET Core 2.0 SDK (x64) Installer | .NET Core 2.0.4 SDK | .NET Core 2.0.4 Tools + .NET Core 2.0.4 Runtime | -| Runtime | .NET Core 2.0 Runtime (x64) Installer | .NET Core 2.0.4 Runtime | .NET Core 2.0.4 Runtime | +NOTES: -Preview releases differ only slightly: +* If the SDK has ten feature updates before a runtime feature update we will roll into the 1000 series with numbers like 2.2.1000 as the feature release following 2.2.900. This is not expected to occur. +* 99 patch releases without a feature release will not occur. If we approach this number, we will force a feature release. -| Installer | Window Title | Other content in installer | What is installed | -| :-- | :-- | :-- | :-- | -| SDK | .NET Core 2.0 Preview 1 SDK (x64) Installer | .NET Core 2.0.0 Preview 1 SDK | .NET Core 2.0.0 Preview 1 Tools + .NET Core 2.0.0 Preview 1 Runtime | -| Runtime | .NET Core 2.0 Preview 1 Runtime (x64) Installer | .NET Core 2.0.0 Preview 1 Runtime | .NET Core 2.0.0 Preview 1 Runtime | +You can see more details in the initial proposal at the [dotnet/designs](https://github.com/dotnet/designs/pull/29) repository. -It may happen that an SDK release contains more than one version of the runtime. When that happens, the installer UX looks like the following (only the SDK version is shown and the installed Runtime versions are shown on a summary page at the end of the installation process on Windows and Mac): +## Product naming -| Installer | Window Title | Other content in installer | What is installed | -| :-- | :-- | :-- | :-- | -| SDK | .NET Core 2.1 SDK (x64) Installer | .NET Core 2.1.1 SDK
.NET Core 2.1.1 Runtime
.NET Core 2.0.6 Runtime | .NET Core 2.1.1 Tools + .NET Core 2.1.1 Runtime + .NET Core 2.0.6 Runtime | +Web site descriptions and UI strings in the installers use the .NET Core Runtime major and minor version numbers. The following table shows some examples: -It's also possible that .NET Core Tools need to be updated, without runtime changes. In that case, the SDK version is increased (for example, to 2.1.2) and then the Runtime catches up the next time it ships (for example, both the Runtime and SDK ship the next time as 2.1.3). +| Installer | Description | +|-----------------|----------------------------------------| +| SDK | .NET Core 2.1 SDK (v2.1.300) | +| Runtime | .NET Core 2.0 Runtime | +| SDK Preview | .NET Core 2.1 SDK (v2.1.300) Preview 1 | +| Runtime Preview | .NET Core 2.1 Runtime Preview 1 | -### Package managers +## Package managers .NET Core can be distributed by other entities than Microsoft. In particular, Linux distribution owners and package maintainers may add .NET Core packages to their package managers. For recommendations on how those packages should be named and versioned, see [.NET Core distribution packaging](../build/distribution-packaging.md). -#### Minimum package set - -* `dotnet-runtime-[major].[minor]`: a runtime with the specified version (only the latest patch version for a given major+minor combination should be available in the package manager). New patch versions update the package, but new minor or major versions are separate packages. - - **Dependencies**: `dotnet-host` - -* `dotnet-sdk`: the latest SDK. `update` rolls forward major, minor, and patch versions. - - **Dependencies**: the latest `dotnet-sdk-[major].[minor]`. - -* `dotnet-sdk-[major].[minor]`: the SDK with the specified version. The version specified is the highest included version of included shared frameworks, so that users can easily relate an SDK to a shared framework. New patch versions update the package, but new minor or major versions are separate packages. - - **Dependencies**: `dotnet-host`, one or more `dotnet-runtime-[major].[minor]` (one of those is used by the SDK code itself, the others are here for users to build and run against). - -* `dotnet-host`: the latest host. - -##### Preview versions - -Package maintainers may decide to include preview versions of the runtime and SDK. Don't include those preview versions in the unversioned `dotnet-sdk` package, but you can release them as versioned packages with an additional preview marker appended to the major and minor version sections of the name. For example, there may be a `dotnet-sdk-2.0-preview1-final` package. - -### Docker - -A general Docker tag naming convention is to place the version number before the component name. This convention may continue to be utilized. The current tags include only the Runtime version as follows. - -* 1.0.8-runtime -* 1.0.8-sdk -* 2.0.4-runtime -* 2.0.4-sdk -* 2.1.1-runtime -* 2.1.1-sdk - -The SDK tags should be updated to represent the SDK version rather than Runtime. - -It's also possible that the .NET Core CLI tools (included in the SDK) are fixed but reship with an existing runtime. In that case, the SDK version is increased (for example, to 2.1.2), and then the Runtime catches up the next time it ships (for example, both the Runtime and SDK ship the following time as 2.1.3). - ## Semantic Versioning -.NET Core uses [Semantic Versioning (SemVer)](http://semver.org/), adopting the use of `MAJOR.MINOR.PATCH` versioning, using the various parts of the version number to describe the degree and type of change. +.NET Core *Runtime* roughly adheres to [Semantic Versioning (SemVer)](http://semver.org/), adopting the use of `MAJOR.MINOR.PATCH` versioning, using the various parts of the version number to describe the degree and type of change. ``` MAJOR.MINOR.PATCH[-PRERELEASE-BUILDNUMBER] @@ -133,13 +62,14 @@ MAJOR.MINOR.PATCH[-PRERELEASE-BUILDNUMBER] The optional `PRERELEASE` and `BUILDNUMBER` parts are never part of supported releases and only exist on nightly builds, local builds from source targets, and unsupported preview releases. -### How version numbers are incremented? +### Guidelines for incrementing runtime version numbers `MAJOR` is incremented when: +- Significant changes occur to the product, or a new product direction. +- Breaking changes need to be taken. The bar for breaking changes will be high. - An old version is no longer supported. - A newer `MAJOR` version of an existing dependency is adopted. -- The default setting of a compatibility quirk is changed to "off." `MINOR` is incremented when: @@ -157,6 +87,10 @@ The optional `PRERELEASE` and `BUILDNUMBER` parts are never part of supported re When there are multiple changes, the highest element affected by individual changes is incremented, and the following ones are reset to zero. For example, when `MAJOR` is incremented, `MINOR` and `PATCH` are reset to zero. When `MINOR` is incremented, `PATCH` is reset to zero while `MAJOR` is left untouched. +## Version numbers in file names + +When you download .NET Core, the name of the downloaded file carries the version, for example, `dotnet-sdk-2.1.300-win10-x64.exe`. + ### Preview versions Preview versions have a `-preview[number]-([build]|"final")` appended to the version. For example, `2.0.0-preview1-final`. @@ -165,97 +99,6 @@ Preview versions have a `-preview[number]-([build]|"final")` appended to the ver After a release goes out, the release branches generally stop producing daily builds and instead start producing servicing builds. Servicing versions have a `-servicing-[number]` appended to the version. For example, `2.0.1-servicing-006924`. -### LTS vs. current - -There are two trains of releases for .NET Core: Long Term Support (LTS) and Current. That enables users to pick the level of stability and new features they want, while still being supported. - -- LTS means you get new features less frequently, but you have a more mature platform. LTS also has a longer period of support. -- Current means you get new features and APIs more frequently, but the disadvantage is that you have a shorter window of time to install updates, and those updates happen more frequently. Current is also fully supported but the support period is shorter than LTS. - -A "Current" version may get promoted to LTS. - -"LTS" and "Current" should be considered as labels that we put on specific releases to make a statement about the associated level of support. - -For more information, see [.NET Core Support Lifecycle Fact Sheet](https://www.microsoft.com/net/core/support). - -## Versioning scheme details - -.NET Core is made of the following parts: - -- A host: either *dotnet.exe* for framework-dependent applications, or *\.exe* for self-contained applications. -- An SDK (the set of tools necessary on a developer's machine, but not in production). -- A runtime. -- A shared framework implementation, distributed as packages. Each package is versioned independently, particularly for patch versioning. -- Optionally, a set of [metapackages](../packages.md) that reference fine-grained packages as a versioned unit. Metapackages can be versioned separately from packages. - -.NET Core also includes a set of target frameworks (for example, `netstandard` or `netcoreapp`) that represent a progressively larger API set, as version numbers are incremented. - -### .NET Standard - -.NET Standard has been using a `MAJOR.MINOR` versioning scheme. `PATCH` level isn't useful for .NET Standard because it expresses a set of contracts that are iterated on less often and doesn't present the same requirements for versioning as an actual implementation. - -There is no real coupling between .NET Standard versions and .NET Core versions: .NET Core 2.0 happens to implement .NET Standard 2.0, but there is no guarantee that future versions of .NET Core will map to the same .NET Standard version. .NET Core can ship APIs that aren't defined by .NET Standard, and, as such, may ship new versions without requiring a new .NET Standard. .NET Standard is also a concept that applies to other targets, such as .NET Framework or Mono, even if its inception happened to coincide with that of .NET Core. - -### Packages - -Library packages evolve and version independently. Packages that overlap with .NET Framework System.\* assemblies typically use 4.x versions, aligning with the .NET Framework 4.x versioning (a historical choice). Packages that do not overlap with the .NET Framework libraries (for example, [`System.Reflection.Metadata`](https://www.nuget.org/packages/System.Reflection.Metadata)) typically start at 1.0 and increment from there. - -The packages described by [`NETStandard.Library`](https://www.nuget.org/packages/NETStandard.Library) are treated specially due to being at the base of the platform. - -`NETStandard.Library` packages will typically version as a set, since they have implementation-level dependencies between them. - -### Metapackages - -Versioning for .NET Core metapackages is based on the .NET Core version they are a part of. - -For instance, the metapackages in .NET Core 2.1.3 should all have 2.1 as their `MAJOR` and `MINOR` version numbers. - -The patch version for the metapackage is incremented every time any referenced package is updated. Patch versions don't include an updated framework version. As a result, the metapackages aren't strictly SemVer-compliant because their versioning scheme doesn't represent the degree of change in the underlying packages, but primarily of the API level. - -There are currently two primary metapackages for .NET Core: - -**Microsoft.NETCore.App** - -- v1.0 as of .NET Core 1.0 (these versions match). -- Maps to the `netcoreapp` framework. -- Describes the packages in the .NET Core distribution. - -Note: [`Microsoft.NETCore.Portable.Compatibility`](https://www.nuget.org/packages/Microsoft.NETCore.Portable.Compatibility) is another .NET Core metapackage that exists to enable compatibility with pre-.NET Standard implementation of .NET. It doesn't map to a particular framework, so it versions like a package. - -**NETStandard.Library** - -[`NETStandard.Library`](https://www.nuget.org/packages/NETStandard.Library) describes the libraries that are part of the [.NET Standard](../../standard/library.md). Applies to all .NET implementations that support .NET Standard, such as .NET Framework, .NET Core, and Mono. - -### Target frameworks - -Target framework versions are updated when new APIs are added. They have no concept of patch version, since they represent API shape and not implementation concerns. Major and minor versioning follows the SemVer rules specified earlier, and coincides with the `MAJOR` and `MINOR` numbers of the .NET Core distributions that implement them. - -## Versioning in practice - -When you download .NET Core, the name of the downloaded file carries the version, for example, `dotnet-sdk-2.0.4-win10-x64.exe`. - -There are commits and pull requests on .NET Core repos on GitHub on a daily basis, resulting in new builds of many libraries. It isn't practical to create new public versions of .NET Core for every change. Instead, changes are aggregated over an undetermined period of time (for example, weeks or months) before making a new public stable .NET Core version. - -A new version of .NET Core could mean several things: - -- New versions of packages and metapackages. -- New versions of various frameworks, assuming the addition of new APIs. -- New version of the .NET Core distribution. - -### Shipping a patch release - -After shipping a major release of .NET Core, such as version 2.0.0, patch-level changes are made to .NET Core libraries to fix bugs and improve performance and reliability. That means that no new APIs are introduced. The various metapackages are updated to reference the updated .NET Core library packages. The metapackages are versioned as patch updates (`MAJOR.MINOR.PATCH`). Target frameworks are never updated as part of patch releases. A new .NET Core distribution is released with a version number that matches that of the `Microsoft.NETCore.App` metapackage. - -### Shipping a minor release - -After shipping a .NET Core version with an incremented `MAJOR` version number, new APIs are added to .NET Core libraries to enable new scenarios. The various metapackages are updated to reference the updated .NET Core library packages. The metapackages are versioned as patch updates with `MAJOR` and `MINOR` version numbers matching the new framework version. New target framework names with the new `MAJOR.MINOR` version are added to describe the new APIs (for example, `netcoreapp2.1`). A new .NET Core distribution is released with a matching version number to the `Microsoft.NETCore.App` metapackage. - -### Shipping a major release - -Every time a new major version of .NET Core ships, the `MAJOR` version number gets incremented, and the `MINOR` version number gets reset to zero. The new major version contains at least all the APIs that were added by minor releases after the previous major version. A new major version should enable important new scenarios, and it may also drop support for an older platform. - -The various metapackages are updated to reference the updated .NET Core library packages. The [`Microsoft.NETCore.App`](https://www.nuget.org/packages/Microsoft.NETCore.App) metapackage and the `netcore` target framework are versioned as a major update matching the `MAJOR` version number of the new release. - ## See also [Target frameworks](../../standard/frameworks.md) diff --git a/docs/core/versions/lts-current.md b/docs/core/versions/lts-current.md new file mode 100644 index 0000000000000..c38e5fedd0005 --- /dev/null +++ b/docs/core/versions/lts-current.md @@ -0,0 +1,48 @@ +--- +title: .NET Core Support +description: Learn about the different release train supports (LTS and Current) for .NET Core +author: kendrahavens +ms.author: mairaw +ms.date: 01/30/2017 +--- +# .NET Core Support + +This is a general description of .NET Core support. + +## LTS and Current Release Trains + +There are two trains of releases for .NET Core: Long Term Support (LTS) and Current. That enables users to pick the level of stability and new features they want, while still being supported. + +Having two support release trains is a common concept in use throughout the software world, specially for open-source projects like .NET Core. .NET Core has the following support release trains: [Long Term Support (LTS)](https://en.wikipedia.org/wiki/Long-term_support) and Current. LTS releases are maintained for stability over their lifecycle, receiving fixes for important issues and security fixes. New feature work and additional bug fixes take place in Current releases. + +- LTS means you get new features less frequently, but you have a more mature platform. LTS also has a longer period of support. +- Current means you get new features and APIs more frequently, but the disadvantage is that you have a shorter window of time to install updates, and those updates happen more frequently. Current is also fully supported but the support period is shorter than LTS. + +A "Current" version may get promoted to LTS. + +"LTS" and "Current" should be considered as labels that we put on specific releases to make a statement about the associated level of support. + +For more information, see [.NET Core Support Lifecycle Fact Sheet](https://www.microsoft.com/net/core/support). + +## Support timeframes + +From a support perspective, these release trains have the following support lifecycle attributes. + +LTS releases are +* Supported for three years after the general availability date of a LTS release +* Or one year after the general availability of a subsequent LTS release + +Current releases are +* Supported within the same three-year window as the parent LTS release +* Supported for three months after the general availability of a subsequent Current release +* And one year after the general availability of a subsequent LTS release + +## Versioning +New LTS releases are marked by an increase in the Major version number. Current releases have the same Major number as the corresponding LTS train and are marked by an increase in the Minor version number. For example, 1.0.3 would be LTS and 1.1.0 would be Current. Bug fix updates to either train increment the Patch version. For more information on the versioning scheme, see [.NET Core Versioning](index.md). + +## What causes updates in LTS and Current trains? +To understand what specific changes, such as bug fixes or the addition of APIs, cause updates to the version numbers review the Decision Tree section in the [Versioning Documentation](index.md). There is not a golden set of rules that decide what changes are pulled into the LTS branch from Current. Typically, necessary security updates and patches that fix expected behaviour are reasons to update the LTS branch. We also intend to support recent desktop developer operating systems on the LTS branch, though this may not always be possible. A good way to catch up on what APIs, fixes, and operating systems are supported in a certain release is to browse its [release notes](https://github.com/dotnet/core/tree/master/release-notes) on GitHub. + +### Further Reading +* [.NET Core Support Lifecycle Fact Sheet](https://www.microsoft.com/net/core/support) +* [Currently supported operating systems and versions](https://github.com/dotnet/core/blob/master/roadmap.md) diff --git a/docs/core/versions/version-history.md b/docs/core/versions/version-history.md new file mode 100644 index 0000000000000..f38a88fb5ebfd --- /dev/null +++ b/docs/core/versions/version-history.md @@ -0,0 +1,47 @@ +--- +Your magic stuff +--- + +# NET Core version history + +Version numbers for the .NET Core are challenging because .NET Core SDK and .NET Core Runtime release on different cadences. Because of this, we can do only two of the following three things: + +1. Release independently, specifically allowing tools, C# and VB to advance faster than the .NET Core Runtime. +2. Maintain alignment in version numbers between .NET Core SDK and .NET Core Runtime. +3. Use semantic versioning for both the .NET Core SDK and .NET Core Runtime. + +2.0.0 forced version alignment and this proceeded smoothly for one release. In December 2017 .NET Core SDK had a feature release, with no corresponding release in the .NET Core Runtime. The team chose goals 1 and 3, losing alignment between the .NET Core Runtime and SDK and resulted in a several .NET Core SDK 2.1.x versions that were released before .NET Core Runtime 2.1. Since the SDK is not forwards compatible, these 2.1.x SDK versions could not target .NET Core Runtime 2.1. The team responded to the considerable confusion this caused by switching to goals 1 and 2, abandoning semantic versioning as described in [.NET Core versioning]([[ index.md]]). + +Because the timing of the decision to abandon semantic versioning was made between , there were transitional releases in the 2.1.10x and 2.1.20x version number ranges that can also not target .NET Core Runtime 2.1. + +The first two digits of the version numbers realign with the 2.1.0 version of the .NET Core Runtime and the 2.1.300 version of the .NET Core SDK. + +Evaluating [releases.json](https://github.com/dotnet/core/blob/master/release-notes/releases.json) yields the following. [[Who can help fill in the missing C# versions?]] + +| Date | .NET Core SDK(4) | .NET Core Runtimes | Contains C# | Contains VB | Notes | +|------------|------------------|--------------------|-------------|-------------|-------| +| 2017-03-07 | 1.0.1 | 1.0.4,1.1.1 | 7.0 | 15.0 | | +| 2017-05-09 | 1.0.4 | 1.0.5, 1.1.2 | | | | +| 2017-09-21 | 1.1.4 | 1.0.7, 1.1.4 | | | | +| 2017-11-14 | 1.1.7 | 1.0.8, 1.1.5 | | | | +| 2017-11-14 | 1.1.7 | 1.0.9, 1.1.6 | | | | +| 2018-03-13 | 1.1.8 | 1.0.10, 1.1.7 | | | | +| 2018-04-17 | 1.1.9 | 1.0.11, 1.1.8 | | | | +| 2017-08-14 | 2.0.0 | 2.0.0 | 7.1 | | | +| 2017-11-14 | 2.0.3 | 2.0.3 | 7.1 | 15.1 | | +| 2017-12-04 | 2.1.2 | 2.0.3 | 7.1 | 15.1 | (1) | +| 2018-01-09 | 2.1.4 | 2.0.5 | 7.1 | 15.1 | (1) | +| 2018-03-13 | 2.1.100 | 2.0.5 | 7.2 | 15.2 | (1,2) | +| 2018-03-13 | 2.1.101 | 2.0.6 | 7.2 | 15.2 | (1,2) | +| 2018-03-19 | 2.1.102 | 2.0.6 | 7.2 | 15.2 | (1,2) | +| 2018-03-22 | 2.1.103 | 2.0.6 | 7.2 | 15.2 | (1,2) | +| 2018-04-04 | 2.1.104 | 2.0.6 | 7.2 | 15.2 | (1,2) | +| 2018-04-27 | 2.1.105 | 2.0.7 | 7.2 | 15.2 | (1,2) | +| 2018-05-08 | 2.1.200 | 2.0.8 | 7.2 | 15.2 | (1,2) | +| 2018-05-21 | 2.1.201 | 2.0.8 | 7.2 | 15.2 | (1,2) | +| 2018-05-30 | 2.1.300 | 2.1.0 | 7.3 | 15.3 | (3) | + +(1) These versions of .NET Core SDK 2.1.x cannot build apps targeting .NET Core Runtime 2.1.x +(2) The new version number scheme was decided at the start of 2018. However, there were two feature level releases before .NET Core Runtime 2.10 released. Thus, 2.1.10x and 2.20x represent a transition period. +(3) The .NET Core 2.1 release represents unification of version numbers on the new scheme +(4) A nightly build of the .NET Core SDK appeared with the version number starting with 15. This must be manually removed from the machine. \ No newline at end of file diff --git a/docs/core/versions/versioning-docker.md b/docs/core/versions/versioning-docker.md new file mode 100644 index 0000000000000..4d38f75d11f63 --- /dev/null +++ b/docs/core/versions/versioning-docker.md @@ -0,0 +1,15 @@ + +### Docker + +A general Docker tag naming convention is to place the version number before the component name. This convention may continue to be utilized. The current tags include only the Runtime version as follows. + +* 1.0.8-runtime +* 1.0.8-sdk +* 2.0.4-runtime +* 2.0.4-sdk +* 2.1.1-runtime +* 2.1.1-sdk + +The SDK tags should be updated to represent the SDK version rather than Runtime. + +It's also possible that the .NET Core CLI tools (included in the SDK) are fixed but reship with an existing runtime. In that case, the SDK version is increased (for example, to 2.1.2), and then the Runtime catches up the next time it ships (for example, both the Runtime and SDK ship the following time as 2.1.3). \ No newline at end of file diff --git a/docs/core/versions/versioning-for-packages.md b/docs/core/versions/versioning-for-packages.md new file mode 100644 index 0000000000000..e70574939f1ad --- /dev/null +++ b/docs/core/versions/versioning-for-packages.md @@ -0,0 +1,19 @@ +#### Minimum package set + +* `dotnet-runtime-[major].[minor]`: a runtime with the specified version (only the latest patch version for a given major+minor combination should be available in the package manager). New patch versions update the package, but new minor or major versions are separate packages. + + **Dependencies**: `dotnet-host` + +* `dotnet-sdk`: the latest SDK. `update` rolls forward major, minor, and patch versions. + + **Dependencies**: the latest `dotnet-sdk-[major].[minor]`. + +* `dotnet-sdk-[major].[minor]`: the SDK with the specified version. The version specified is the highest included version of included shared frameworks, so that users can easily relate an SDK to a shared framework. New patch versions update the package, but new minor or major versions are separate packages. + + **Dependencies**: `dotnet-host`, one or more `dotnet-runtime-[major].[minor]` (one of those is used by the SDK code itself, the others are here for users to build and run against). + +* `dotnet-host`: the latest host. + +##### Preview versions + +Package maintainers may decide to include preview versions of the runtime and SDK. Don't include those preview versions in the unversioned `dotnet-sdk` package, but you can release them as versioned packages with an additional preview marker appended to the major and minor version sections of the name. For example, there may be a `dotnet-sdk-2.0-preview1-final` package. diff --git a/docs/core/versions/versioning-standard.md b/docs/core/versions/versioning-standard.md new file mode 100644 index 0000000000000..011b22d873e0b --- /dev/null +++ b/docs/core/versions/versioning-standard.md @@ -0,0 +1,21 @@ +--- +Your magic stuff +--- + +# Versioning .NET Standard + +.NET Standard consists of a reference library and implementations specific to each platform. The reference library contains the definition of .NET Standard. Each implementation fulfills the .NET Standard contract on the specific platform. .NET Standard usually refers to the reference library, and the implementation is detail of the corresponding runtime. + +The .NET Standard reference implementation uses a `MAJOR.MINOR` versioning scheme. `PATCH` level isn't useful for .NET Standard because if exposes only an API (no implementation) and by definition any change to the API would represent a change in the feature set, and thus a minor version bump. + +The implementations on each runtime may version, but this would normally be part of the runtime release, and thus not evident to the programmers using .NET Standard on that platform. + +There is no real coupling between .NET Standard versions and .NET Core versions: .NET Core 2.0 happens to implement .NET Standard 2.0, but .NET Core 2.1 also implements .NET Standard 2.0. .NET Core will ship new APIs not yet included in .NET Standard. .NET Standard is also a concept that applies to other targets, such as .NET Framework or Mono, even if its inception happened to coincide with that of .NET Core. If .NET Standard 2.1 ships, .NET Core 2.1 will not support it. + +| .NET Core | .NET Standard | +|-----------|---------------| +| 1.0 | up to 1.6 | +| 2.0 | up to 2.0 | +| 2.1 | up to 2.1 | + +## See also From bda6bae0ee7457bdcd8747baaf8f704d9fb546ea Mon Sep 17 00:00:00 2001 From: Bill Wagner Date: Fri, 13 Jul 2018 12:33:35 -0400 Subject: [PATCH 02/17] update per feedback on PR #6081 Moving those changes to a new branch and PR. --- docs/core/tutorials/metapackages.md | 2 +- docs/core/versions/_trash.md | 2 +- docs/core/versions/version-history.md | 40 +++++++++++------------ docs/core/versions/versioning-standard.md | 6 ++-- 4 files changed, 25 insertions(+), 25 deletions(-) diff --git a/docs/core/tutorials/metapackages.md b/docs/core/tutorials/metapackages.md index 3e9f311a8da4f..5bd04fd3a1270 100644 --- a/docs/core/tutorials/metapackages.md +++ b/docs/core/tutorials/metapackages.md @@ -1,7 +1,7 @@ ### Shipping a patch release -After shipping a major release of .NET Core, such as version 2.0.0, patch-level changes are made to .NET Core libraries to fix bugs and improve performance and reliability. That means that no new APIs are introduced. The various metapackages are updated to reference the updated .NET Core library packages. The metapackages are versioned as patch updates (`MAJOR.MINOR.PATCH`). Target frameworks are never updated as part of patch releases. A new .NET Core distribution is released with a version number that matches that of the `Microsoft.NETCore.App` metapackage. +After shipping a major or minor release of .NET Core, such as version 2.0.0, patch-level changes are made to .NET Core libraries to fix bugs and improve performance and reliability. That means that no new APIs are introduced. The various metapackages are updated to reference the updated .NET Core library packages. The metapackages are versioned as patch updates (`MAJOR.MINOR.PATCH`). Target frameworks are never updated as part of patch releases. A new .NET Core distribution is released with a version number that matches that of the `Microsoft.NETCore.App` metapackage. ### Shipping a minor release diff --git a/docs/core/versions/_trash.md b/docs/core/versions/_trash.md index 9df375e96717e..d0ca0b5633d9f 100644 --- a/docs/core/versions/_trash.md +++ b/docs/core/versions/_trash.md @@ -42,7 +42,7 @@ Note: [`Microsoft.NETCore.Portable.Compatibility`](https://www.nuget.org/package ### Target frameworks -Target framework versions are updated when new APIs are added. They have no concept of patch version, since they represent API shape and not implementation concerns. Major and minor versioning follows the SemVer rules specified earlier, and coincides with the `MAJOR` and `MINOR` numbers of the .NET Core distributions that implement them. +Target framework versions are updated when new APIs are added. They have no concept of patch version, since they represent API shape and not implementation concerns. Major and minor versioning follows the SemVer rules specified earlier, and coincides with the `MAJOR` and `MINOR` numbers of the .NET Core distributions that implement them or the .NET Standard version that defines them. ## Versioning in practice diff --git a/docs/core/versions/version-history.md b/docs/core/versions/version-history.md index f38a88fb5ebfd..67f990a6866cb 100644 --- a/docs/core/versions/version-history.md +++ b/docs/core/versions/version-history.md @@ -12,7 +12,7 @@ Version numbers for the .NET Core are challenging because .NET Core SDK and .NET 2.0.0 forced version alignment and this proceeded smoothly for one release. In December 2017 .NET Core SDK had a feature release, with no corresponding release in the .NET Core Runtime. The team chose goals 1 and 3, losing alignment between the .NET Core Runtime and SDK and resulted in a several .NET Core SDK 2.1.x versions that were released before .NET Core Runtime 2.1. Since the SDK is not forwards compatible, these 2.1.x SDK versions could not target .NET Core Runtime 2.1. The team responded to the considerable confusion this caused by switching to goals 1 and 2, abandoning semantic versioning as described in [.NET Core versioning]([[ index.md]]). -Because the timing of the decision to abandon semantic versioning was made between , there were transitional releases in the 2.1.10x and 2.1.20x version number ranges that can also not target .NET Core Runtime 2.1. +Because the timing of the decision to abandon semantic versioning, there were transitional releases in the 2.1.10x and 2.1.20x version number ranges that can also not target .NET Core Runtime 2.1. The first two digits of the version numbers realign with the 2.1.0 version of the .NET Core Runtime and the 2.1.300 version of the .NET Core SDK. @@ -21,25 +21,25 @@ Evaluating [releases.json](https://github.com/dotnet/core/blob/master/release-no | Date | .NET Core SDK(4) | .NET Core Runtimes | Contains C# | Contains VB | Notes | |------------|------------------|--------------------|-------------|-------------|-------| | 2017-03-07 | 1.0.1 | 1.0.4,1.1.1 | 7.0 | 15.0 | | -| 2017-05-09 | 1.0.4 | 1.0.5, 1.1.2 | | | | -| 2017-09-21 | 1.1.4 | 1.0.7, 1.1.4 | | | | -| 2017-11-14 | 1.1.7 | 1.0.8, 1.1.5 | | | | -| 2017-11-14 | 1.1.7 | 1.0.9, 1.1.6 | | | | -| 2018-03-13 | 1.1.8 | 1.0.10, 1.1.7 | | | | -| 2018-04-17 | 1.1.9 | 1.0.11, 1.1.8 | | | | -| 2017-08-14 | 2.0.0 | 2.0.0 | 7.1 | | | -| 2017-11-14 | 2.0.3 | 2.0.3 | 7.1 | 15.1 | | -| 2017-12-04 | 2.1.2 | 2.0.3 | 7.1 | 15.1 | (1) | -| 2018-01-09 | 2.1.4 | 2.0.5 | 7.1 | 15.1 | (1) | -| 2018-03-13 | 2.1.100 | 2.0.5 | 7.2 | 15.2 | (1,2) | -| 2018-03-13 | 2.1.101 | 2.0.6 | 7.2 | 15.2 | (1,2) | -| 2018-03-19 | 2.1.102 | 2.0.6 | 7.2 | 15.2 | (1,2) | -| 2018-03-22 | 2.1.103 | 2.0.6 | 7.2 | 15.2 | (1,2) | -| 2018-04-04 | 2.1.104 | 2.0.6 | 7.2 | 15.2 | (1,2) | -| 2018-04-27 | 2.1.105 | 2.0.7 | 7.2 | 15.2 | (1,2) | -| 2018-05-08 | 2.1.200 | 2.0.8 | 7.2 | 15.2 | (1,2) | -| 2018-05-21 | 2.1.201 | 2.0.8 | 7.2 | 15.2 | (1,2) | -| 2018-05-30 | 2.1.300 | 2.1.0 | 7.3 | 15.3 | (3) | +| 2017-05-09 | 1.0.4 | 1.0.5, 1.1.2 | 7.0 | 15.0 | | +| 2017-09-21 | 1.1.4 | 1.0.7, 1.1.4 | 7.0 | 15.0 | | +| 2017-11-14 | 1.1.7 | 1.0.8, 1.1.5 | 7.0 | 15.0 | | +| 2017-11-14 | 1.1.7 | 1.0.9, 1.1.6 | 7.0 | 15.0 | | +| 2018-03-13 | 1.1.8 | 1.0.10, 1.1.7 | 7.0 | 15.0 | | +| 2018-04-17 | 1.1.9 | 1.0.11, 1.1.8 | 7.0 | 15.0 | | +| 2017-08-14 | 2.0.0 | 2.0.0 | 7.1 | 15.3 | | +| 2017-11-14 | 2.0.3 | 2.0.3 | 7.1 | 15.3 | | +| 2017-12-04 | 2.1.2 | 2.0.3 | 7.1 | 15.3 | (1) | +| 2018-01-09 | 2.1.4 | 2.0.5 | 7.1 | 15.3 | (1) | +| 2018-03-13 | 2.1.100 | 2.0.5 | 7.2 | 15.5 | (1,2) | +| 2018-03-13 | 2.1.101 | 2.0.6 | 7.2 | 15.5 | (1,2) | +| 2018-03-19 | 2.1.102 | 2.0.6 | 7.2 | 15.5 | (1,2) | +| 2018-03-22 | 2.1.103 | 2.0.6 | 7.2 | 15.5 | (1,2) | +| 2018-04-04 | 2.1.104 | 2.0.6 | 7.2 | 15.5 | (1,2) | +| 2018-04-27 | 2.1.105 | 2.0.7 | 7.2 | 15.5 | (1,2) | +| 2018-05-08 | 2.1.200 | 2.0.8 | 7.2 | 15.5 | (1,2) | +| 2018-05-21 | 2.1.201 | 2.0.8 | 7.2 | 15.5 | (1,2) | +| 2018-05-30 | 2.1.300 | 2.1.0 | 7.3 | 15.5 | (3) | (1) These versions of .NET Core SDK 2.1.x cannot build apps targeting .NET Core Runtime 2.1.x (2) The new version number scheme was decided at the start of 2018. However, there were two feature level releases before .NET Core Runtime 2.10 released. Thus, 2.1.10x and 2.20x represent a transition period. diff --git a/docs/core/versions/versioning-standard.md b/docs/core/versions/versioning-standard.md index 011b22d873e0b..35deb042cb081 100644 --- a/docs/core/versions/versioning-standard.md +++ b/docs/core/versions/versioning-standard.md @@ -4,18 +4,18 @@ Your magic stuff # Versioning .NET Standard -.NET Standard consists of a reference library and implementations specific to each platform. The reference library contains the definition of .NET Standard. Each implementation fulfills the .NET Standard contract on the specific platform. .NET Standard usually refers to the reference library, and the implementation is detail of the corresponding runtime. +.NET Standard consists of a .net reference assembly and implementations specific to each platform. The reference assembly contains the definition of .NET Standard. Each implementation fulfills the .NET Standard contract on the specific platform. .NET Standard usually refers to the reference library, and the implementation is detail of the corresponding runtime. The .NET Standard reference implementation uses a `MAJOR.MINOR` versioning scheme. `PATCH` level isn't useful for .NET Standard because if exposes only an API (no implementation) and by definition any change to the API would represent a change in the feature set, and thus a minor version bump. The implementations on each runtime may version, but this would normally be part of the runtime release, and thus not evident to the programmers using .NET Standard on that platform. -There is no real coupling between .NET Standard versions and .NET Core versions: .NET Core 2.0 happens to implement .NET Standard 2.0, but .NET Core 2.1 also implements .NET Standard 2.0. .NET Core will ship new APIs not yet included in .NET Standard. .NET Standard is also a concept that applies to other targets, such as .NET Framework or Mono, even if its inception happened to coincide with that of .NET Core. If .NET Standard 2.1 ships, .NET Core 2.1 will not support it. +Each version of .NET Core implements a version of .NET standard. .NET Standard and .NET Core version independently. It's a coincidence that .NET Core 2.0 implements .NET Standard 2.0. .NET Core 2.1 also implements .NET Standard 2.0. .NET Core will support future versions of .NET Standard as they become available. | .NET Core | .NET Standard | |-----------|---------------| | 1.0 | up to 1.6 | | 2.0 | up to 2.0 | -| 2.1 | up to 2.1 | +| 2.1 | up to 2.0 | ## See also From 962ed861281d8c7962fe1f966c747ba6216f4a7f Mon Sep 17 00:00:00 2001 From: Bill Wagner Date: Wed, 25 Jul 2018 15:44:54 -0400 Subject: [PATCH 03/17] interim checkin switching branches --- docs/core/versions/index.md | 4 ++++ docs/core/versions/version-history.md | 9 ++++++++- docs/core/versions/versioning-docker.md | 15 --------------- 3 files changed, 12 insertions(+), 16 deletions(-) delete mode 100644 docs/core/versions/versioning-docker.md diff --git a/docs/core/versions/index.md b/docs/core/versions/index.md index cb0e9cbae7247..aa2b2db3e95ac 100644 --- a/docs/core/versions/index.md +++ b/docs/core/versions/index.md @@ -105,3 +105,7 @@ After a release goes out, the release branches generally stop producing daily bu [.NET Core distribution packaging](../build/distribution-packaging.md) [.NET Core Support Lifecycle Fact Sheet](https://www.microsoft.com/net/core/support) [.NET Core 2+ Version Binding](https://github.com/dotnet/designs/issues/3) + +Link here for docker versions: https://hub.docker.com/r/microsoft/dotnet/ + + diff --git a/docs/core/versions/version-history.md b/docs/core/versions/version-history.md index 67f990a6866cb..7e157d160feb2 100644 --- a/docs/core/versions/version-history.md +++ b/docs/core/versions/version-history.md @@ -10,7 +10,7 @@ Version numbers for the .NET Core are challenging because .NET Core SDK and .NET 2. Maintain alignment in version numbers between .NET Core SDK and .NET Core Runtime. 3. Use semantic versioning for both the .NET Core SDK and .NET Core Runtime. -2.0.0 forced version alignment and this proceeded smoothly for one release. In December 2017 .NET Core SDK had a feature release, with no corresponding release in the .NET Core Runtime. The team chose goals 1 and 3, losing alignment between the .NET Core Runtime and SDK and resulted in a several .NET Core SDK 2.1.x versions that were released before .NET Core Runtime 2.1. Since the SDK is not forwards compatible, these 2.1.x SDK versions could not target .NET Core Runtime 2.1. The team responded to the considerable confusion this caused by switching to goals 1 and 2, abandoning semantic versioning as described in [.NET Core versioning]([[ index.md]]). +2.0.0 forced version alignment and this proceeded smoothly for one release. In December 2017 .NET Core SDK had a feature release, with no corresponding release in the .NET Core Runtime. The team chose goals 1 and 3, losing alignment between the .NET Core Runtime and SDK and resulted in a several .NET Core SDK 2.1.x versions that were released before .NET Core Runtime 2.1. Since the SDK is not forwards compatible, these 2.1.x SDK versions could not target .NET Core Runtime 2.1. The team responded to the considerable confusion this caused by switching to goals 1 and 2, abandoning semantic versioning as described in [.NET Core versioning](index.md). Because the timing of the decision to abandon semantic versioning, there were transitional releases in the 2.1.10x and 2.1.20x version number ranges that can also not target .NET Core Runtime 2.1. @@ -18,6 +18,13 @@ The first two digits of the version numbers realign with the 2.1.0 version of th Evaluating [releases.json](https://github.com/dotnet/core/blob/master/release-notes/releases.json) yields the following. [[Who can help fill in the missing C# versions?]] +<< this table should include LTS. Check with Lee Coward >> +.. Add releases on June 19 and July 10. +.. Add a column for ASP.NET Core Runtime +.. Ask Phillip about F# column +.. Footnote for VB versions aligning to Visauls Studio + + | Date | .NET Core SDK(4) | .NET Core Runtimes | Contains C# | Contains VB | Notes | |------------|------------------|--------------------|-------------|-------------|-------| | 2017-03-07 | 1.0.1 | 1.0.4,1.1.1 | 7.0 | 15.0 | | diff --git a/docs/core/versions/versioning-docker.md b/docs/core/versions/versioning-docker.md deleted file mode 100644 index 4d38f75d11f63..0000000000000 --- a/docs/core/versions/versioning-docker.md +++ /dev/null @@ -1,15 +0,0 @@ - -### Docker - -A general Docker tag naming convention is to place the version number before the component name. This convention may continue to be utilized. The current tags include only the Runtime version as follows. - -* 1.0.8-runtime -* 1.0.8-sdk -* 2.0.4-runtime -* 2.0.4-sdk -* 2.1.1-runtime -* 2.1.1-sdk - -The SDK tags should be updated to represent the SDK version rather than Runtime. - -It's also possible that the .NET Core CLI tools (included in the SDK) are fixed but reship with an existing runtime. In that case, the SDK version is increased (for example, to 2.1.2), and then the Runtime catches up the next time it ships (for example, both the Runtime and SDK ship the following time as 2.1.3). \ No newline at end of file From 56f9936a2f606b9cf8864d6deca6bea8a26bfdc2 Mon Sep 17 00:00:00 2001 From: Bill Wagner Date: Thu, 26 Jul 2018 17:13:37 -0400 Subject: [PATCH 04/17] Next draft Remaining tasks: - [ ] Finish table in version-history - [ ] write uinstall instructions, and guidance on which versions you need - [ ] update LTS information --- docs/core/versions/_trash.md | 55 ------------ docs/core/versions/index.md | 90 +++++++++---------- docs/core/versions/lts-current.md | 2 + docs/core/versions/selection.md | 10 +-- docs/core/versions/version-history.md | 35 ++++---- docs/core/versions/versioning-for-packages.md | 19 ---- docs/core/versions/versioning-standard.md | 21 ----- docs/toc.md | 2 + 8 files changed, 72 insertions(+), 162 deletions(-) delete mode 100644 docs/core/versions/_trash.md delete mode 100644 docs/core/versions/versioning-for-packages.md delete mode 100644 docs/core/versions/versioning-standard.md diff --git a/docs/core/versions/_trash.md b/docs/core/versions/_trash.md deleted file mode 100644 index d0ca0b5633d9f..0000000000000 --- a/docs/core/versions/_trash.md +++ /dev/null @@ -1,55 +0,0 @@ -## Versioning scheme details - -.NET Core is made of the following parts: - -- A host: either *dotnet.exe* for framework-dependent applications, or *\.exe* for self-contained applications. -- An SDK (the set of tools necessary on a developer's machine, but not in production). -- A runtime. -- A shared framework implementation, distributed as packages. Each package is versioned independently, particularly for patch versioning. -- Optionally, a set of [metapackages](../packages.md) that reference fine-grained packages as a versioned unit. Metapackages can be versioned separately from packages. - -.NET Core also includes a set of target frameworks (for example, `netstandard` or `netcoreapp`) that represent a progressively larger API set, as version numbers are incremented. - -### Packages - -Library packages evolve and version independently. Packages that overlap with .NET Framework System.\* assemblies typically use 4.x versions, aligning with the .NET Framework 4.x versioning (a historical choice). Packages that do not overlap with the .NET Framework libraries (for example, [`System.Reflection.Metadata`](https://www.nuget.org/packages/System.Reflection.Metadata)) typically start at 1.0 and increment from there. - -The packages described by [`NETStandard.Library`](https://www.nuget.org/packages/NETStandard.Library) are treated specially due to being at the base of the platform. - -`NETStandard.Library` packages will typically version as a set, since they have implementation-level dependencies between them. - -### Metapackages - -Versioning for .NET Core metapackages is based on the .NET Core version they are a part of. - -For instance, the metapackages in .NET Core 2.1.3 should all have 2.1 as their `MAJOR` and `MINOR` version numbers. - -The patch version for the metapackage is incremented every time any referenced package is updated. Patch versions don't include an updated framework version. As a result, the metapackages aren't strictly SemVer-compliant because their versioning scheme doesn't represent the degree of change in the underlying packages, but primarily of the API level. - -There are currently two primary metapackages for .NET Core: - -**Microsoft.NETCore.App** - -- v1.0 as of .NET Core 1.0 (these versions match). -- Maps to the `netcoreapp` framework. -- Describes the packages in the .NET Core distribution. - -Note: [`Microsoft.NETCore.Portable.Compatibility`](https://www.nuget.org/packages/Microsoft.NETCore.Portable.Compatibility) is another .NET Core metapackage that exists to enable compatibility with pre-.NET Standard implementation of .NET. It doesn't map to a particular framework, so it versions like a package. - -**NETStandard.Library** - -[`NETStandard.Library`](https://www.nuget.org/packages/NETStandard.Library) describes the libraries that are part of the [.NET Standard](../../standard/library.md). Applies to all .NET implementations that support .NET Standard, such as .NET Framework, .NET Core, and Mono. - -### Target frameworks - -Target framework versions are updated when new APIs are added. They have no concept of patch version, since they represent API shape and not implementation concerns. Major and minor versioning follows the SemVer rules specified earlier, and coincides with the `MAJOR` and `MINOR` numbers of the .NET Core distributions that implement them or the .NET Standard version that defines them. - -## Versioning in practice - -There are commits and pull requests on .NET Core repos on GitHub on a daily basis, resulting in new builds of many libraries. It isn't practical to create new public versions of .NET Core for every change. Instead, changes are aggregated over an undetermined period of time (for example, weeks or months) before making a new public stable .NET Core version. - -A new version of .NET Core could mean several things: - -- New versions of packages and metapackages. -- New versions of various frameworks, assuming the addition of new APIs. -- New version of the .NET Core distribution. \ No newline at end of file diff --git a/docs/core/versions/index.md b/docs/core/versions/index.md index aa2b2db3e95ac..976e23c970fde 100644 --- a/docs/core/versions/index.md +++ b/docs/core/versions/index.md @@ -3,23 +3,21 @@ title: .NET Core versioning description: Understand how .NET Core versioning works. author: bleroy ms.author: mairaw -ms.date: 02/13/2018 +ms.date: 07/26/2018 --- # .NET Core versioning -.NET Core refers to the .NET Core Runtime and the .NET Core SDK which contains the tools you need to develop applications. A version of the .NET Core Runtime. .NET Core SDKs are designed to work with any previous version of the .NET Core Runtime. +.NET Core refers to the .NET Core Runtime and the .NET Core SDK that contains the tools you need to develop applications. .NET Core SDKs are designed to work with any previous version of the .NET Core Runtime. This article explains the runtime and the SDK version strategy. An explanation of version numbers for .NET Standard can be found in the article introducing [.NET Standard](../standard/net-standard.md#net-implementation-support). -This article aims at clarifying version numbers for .NET Core SDK and .NET Core Runtime. [An explanation of version numbers for .NET Standard can be found here](). - -The central problem of versioning is that the .NET Core Runtime and .NET Core SDK add new features at a different rate - in general the .NET Core SDK provides updated tools more quickly than the .NET Core Runtime changes the runtime you use in production. Unfortunately, this problem has resulted in several versioning strategies over the last few years. You can learn about the [history of .NET Core versioning here](). +The .NET Core Runtime and .NET Core SDK add new features at a different rate - in general the .NET Core SDK provides updated tools more quickly than the .NET Core Runtime changes the runtime you use in production. Unfortunately, this problem has resulted in several versioning strategies over the last few years. You can learn about the history in the article on [.NET Core versioning](version-history.md). ## Versioning details -.NET Core 2.1 aligns to the .NET Core Runtime version number. .NET Core Runtime has a major/minor/patch approach to versioning that is roughly aligned with the [semantic versioning]([[Link to semantic versioning later in this doc]]). +".NET Core 2.1" refers to the .NET Core Runtime version number. The .NET Core Runtime has a major/minor/patch approach to versioning that follows [semantic versioning](#semantic-versioning). -The .NET Core SDK will not follow semantic versioning. Since the .NET Core SDK will release faster, we need to communicate both the aligned runtime and the communicate the SDK's own minor and patch releases. To do this, the first two positions of the .NET Core SDK is locked to the .NET Core Runtime it is released with. Each version of the SDK can create applications in this runtime or any lower version. +The .NET Core SDK does not follow semantic versioning. The .NET Core SDK releases faster and its versions, must communicate both the aligned runtime and the SDK's own minor and patch releases. The first two positions of the .NET Core SDK version are locked to the .NET Core Runtime it released with. Each version of the SDK can create applications for this runtime or any lower version. -The third position of the SDK version number will be used to communicate both the minor and patch number. We will do this by multiplying the minor version by 100 (starting at 100). The final two digits will be the patch number. For example, the release of .NET Core 2.2 are expected to be similar to: +The third position of the SDK version number communicates both the minor and patch number. The minor version is multiplied by 100 (starting at 100). The final two digits represent the patch number. For example, the release of .NET Core 2.2 may create releases like the following table: | Change | .NET Core Runtime | .NET Core SDK (*) | |-----------------------|-------------------|-------------------| @@ -28,33 +26,18 @@ The third position of the SDK version number will be used to communicate both th | Runtime and SDK Patch | 2.2.1 | 2.2.102 | | SDK Feature change | 2.2.1 | 2.2.200 | -(*) this chart uses .NET Core Runtime as the example because a historic artifact meant the first SDK for .NET Core 2.1 is 2.1.300. See the [history of .NET Core versioning here]() +(*) This chart uses a future 2.2 .NET Core Runtime as the example because a historic artifact meant the first SDK for .NET Core 2.1 is 2.1.300. For more information, See the [history of .NET Core versioning](version-history.md). -NOTES: +NOTES: -* If the SDK has ten feature updates before a runtime feature update we will roll into the 1000 series with numbers like 2.2.1000 as the feature release following 2.2.900. This is not expected to occur. -* 99 patch releases without a feature release will not occur. If we approach this number, we will force a feature release. +* If the SDK has 10 feature updates before a runtime feature update, version numbers roll into the 1000 series with numbers like 2.2.1000 as the feature release following 2.2.900. This situation is not expected to occur. +* 99 patch releases without a feature release will not occur. If a release approaches this number, it forces a feature release. You can see more details in the initial proposal at the [dotnet/designs](https://github.com/dotnet/designs/pull/29) repository. -## Product naming - -Web site descriptions and UI strings in the installers use the .NET Core Runtime major and minor version numbers. The following table shows some examples: - -| Installer | Description | -|-----------------|----------------------------------------| -| SDK | .NET Core 2.1 SDK (v2.1.300) | -| Runtime | .NET Core 2.0 Runtime | -| SDK Preview | .NET Core 2.1 SDK (v2.1.300) Preview 1 | -| Runtime Preview | .NET Core 2.1 Runtime Preview 1 | - -## Package managers +## Semantic versioning -.NET Core can be distributed by other entities than Microsoft. In particular, Linux distribution owners and package maintainers may add .NET Core packages to their package managers. For recommendations on how those packages should be named and versioned, see [.NET Core distribution packaging](../build/distribution-packaging.md). - -## Semantic Versioning - -.NET Core *Runtime* roughly adheres to [Semantic Versioning (SemVer)](http://semver.org/), adopting the use of `MAJOR.MINOR.PATCH` versioning, using the various parts of the version number to describe the degree and type of change. +The .NET Core *Runtime* roughly adheres to [Semantic Versioning (SemVer)](http://semver.org/), adopting the use of `MAJOR.MINOR.PATCH` versioning, using the various parts of the version number to describe the degree and type of change. ``` MAJOR.MINOR.PATCH[-PRERELEASE-BUILDNUMBER] @@ -62,34 +45,34 @@ MAJOR.MINOR.PATCH[-PRERELEASE-BUILDNUMBER] The optional `PRERELEASE` and `BUILDNUMBER` parts are never part of supported releases and only exist on nightly builds, local builds from source targets, and unsupported preview releases. -### Guidelines for incrementing runtime version numbers +### Understand runtime version number changes `MAJOR` is incremented when: -- Significant changes occur to the product, or a new product direction. -- Breaking changes need to be taken. The bar for breaking changes will be high. -- An old version is no longer supported. -- A newer `MAJOR` version of an existing dependency is adopted. +* Significant changes occur to the product, or a new product direction. +* Breaking changes were taken. There is a high bar to accepting breaking changes. +* An old version is no longer supported. +* A newer `MAJOR` version of an existing dependency is adopted. `MINOR` is incremented when: -- Public API surface area is added. -- A new behavior is added. -- A newer `MINOR` version of an existing dependency is adopted. -- A new dependency is introduced. +* Public API surface area is added. +* A new behavior is added. +* A newer `MINOR` version of an existing dependency is adopted. +* A new dependency is introduced. `PATCH` is incremented when: -- Bug fixes are made. -- Support for a newer platform is added. -- A newer `PATCH` version of an existing dependency is adopted. -- Any other change doesn't fit one of the previous cases. +* Bug fixes are made. +* Support for a newer platform is added. +* A newer `PATCH` version of an existing dependency is adopted. +* Any other change doesn't fit one of the previous cases. When there are multiple changes, the highest element affected by individual changes is incremented, and the following ones are reset to zero. For example, when `MAJOR` is incremented, `MINOR` and `PATCH` are reset to zero. When `MINOR` is incremented, `PATCH` is reset to zero while `MAJOR` is left untouched. ## Version numbers in file names -When you download .NET Core, the name of the downloaded file carries the version, for example, `dotnet-sdk-2.1.300-win10-x64.exe`. +The files downloaded for .NET Core carry the version, for example, `dotnet-sdk-2.1.300-win10-x64.exe`. ### Preview versions @@ -99,13 +82,26 @@ Preview versions have a `-preview[number]-([build]|"final")` appended to the ver After a release goes out, the release branches generally stop producing daily builds and instead start producing servicing builds. Servicing versions have a `-servicing-[number]` appended to the version. For example, `2.0.1-servicing-006924`. +## Relationship to .NET Standard versions + +.NET Standard consists of a .net reference assembly. There are multiple implementations specific to each platform. The reference assembly contains the definition of .NET Standard. Each implementation fulfills the .NET Standard contract on the specific platform. .NET Standard usually refers to the reference library. + +The .NET Standard reference implementation uses a `MAJOR.MINOR` versioning scheme. `PATCH` level isn't useful for .NET Standard because if exposes only an API (no implementation) and by definition any change to the API would represent a change in the feature set, and thus a new minor version. + +The implementations on each runtime may be updated, typically as part of the runtime release, and thus not evident to the programmers using .NET Standard on that platform. + +Each version of .NET Core implements a version of .NET standard. Implementing a version of .NET Standard implies support for previous versions of .NET Standard. .NET Standard and .NET Core version independently. It's a coincidence that .NET Core 2.0 implements .NET Standard 2.0. .NET Core 2.1 also implements .NET Standard 2.0. .NET Core will support future versions of .NET Standard as they become available. + +| .NET Core | .NET Standard | +|-----------|---------------| +| 1.0 | up to 1.6 | +| 2.0 | up to 2.0 | +| 2.1 | up to 2.0 | + ## See also [Target frameworks](../../standard/frameworks.md) [.NET Core distribution packaging](../build/distribution-packaging.md) [.NET Core Support Lifecycle Fact Sheet](https://www.microsoft.com/net/core/support) [.NET Core 2+ Version Binding](https://github.com/dotnet/designs/issues/3) - -Link here for docker versions: https://hub.docker.com/r/microsoft/dotnet/ - - +[Docker images for .NET Core](https://hub.docker.com/r/microsoft/dotnet/) diff --git a/docs/core/versions/lts-current.md b/docs/core/versions/lts-current.md index c38e5fedd0005..335618be69622 100644 --- a/docs/core/versions/lts-current.md +++ b/docs/core/versions/lts-current.md @@ -7,6 +7,8 @@ ms.date: 01/30/2017 --- # .NET Core Support +<< DEscribe Current and LTS support strategy. Point to table in the version history table +>> This is a general description of .NET Core support. ## LTS and Current Release Trains diff --git a/docs/core/versions/selection.md b/docs/core/versions/selection.md index 323b175692dee..ff372c792f9bf 100644 --- a/docs/core/versions/selection.md +++ b/docs/core/versions/selection.md @@ -9,7 +9,7 @@ ms.date: 06/27/2018 [!INCLUDE [topic-appliesto-net-core-2plus](../../../includes/topic-appliesto-net-core-2plus.md)] -This article explains the policies used by the .NET Core tools, SDK, and runtime for selecting versions. These policies provide a balance between running applications using the specified versions and enabling ease of upgrading both developer and end user machines. These policies perform the following: +This article explains the policies used by the .NET Core tools, SDK, and runtime for selecting versions. These policies provide a balance between running applications using the specified versions and enabling ease of upgrading both developer and end-user machines. These policies perform the following actions: - Easy and efficient deployment of .NET Core, including security and reliability updates. - Use the latest tools and commands independent of target runtime. @@ -25,11 +25,11 @@ The rest of this document examines those four scenarios. ## The SDK uses the latest installed version -SDK commands include `dotnet new`, `dotnet build` or `dotnet run`. The `dotnet` CLI must choose an SDK version for any command. The .NET Core CLI uses the latest SDK installed on the machine by default. You'll use the .NET Core SDK v2.1.301 when it's installed, even if the project you are working with targets the .NET Core Runtime 2.0. Note that this is true for preview versions as well as released versions. You can take advantage of the latest SDK features and improvements while targeting earlier .NET Core runtime versions. You can target multiple runtime versions of .NET Core on different projects, using the same SDK tools for all projects. +SDK commands include `dotnet new`, , or `dotnet run`. The `dotnet` CLI must choose an SDK version for any command. The .NET Core CLI uses the latest SDK installed on the machine by default. You'll use the .NET Core SDK v2.1.301 when it's installed, even if the project you are working with targets the .NET Core Runtime 2.0. You will use the latest preview versions as well as released versions. You can take advantage of the latest SDK features and improvements while targeting earlier .NET Core runtime versions. You can target multiple runtime versions of .NET Core on different projects, using the same SDK tools for all projects. On rare occasions, you may need to use an earlier version of the SDK. You specify that version in a [*global.json* file](../tools/global-json.md). The "use latest" policy means you only use *global.json* to specify a .NET Core SDK version earlier than the latest installed version. -*global.json* can be placed anywhere in the file hierarchy. The CLI searches upward from the project directory for the first *global.json* it finds. You control which projects a given *global.json* applies to by its place in the file system. The .NET CLI searches for a *global.json* file iteratively navigating the path upward from the current working directory. The first *global.json* file found specifies the version used. If that version is installed, that version is used. If the SDK specified in the *global.json* is not found, the .NET CLI rolls forward to the latest SDK installed. This is the same as the default behavior, when no *global.json* file is found. +*global.json* can be placed anywhere in the file hierarchy. The CLI searches upward from the project directory for the first *global.json* it finds. You control which projects a given *global.json* applies to by its place in the file system. The .NET CLI searches for a *global.json* file iteratively navigating the path upward from the current working directory. The first *global.json* file found specifies the version used. If that version is installed, that version is used. If the SDK specified in the *global.json* is not found, the .NET CLI rolls forward to the latest SDK installed. Roll-forward is the same as the default behavior, when no *global.json* file is found. The following example shows the *global.json* syntax: @@ -47,7 +47,7 @@ The process for selecting an SDK version is: 1. `dotnet` uses the SDK specified in the first *global.json* found. 1. `dotnet` uses the latest installed SDK if no *global.json* is found. -You can learn more about selecting an SDK version in the [Matching rules](../tools/global-json.md#matching-rules) section of the topic on *global.json*. +You can learn more about selecting an SDK version in the [Matching rules](../tools/global-json.md#matching-rules) section of the article on *global.json*. ## Target Framework Monikers define build time APIs @@ -103,4 +103,4 @@ Self-contained deployments may require a specific patch version. You can overrid 2.0.4 ``` -The `RuntimeFrameworkVersion` element overrides the default version policy. For self-contained deployments, the `RuntimeFrameworkVersion` specifies the *exact* runtime framework version. For framework dependent applications, the `RuntimeFrameworkVersion` specifies the *minimum* required runtime framework version. +The `RuntimeFrameworkVersion` element overrides the default version policy. For self-contained deployments, the `RuntimeFrameworkVersion` specifies the *exact* runtime framework version. For framework-dependent applications, the `RuntimeFrameworkVersion` specifies the *minimum* required runtime framework version. diff --git a/docs/core/versions/version-history.md b/docs/core/versions/version-history.md index 7e157d160feb2..b3749826ac312 100644 --- a/docs/core/versions/version-history.md +++ b/docs/core/versions/version-history.md @@ -1,28 +1,27 @@ --- -Your magic stuff +title: .NET Core version history +description: See the timeline for versions of the .NET Core runtime, .NET Core SDK, C# compiler and VB.NET compiler. +ms.date: 07/26/2018 --- # NET Core version history -Version numbers for the .NET Core are challenging because .NET Core SDK and .NET Core Runtime release on different cadences. Because of this, we can do only two of the following three things: +Version numbers for .NET Core are challenging because .NET Core SDK and .NET Core Runtime release on different cadences. The different cadences means a choice to do only two of the following three things: 1. Release independently, specifically allowing tools, C# and VB to advance faster than the .NET Core Runtime. 2. Maintain alignment in version numbers between .NET Core SDK and .NET Core Runtime. 3. Use semantic versioning for both the .NET Core SDK and .NET Core Runtime. -2.0.0 forced version alignment and this proceeded smoothly for one release. In December 2017 .NET Core SDK had a feature release, with no corresponding release in the .NET Core Runtime. The team chose goals 1 and 3, losing alignment between the .NET Core Runtime and SDK and resulted in a several .NET Core SDK 2.1.x versions that were released before .NET Core Runtime 2.1. Since the SDK is not forwards compatible, these 2.1.x SDK versions could not target .NET Core Runtime 2.1. The team responded to the considerable confusion this caused by switching to goals 1 and 2, abandoning semantic versioning as described in [.NET Core versioning](index.md). +2.0.0 forced version alignment and proceeded smoothly for one release. In December 2017 .NET Core SDK had a feature release, with no corresponding release in the .NET Core Runtime. The team chose goals 1 and 3, losing alignment between the .NET Core Runtime and SDK. Several .NET Core SDK 2.1.x versions were released before .NET Core Runtime 2.1. Since the SDK is not forwards compatible, these 2.1.x SDK versions could not target .NET Core Runtime 2.1. The team responded to the considerable confusion by switching to goals 1 and 2, abandoning semantic versioning as described in [.NET Core versioning](index.md#versioning-details). -Because the timing of the decision to abandon semantic versioning, there were transitional releases in the 2.1.10x and 2.1.20x version number ranges that can also not target .NET Core Runtime 2.1. +Because of the timing of the decision to abandon semantic versioning, there were transitional releases in the 2.1.10x and 2.1.20x version number ranges that also can't target .NET Core Runtime 2.1. The first two digits of the version numbers realign with the 2.1.0 version of the .NET Core Runtime and the 2.1.300 version of the .NET Core SDK. -Evaluating [releases.json](https://github.com/dotnet/core/blob/master/release-notes/releases.json) yields the following. [[Who can help fill in the missing C# versions?]] +Evaluating [releases.json](https://github.com/dotnet/core/blob/master/release-notes/releases.json) yields the following. << this table should include LTS. Check with Lee Coward >> -.. Add releases on June 19 and July 10. -.. Add a column for ASP.NET Core Runtime -.. Ask Phillip about F# column -.. Footnote for VB versions aligning to Visauls Studio +.. Footnote for VB versions aligning to Visuals Studio | Date | .NET Core SDK(4) | .NET Core Runtimes | Contains C# | Contains VB | Notes | @@ -33,7 +32,7 @@ Evaluating [releases.json](https://github.com/dotnet/core/blob/master/release-no | 2017-11-14 | 1.1.7 | 1.0.8, 1.1.5 | 7.0 | 15.0 | | | 2017-11-14 | 1.1.7 | 1.0.9, 1.1.6 | 7.0 | 15.0 | | | 2018-03-13 | 1.1.8 | 1.0.10, 1.1.7 | 7.0 | 15.0 | | -| 2018-04-17 | 1.1.9 | 1.0.11, 1.1.8 | 7.0 | 15.0 | | +| 2018-04-17 | 1.1.9 | 1.0.11, 1.1.8 (*) | 7.0 | 15.0 | | | 2017-08-14 | 2.0.0 | 2.0.0 | 7.1 | 15.3 | | | 2017-11-14 | 2.0.3 | 2.0.3 | 7.1 | 15.3 | | | 2017-12-04 | 2.1.2 | 2.0.3 | 7.1 | 15.3 | (1) | @@ -45,10 +44,16 @@ Evaluating [releases.json](https://github.com/dotnet/core/blob/master/release-no | 2018-04-04 | 2.1.104 | 2.0.6 | 7.2 | 15.5 | (1,2) | | 2018-04-27 | 2.1.105 | 2.0.7 | 7.2 | 15.5 | (1,2) | | 2018-05-08 | 2.1.200 | 2.0.8 | 7.2 | 15.5 | (1,2) | -| 2018-05-21 | 2.1.201 | 2.0.8 | 7.2 | 15.5 | (1,2) | +| 2018-05-21 | 2.1.201 | 2.0.8 (*) | 7.2 | 15.5 | (1,2) | | 2018-05-30 | 2.1.300 | 2.1.0 | 7.3 | 15.5 | (3) | +| 2018-06-10 | 2.1.301 | 2.1.1 | 7.3 | 15.5 | (3) | +| 2018-06-10 | 2.1.302 | 2.1.2 | 7.3 | 15.5 | (3) | -(1) These versions of .NET Core SDK 2.1.x cannot build apps targeting .NET Core Runtime 2.1.x -(2) The new version number scheme was decided at the start of 2018. However, there were two feature level releases before .NET Core Runtime 2.10 released. Thus, 2.1.10x and 2.20x represent a transition period. -(3) The .NET Core 2.1 release represents unification of version numbers on the new scheme -(4) A nightly build of the .NET Core SDK appeared with the version number starting with 15. This must be manually removed from the machine. \ No newline at end of file +(*) Indicates LTS (Long-Term Support). +(1) These versions of .NET Core SDK 2.1.x cannot build apps targeting .NET Core Runtime 2.1.x. +(2) The new version number scheme was decided at the start of 2018. However, there were two feature level releases before .NET Core Runtime 2.10 released. Thus, 2.1.10x and 2.20x represent a transition period. +(3) The .NET Core 2.1 release represents unification of version numbers on the new scheme. +(4) A nightly build of the .NET Core SDK appeared with the version number starting with 15. This build must be manually removed from the machine. + +> [!NOTE] +> Visual Basic language versions typically match the version of Visual Studio when that language version first shipped. diff --git a/docs/core/versions/versioning-for-packages.md b/docs/core/versions/versioning-for-packages.md deleted file mode 100644 index e70574939f1ad..0000000000000 --- a/docs/core/versions/versioning-for-packages.md +++ /dev/null @@ -1,19 +0,0 @@ -#### Minimum package set - -* `dotnet-runtime-[major].[minor]`: a runtime with the specified version (only the latest patch version for a given major+minor combination should be available in the package manager). New patch versions update the package, but new minor or major versions are separate packages. - - **Dependencies**: `dotnet-host` - -* `dotnet-sdk`: the latest SDK. `update` rolls forward major, minor, and patch versions. - - **Dependencies**: the latest `dotnet-sdk-[major].[minor]`. - -* `dotnet-sdk-[major].[minor]`: the SDK with the specified version. The version specified is the highest included version of included shared frameworks, so that users can easily relate an SDK to a shared framework. New patch versions update the package, but new minor or major versions are separate packages. - - **Dependencies**: `dotnet-host`, one or more `dotnet-runtime-[major].[minor]` (one of those is used by the SDK code itself, the others are here for users to build and run against). - -* `dotnet-host`: the latest host. - -##### Preview versions - -Package maintainers may decide to include preview versions of the runtime and SDK. Don't include those preview versions in the unversioned `dotnet-sdk` package, but you can release them as versioned packages with an additional preview marker appended to the major and minor version sections of the name. For example, there may be a `dotnet-sdk-2.0-preview1-final` package. diff --git a/docs/core/versions/versioning-standard.md b/docs/core/versions/versioning-standard.md deleted file mode 100644 index 35deb042cb081..0000000000000 --- a/docs/core/versions/versioning-standard.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -Your magic stuff ---- - -# Versioning .NET Standard - -.NET Standard consists of a .net reference assembly and implementations specific to each platform. The reference assembly contains the definition of .NET Standard. Each implementation fulfills the .NET Standard contract on the specific platform. .NET Standard usually refers to the reference library, and the implementation is detail of the corresponding runtime. - -The .NET Standard reference implementation uses a `MAJOR.MINOR` versioning scheme. `PATCH` level isn't useful for .NET Standard because if exposes only an API (no implementation) and by definition any change to the API would represent a change in the feature set, and thus a minor version bump. - -The implementations on each runtime may version, but this would normally be part of the runtime release, and thus not evident to the programmers using .NET Standard on that platform. - -Each version of .NET Core implements a version of .NET standard. .NET Standard and .NET Core version independently. It's a coincidence that .NET Core 2.0 implements .NET Standard 2.0. .NET Core 2.1 also implements .NET Standard 2.0. .NET Core will support future versions of .NET Standard as they become available. - -| .NET Core | .NET Standard | -|-----------|---------------| -| 1.0 | up to 1.6 | -| 2.0 | up to 2.0 | -| 2.1 | up to 2.0 | - -## See also diff --git a/docs/toc.md b/docs/toc.md index f8b2b9a08aadd..608c505ca4226 100644 --- a/docs/toc.md +++ b/docs/toc.md @@ -121,7 +121,9 @@ ### [Unit Testing Published Output](core/testing/unit-testing-published-output.md) ### [Live unit testing .NET Core projects with Visual Studio](/visualstudio/test/live-unit-testing-start) ## [Versioning](core/versions/index.md) +## [.NET Core Version History](core/versions/version-history.md) ### [.NET Core version selection](core/versions/selection.md) +### [.NET LTS guidance](core/version/lts-current.md) ## [Runtime IDentifier catalog](core/rid-catalog.md) ## [.NET Core SDK Overview](core/sdk.md) ## [.NET Core CLI Tools](core/tools/index.md) From 402f71630a53c0f29b869a6662d55659d692eb39 Mon Sep 17 00:00:00 2001 From: Bill Wagner Date: Fri, 27 Jul 2018 11:12:51 -0400 Subject: [PATCH 05/17] write uninstall Moving to Mac to finish uninstall --- docs/core/versions/index.md | 2 +- docs/core/versions/lts-current.md | 50 ------------ .../programs-and-features.png | Bin 0 -> 370837 bytes .../versions/remove-runtime-sdk-versions.md | 73 ++++++++++++++++++ docs/core/versions/version-history.md | 58 +++++++------- docs/toc.md | 4 +- 6 files changed, 104 insertions(+), 83 deletions(-) delete mode 100644 docs/core/versions/lts-current.md create mode 100644 docs/core/versions/media/remove-runtime-sdk-versions/programs-and-features.png create mode 100644 docs/core/versions/remove-runtime-sdk-versions.md diff --git a/docs/core/versions/index.md b/docs/core/versions/index.md index 976e23c970fde..1f36cd8d5c431 100644 --- a/docs/core/versions/index.md +++ b/docs/core/versions/index.md @@ -7,7 +7,7 @@ ms.date: 07/26/2018 --- # .NET Core versioning -.NET Core refers to the .NET Core Runtime and the .NET Core SDK that contains the tools you need to develop applications. .NET Core SDKs are designed to work with any previous version of the .NET Core Runtime. This article explains the runtime and the SDK version strategy. An explanation of version numbers for .NET Standard can be found in the article introducing [.NET Standard](../standard/net-standard.md#net-implementation-support). +.NET Core refers to the .NET Core Runtime and the .NET Core SDK that contains the tools you need to develop applications. .NET Core SDKs are designed to work with any previous version of the .NET Core Runtime. This article explains the runtime and the SDK version strategy. An explanation of version numbers for .NET Standard can be found in the article introducing [.NET Standard](../../standard/net-standard.md#net-implementation-support). The .NET Core Runtime and .NET Core SDK add new features at a different rate - in general the .NET Core SDK provides updated tools more quickly than the .NET Core Runtime changes the runtime you use in production. Unfortunately, this problem has resulted in several versioning strategies over the last few years. You can learn about the history in the article on [.NET Core versioning](version-history.md). diff --git a/docs/core/versions/lts-current.md b/docs/core/versions/lts-current.md deleted file mode 100644 index 335618be69622..0000000000000 --- a/docs/core/versions/lts-current.md +++ /dev/null @@ -1,50 +0,0 @@ ---- -title: .NET Core Support -description: Learn about the different release train supports (LTS and Current) for .NET Core -author: kendrahavens -ms.author: mairaw -ms.date: 01/30/2017 ---- -# .NET Core Support - -<< DEscribe Current and LTS support strategy. Point to table in the version history table ->> -This is a general description of .NET Core support. - -## LTS and Current Release Trains - -There are two trains of releases for .NET Core: Long Term Support (LTS) and Current. That enables users to pick the level of stability and new features they want, while still being supported. - -Having two support release trains is a common concept in use throughout the software world, specially for open-source projects like .NET Core. .NET Core has the following support release trains: [Long Term Support (LTS)](https://en.wikipedia.org/wiki/Long-term_support) and Current. LTS releases are maintained for stability over their lifecycle, receiving fixes for important issues and security fixes. New feature work and additional bug fixes take place in Current releases. - -- LTS means you get new features less frequently, but you have a more mature platform. LTS also has a longer period of support. -- Current means you get new features and APIs more frequently, but the disadvantage is that you have a shorter window of time to install updates, and those updates happen more frequently. Current is also fully supported but the support period is shorter than LTS. - -A "Current" version may get promoted to LTS. - -"LTS" and "Current" should be considered as labels that we put on specific releases to make a statement about the associated level of support. - -For more information, see [.NET Core Support Lifecycle Fact Sheet](https://www.microsoft.com/net/core/support). - -## Support timeframes - -From a support perspective, these release trains have the following support lifecycle attributes. - -LTS releases are -* Supported for three years after the general availability date of a LTS release -* Or one year after the general availability of a subsequent LTS release - -Current releases are -* Supported within the same three-year window as the parent LTS release -* Supported for three months after the general availability of a subsequent Current release -* And one year after the general availability of a subsequent LTS release - -## Versioning -New LTS releases are marked by an increase in the Major version number. Current releases have the same Major number as the corresponding LTS train and are marked by an increase in the Minor version number. For example, 1.0.3 would be LTS and 1.1.0 would be Current. Bug fix updates to either train increment the Patch version. For more information on the versioning scheme, see [.NET Core Versioning](index.md). - -## What causes updates in LTS and Current trains? -To understand what specific changes, such as bug fixes or the addition of APIs, cause updates to the version numbers review the Decision Tree section in the [Versioning Documentation](index.md). There is not a golden set of rules that decide what changes are pulled into the LTS branch from Current. Typically, necessary security updates and patches that fix expected behaviour are reasons to update the LTS branch. We also intend to support recent desktop developer operating systems on the LTS branch, though this may not always be possible. A good way to catch up on what APIs, fixes, and operating systems are supported in a certain release is to browse its [release notes](https://github.com/dotnet/core/tree/master/release-notes) on GitHub. - -### Further Reading -* [.NET Core Support Lifecycle Fact Sheet](https://www.microsoft.com/net/core/support) -* [Currently supported operating systems and versions](https://github.com/dotnet/core/blob/master/roadmap.md) diff --git a/docs/core/versions/media/remove-runtime-sdk-versions/programs-and-features.png b/docs/core/versions/media/remove-runtime-sdk-versions/programs-and-features.png new file mode 100644 index 0000000000000000000000000000000000000000..6597b1cb5884c616547cc2f0888c39078bcb5ff6 GIT binary patch literal 370837 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 z zKLu=o>kV_@KU?HK{<8}zD{=ph><1bet_6+M9koL^&vK8I#y?Ev8sMv!;Pm!*0uGP&^ zGeBy%%oL-Hs^(5B!AX>KkO90x6Wb_4 z)}ryi^G*6Qb}$gLNCa+p^c~`W#UFmD4>W1jh{%7PLaIMs*ki|`oS*-L+rAAw9 zP6Pj3;q`S-cE&;ClEQUq5+Up+Lr$!!4J{uWI=712#e7}2wcMHTVi&tP%7&-4a3lGG~4W}*ua-3I$ay`T%R|u%1#Ji0l&}Wb>HjfI@@8;!Q+IU zVLP;>hq({pgfBxRHS8mHrMv*JeP zDQb0~n*zsG^^O{NX(IXSkAqJ#lcqT{TAyE~*8yPhi{spa7T(bc?n z3LuVX?ryD2+zSpn{1%_-){B5VYqckzbMYRho1vw zGvUUQ0Td_|kWk2`Y|H5y$bJE+ zPz=CkJCs7h!46aH*aN>1N@2*Wr7CL)O>~FrLkcpf{=karbA9*WB%`eMXdmqg$*)UjN9jw!w#D-=fdgAoNI{tH6X$&D0DF8@gWy=QFlm!9$IAvbw{)| z%Zjgw$?fthg%wr%p$%q*#S7xlpAeAr+`8v(5eIMi@|YpV)qdRdbQK(|SuUY3!byC& zL8ShyiT%xXiUHd~(l@#_KRVNj{b=#MTu3bDAxOt$Bb*A_Pk5}y(s^vnDkLUxhfXcC zB7&NaFTNjlJ)-|Qddrr@v!nZ5pi1t%ASIVw8ASNzk;P*nV<5{jIj(!UV%k2i^ z${0t2)m+G#e)pRZ-7G_|o~1yvOIiFBzgpH2dDgCR;MSvAGZ3GM1<#YfSW-;ukemH) zsOGOaX^tS2B(UR@i^-4cZ@ga+ZfYjXh{&vqMgvrqc{%o7N;wecdC--}I4J9d2{P)^ z-rB_Fn?X4(v8^khIhJ-rwu2Il#p|Jd>oCe2ZDlq+7^0)TBq?H){@gd)(6(kyXf5xS z1ON{C&H}8=ze$$SzoPWBGeWY#xWT~6@PY2A^v1{1j7bs)N8VHJ^y(3W}OiVfMlqZ_ej zdo9x{8O+Cy%;0ytfNB&f@>&g?88Q*}eL&`di`!Z0te*L7WD!5qcZ3^})*ksit#)H> zX>dHSSfxgE%xQ+16j(yACs~#chk}c3*$ex?#Rmq5qY&t&agTU$FfoiAf9Z5>XEs;$ z_c!q5hdofxvE24yX0eSB#rwSD&Q8-`k8|&LWtI#rcdbjN*0jDvJDj-k3r!nHwDF%7 zgej}vyN=*pM4-s zp8|&u*}3j}R-dAy?t0;LWnZmR)uq|Cws0O7UXL%b?~nj@tbRT^!_TLAZW)`>PNSbi z#g=>~#8keBODnq(UuI}0P63$TIRDda-{20xbLknM?pg)$@ zD%*gOmA07H^UO6K>+NDH{L1u_JCWM5qv2~rql%xu>LONrdFV#jeiq;Gf4eDuHTFvg zHQ0cbU@Sk_BbqX3LSV2|S>i1SnfJu%tsBo35E;w%&4E+%*V)Ar1y~N;FMmeDZ|LBO z`_u3~%M878Qr21|g~su64{S}X>sh3dA-vT~b$?$Q+$`vxt6Z)>JM!Ww>nrz#M;PO| zx|`0OkKK2Mqz|RMIkeP$5v!o&G*HM^MZ6&Q#@e3h2+Q5HW&-+e(^VW z2>WY|R9b37i%94XqdWCn?+>iqGm_ZBH53J^2J+D*Xx)>G3}J$*>$x+w25rT38eq~5 z4Ks21u=Cu%Ti9NGB6l>-mP;IMMdiNyu zA=lbPP;;u{>tCYt4y!V@u}NabW=M=$W=a~^*rtQ2UdB3A?>5CEJt6Z_bZ0x#PN^cU z`4vd@+Y1-YuLMq|-R^TdJ}z2|&FF+gXH@q(^YsR&@DFTPP;q&x4kdc1ALFsgX@Drg z0}6=GoHJi%B=I}7MC{bmM9=#5H~J_g)c+_ejtpN?byADNFq`ac-HLci>hr+5`Go)LHl6<{tp0kPeko8efMRd3U=ReMPSy@=5{QV`pyu3~) zz|>Q)?fHd;$@`L@PB|JG!5u22ujgdNvyvI;85!j$&$$sKp2u5hG}U4dLpFtKRQMx3 z)}L7!I)1(#y_?v;q&s!*Gd6Nplu>O>sUBXrr}MVzm>Y#w(O-o;EcdjXUX6+i#6o(N z%A+K-WXVGdu97k3X;)$4@0g%3$$s3pO3UVpzg0S@4DO|HiU z`X=tZlFiQ)p!9coII(9Q)32~0x!Os|d`e~I{r5vqB_U4^SK+Ye~V-r;FDjwcJn_ddACG})l$Y<%w7z7Qj_ zp8>_i{CceXkSzmx;7m^aR^}~gJ~Taelv>%ZP@q_GtoWflJE_QrZgjv0|7q9p#h{Z$ zwKDyEpDE4>$v}<&VWs#_A7O@th~AUvT7(dJI=?&Svv!TM!yhW^&9Me3yp~x6UX2Bm z-)+_Rz9#m{b`4&(g62u*oh;oNTNb;G_~_sgaVd)xp+E5u{Jq7l*! z-rebsm;uINiyq+AmUR54oRSXqC9%+2?72jH=Lcfjx%LMSSynxoi&wDza;z`CKkojEnf{vu zrlX_Vt#E6wU+D)b=9RoeMMWu8Rk0P+aC(yVJsyN4u(EH$I)!^tN=i_i2LL{|uCitt z#a~VBgA1kd;j=65+n$aMU%ZQEbl`wq^eb#Y5x}kP0T+oEV=pf8*L(o6R5W*Y1_jF` z8Mjp3tIP|lJurrQ?!fQ;1y)l4{Pq9f(dy#63?0y;%c8}F1!+4wf%SEBJUpV%t5ME7 zA%Meusfh#nX*ni{Je8lQ74U=)u)dNwHsPi|K6u36FR@Kc@nBlLVqXD~_y0xH{_A7@ zC5tN`{``vq`+@Ru`!68tF7S8UJNp+G{s+(oFj`a7+mgR;Nmmu;pJ(}t6pMYW_)9PU zGh;a?LE;w#)!7^=b_52(d!4}pp3JWuZhvv)t&4x-$A5ud^IMVsnkM_dc5!o)Q5~hG z_B{-YKR7Sa|A<5n8{+~!8q|?{jg81ljEmVE zQKtvp$PYDQe_y<^QsM8{gZ;m~Ou{>-9%2A89PWQ`qe-7hd>*YG@cb*i>zU&x+B0Ni z*qLh^tx=zpY`1%L7h&%GGXOicbNZtJOW?7-UUibY7ZzOv5$@HMJ}Cd)<=P>&c^#F) zW!w#@2dk?g1|dgqaL*TtvadC(6_iJMC4c@{!%>ocC^P~26U;_EuZxF0-)Ss3^4NRB z&sXH*rY|CJ)>u*}#K$#9gB4h87_p#+n12driz_eZJS{^NSfpg$lJdD;;t}gd@Y`hX zM(LLaHDSxjN`ODEh+*%KQ@Lz2=QesKzKWg*V+YD2y2r-i9v;pPwHRNB!0?FQ*xq*! zSf0$u5c0(Y-#9~P_jIZKAmHoZRG5!Uyxu&>lLZ6kd00`-}YefP0~?C~bs zk}rd_L!mKZ=umb#hB8Dv%!=f z%FM%_0A4p>2=>(D%XwI--{G4q-*ZGRut zS3CS;H3xpXBnLq26Sn%+8mo#$EB9~CxNA7l&Q`k{%ZU~ZD@&OkAl*YV>46&*MUqN5 zCi>EtzhA-Vx$g}=u+m3yB{I$9!TCnib}s=jvBbKJan)TCxk+ZGyUpX-AVYY3bPzn` zm!FCKGn!g(n0#%PUK2aHsUV`d0zunNUs;MfiO+;o#4gg_Iuw==mJv{_QxPI4yMJBR zK&{%jCsav#c~cL~1HO`u771kclyX$O>r`}~RT@?mQMCq8=&N!vJ#3MVDXa78S36SN z!~M4psG~=k*UYIs1W{h%p0mJ<w}4`!!_w%YOucJw@i)jEe$&!)wU=fK?{Bhj~6NUb-Aq#l$> zBMsX7wO?yYiet3jbPGAR-Jh+*aQN9ju&)3={eK4+hJ|ISnT>!xI$*0qL+^|{TQR(T zybNx1xFqr`OAVtQZ0(KX?C7p|N)D6syC4@ACxG;|0;sCt9qZE$1idIz%;44@b919# z?de4ddwym2TF!c?DCXn4%D>3?;jwb}iWD&pI>c%qx&ayp!9KQ1`xu+uYhlj*wCBAN z9KGkOY`H@u1dVeJDkY6>?u0G>yiDNSv^H)3VitsyQYuInTtPe=_o?I<7y7NFm6|Xb#!kkyL}>X~5+n)PZO6 zwTTm~>ZbU zsG{c}9BgHLTfX&ivgl|iAbW>*B>oMULHBiZ3H(EnUME3z*ZDFy4VW!u$cPSlYd*?7 zCQ|FK$3{}zePv)%?xM@mE!i-I(%c|O6oyeaj42a$G}%U$zu(RzL~BsLnZxqB$}RHJ zi3_38-}UM?+&{UP=44+2-sa6H8ZhB&`|EvJ87^F{i) zPn0JeCQ;}biR1%HDr4=qw~)-oalvufP8g*oiDl1zECMLyB6w`2OTqo#4_eHs6tGS7 zzW2`vh~O>w)zaDXqnbZrCYW*cu-J(3L8ah@^_su$2{qn|GI~lTW5~Dt?mNdtK9zR*G9xyMzwDeip`V6yew$zlSzPKm`A}DI zXPDkocj|uLpMGwmNysE^tc7Av{)2`_@%`a2gXaik)i=f>g_xkgFbVWK9hy0#{&X6y zkY3Bg3!T-#8hC^3P3oxZtwqTHS!)PemX?>(iHT9Vxw%zVS9ixyRC}BTEVvculw4k1 zB-}YW(_@!pff5rFNoAD8xtqPvIyzk7N4Y4-x*!%5-*JAQrpHMJU~>R5@_s`HMUGma z<32V*{nx|pD1l}i?zwsW_1JCYCln*wO8Rn!2fAE1KW;Eo$K30HF{#Zy12^q_YNu*U_ml*T})Xerr#HI76w%u$xC{An#__M@QKa{~dw`HayO?F3j?=8R>SM@jX*(wvRjcd&g z86Sblh(mRn6LUUp20sx=%=}0*VSlD|anU-fYCUUDZ2$xyZHsRdtiKh&1^_V#-&S%w z)RX40)P<2i6uPTF-*>l!IWySuhIZjNV7YEs!AiFaFo9fbF&-*6NF5a7Pg;pmwz@PT z3ERs2GQ8mjeW42X{G*{gem2}ILZrYKBUSejb(F#kJBw%M{m4cc&RSOHtEZbO>aNJ? z6I>^Ca#M7z3cIJ zg-$AAUYFn0ZY&KXEvEU(=T*7H5(xlN=ooI_QCmN{Y23wBjmVdKkRq3Lg8j;uKS$+! zk;yQ}F`g_3`LQK*4yem8n0?9eD=o)aHBx5yyzD>sO|M?PI$iBT3<(KYjq`ti<1%6x zH-pAd2%4Ch!t?U-l9H2mcXh#oKp==8;1P;W_zp^iCWdA+D9)`@S4Q{oxOE)pHU~IMnx3IH`2!%We`J7A%D7*ZZ$TfU?Qfq(q9O2 zFh@VTW{VWJs9Na>MKAyZAt5!iy^TQUOQjtjdXDT?tL7bM>&=PfHw*ml! z$`56CGO>V47{(6me$xQyvqF)Ahe^#qIS=@-p*$0djc9LLP6zLdD6C0!s-GMI4Mgua z*;WL)qq;5hxCsyKas{?%M=-S%JwB#FcBb;gvs)s6HmpDHr*U&%NH1TYhv;J{L^<_V zJlz7BBAqX5r>n?xlpjvxp115z2US!&+J1`RKB8f?H8sjz&BneC>NuQ1zOx zMl=_H)Z3*f@p)6;gXccz+9>srM2tD9GZ`jgAGF71p(|0&%# z!an)F`nw5;(&?vY`*&?QNWUT~1A?E$g_@h`v-ol>QQoYYO7Ek(@-Mw|k$*o%XQ9Vy z!ugEx&?EUs=#F`mup|_ip+K?p+lu~U8SX*NMmUy8i(arn}}SBF-L2r0{#R&2{b zTaU7(PS`0}?3O+Ez~p>;ejqiJUBSZ z(|I`}K80U?0JDZ;AtNxZS?s~Nc@IY=IrFf^!ok0PEwfCLp@%aX_5M#@zQe zT=Np>U}A}M2r9M|YK^Yw+}6Svb2mrwTObc- zKTO&m0Nm1yuIm^tpN`9_!ovx71~IMnI2;^PyF6^|J1=7~x}c6gSsYhgNwya$g4q6jN~j|sVrrzYw{5if zBw?&f_b0qs6!3kb^}B{5S$<#bN&X{q`qsce`FdRc{rj%(N-5SnW5bI$v4Mf%Bi@k@ zKK`;`QF>-(618lJ;J7#(pb|h8XIPwldyxKT4(3(EhlKH0N@DNfz0mV=tf?Z0Mpk_R zmVE|uwlv%P%h+qZBJ5;C^Qy+GnBTt@r}>q0XcurLpMvqxA;ewu&{2!gA!%v6UL*q7Jy9VBo3ihvhxd8pbp)$wnj%M9nj5Vz;hfW3 z=H62WG-OfYrxSP5kHYSxULmUb?6n6QFH2sd&e_@ve-#} ztM^yO4{ErukQPb?k(W|Ek{A?Gh?PyQXp;9+C#H`Dl%mWcMBZ%B`FH?O0llF+vAX9BAjte@;%>sP$W8LWl)jJPlq|T`cgob3z zcy)eh$V#eB$d_1j=rm?-NQgKtEWF1EFG3V*ua;2~x8>tdo$5{z$l7i2DeN zZu3Ut7k5u4lIzxG-@YvHUX3(mAx3UtiDmHY6{9p)qL`ci_F86&wE3Ok*_5%N9J;5P zXN%8>JG0EjSNOyONR`S^$lwg$E;L~v{Yq}cg-Pb+BCGCov%&ih2hSgO6P@;1*uJYkcuMFs%aOMR)-%2m4 zRo?MGT_zG)vsai{{se_Zz5*6|TE>`Ch%bIB0sCHT>U{82L=!fa22_dZ*lx zy0StlUPANm%7uXPF>xlTx1UKt$b-JEx`yY;0^?bjhnyNtT6T(sV_wyj!~_`!Tzh_yB(1)cMo9T_Z@y7C)>IeY#2Cr3cL8jdbbq24jK$={Gxeveekiozy zcz=X*?OY~S+slUdKg-UtBfR~VUhphswo)?Y1kHuml!br>HN!gOV7OECqk5|hK782E zd|Lkjkoo<78mi1ZZDSspJUO0zZ(u9jj*dz#YTvi=fYClRysv+xuW>((#B_ccJI;|F zg81QO2j`A@g$S3dx_6}X)g;2BuF!9{xxEdTcm!5z1Og=2&xlZR~zJ&{|X<(Cz)|O`dPg_x!M;Josio zJj-fQ^4e5piM`a+0XcuU7nF69`5VR(#2u)-RK*TXX9JW+eVX>x54 zq$kMV8YG`ac)^7g3tuWw+73R&|7nI)T?)&J>~*f&F$o}vvWU}d+t#-CQ9*Hn~zwMBa`Br z0twUw7%CMPk6M;;2-uTtt|kr*xaKl_-0e4HK}N)R&K_xen3)e!awJ=%{%jpZb)7qCr=(AYkwALMoa~&JOre=~|d-#|j;=r`?Hw>G!{ZHtn#;xW%3-`nx*#J8@ zk17+~Cj1s>_a$cVHyJ{U*o#^Trfn@TpNiC3V?u1+dj&L6y3d@-v`~GL2F%YIbA7G6 zwJb%445mB7;htiAZP+2P<}~MQ;Vbd57gqxE3f2a=*KnfxqxrzD@ejJCtK8CWJ4Wav z8{KuE*xT5n(mXyW$@$NPai024LrDsQn`!(b{q=^_O8spFIpZok{LWjkJ<5nyj}$stHs<#f6or~rHv1O9iQO$ms6g^ zz`_B7X!cBl1)qdeFvr557+YCf7YPc1+;MR zE$4GTWZk@P2c$6nTR7v4%J@qI7N$`$?|0gT0`&cL1*dSC{+UE*%46RRNnhU@CQbhG zCBL8mspF=P3n+e!=TUBvCBhQDC_T*6iA)ug8Pjqn zAOgVCFd^qVA^JKF+R+Dr(k%W-eL}h?>{qQZCTER7eCx8L#cILX5TeaZE!-~)0d+C* zsYZ?UTr(Pnqi&tMVVu+>qAaL?LbXl4CTsa2?{fL0 zdLp}zluqpv{Px*;_iG8AA!d{#P-uokGxa^a+UQ~Oa zeQs1%5sx1s2$~`9Wu}-hrYA*sk8V*f>w0XF8E*!X&4XtVnaRjxXF)!jxa>GRYq2lZ z7nwU+Q^B9duD7KXwGpu(+M6G6Pw#g;5!k}Y24D@Ei`D{s{U zkbua$C5QJXk7iH@Z-mW?w0!%g&L@k5Mc;cgPMuwlPpvP0?1F&59^?0D3t?L*^ETF2 zi1a)==K4gLnKrJX59HKrAGT;33&7C@rP{OAa?f<{95H5pteWP;7DdvY`|-GSGaP=d zsO>S7BbzBtAk|$vzHUvkRSOC$#JamW{H)wFrH+`8Oyz~s2jI|Ch%djXttCO}>$#+R zctw9LGD>~kRu=X*1CfNj*1I{g=j@pY)(c$0nteW{e|X(R_+BMRISUVslsaViwWS4I z^5>q)#vdUgZNa0i9GjTbMx}2O|FWvi7=5Po<5!XWhWaWYg$)5*VqaH7!o+Q(YO~T+; zw|@rzI)qDWL|^v+lE1+3Vd*j@zOQf@^5sh=5K4o?LQ{=zi0s@Xj&pMpETmW~&6lM- z(r{?fpPQ$xBd_z2P85{Tfq_pZ5soPgA>!7hwi8(LcoEO6gsxN*4MW15+bYDbH}cru z$j3Dhx(RH^Bz)|?SQLwW2p`GnD|tN_pNi?4`7nPVgiJB1fOinYp1`L~DU za1Rl8s}q%4-{=Xv<`@Jm`Yp^e;#&P4`0Du_zwneun!`KH&}@s`cEJVRVNjLpQ>K5FgbPckl9HARL) zW#2P~aXgD_jLO%C^@7$AYPVqn?n{GO;#b$ zs`uwUvZS1iICZPh*ZpJX%R9hoG&dl4Qi0;(khvq&^n-+(oHT%XEnOi6#n^WrYw<4U z$J&%~CW-m#ju7Of^KoxsJ#sg8Z(e6^N!*bCq~UHs5ql!8FUn#rFreh{2#<2ln5e3b zB~eA^_EeV|VrI*wi=JrP$pff@Lsi16md8C$p6@Tc9hdvk{q#AqaNUu)T|o$e?6=kJNFKNzS-+_yTXqo)~p^>sggJj6U) zT%-Nc`$N?ynf0d}N7sxG&gWXY4Pg$1#Mb5CbJpL!5=O>`dj|2`uo#A2M(J(e{kl&& ztU&a=P?Z!xCF}e*9e(cYeqT@i25kQk$_)#L02*##;fSH3 zHxFw#{sF-Dq`IaiAteRU*!Y9n*NOTr7s%TFmb10x;N$229`4!3ozfu_<(XW=J@r7G zA~_2_V*leDj1N2R0&*l#yaTT3R;3soq@_OCjEpKC&E7r3i!V&=MF$-*3|2^B3g7F- zgH0$1c1hEE2F7p-!{kq~$GWN=NPMyE*9z=$ByBnp@O+H4O~JngG(U;3PfxF|?xESM zxs&dZ(``{r(G>Ky!Ud<_1NVYYnAfiMujji7Dt=;bH|CR%By9pE8QNg_rr6(wI*o-6 zG}{_jTY-7to4)HO$#GvcVi;(DLlQ_7&;z~2Pm#x1(!de%eu{nGAre6KPrqOz$SEm@ z_r}2yX)UQEIPTvujcSNJ?}d!3PlQs`tqj6%*9Te|L+K{$Xh+s-04Hu5%&u{lhmhZ8 zb$bhii|bQ}M6vLC1_%B8Ah88@Ilw5Ct8#PK$xHthvaUVO;}}FCk<<;Qo*)A))(X$r&VLt%YyMGnt$RLS5Zky`in(yF|UQ{ zQgViUuVz{@5L+`jfXhDp%%0GHtFA&QaeoG>bWe(w#1@ZAPV$5E&n21B>t`W--)#T} zjkppfOt%NbMCj>Sv8@qVx1xExRA{ot;qZNT6Mt`QWfOW)pZ{{vN&RXLNf0PWu%i=H zz~OXMS-1TP8v-&`kY=%CVw@x&nr<^=iA@P@c|S?UR5TtaB_aWbaaHP0M2Y-#hNn+- zl9P&@3Px-!==7{kZg-f;<%EjFy>Fu;j%H{PwBS{E%5*z3)QbzcPUIe7#%gM(6grrj zxSb!G#?9hEo+Cu(S$T*0>8+o>NK@zR07Y1{d^i_?sum(LZi`nphLTnR*Jfb;=WFO3 z))=~|gO!|K_pt$U5X1WQH*HR{xiPd^+^B_?bi#yR*GafY- zU8&Y|_)UJ>wWF;U=HFK~u73vB0-h&5cymurT~A3Vxf4o!gJOq2tN8a=?-RzgW`ru$ z${Xy=zTutx@=P>?Dn;0St=WYM(`jgG%4u zm^Fr8$H);+9#|hb~(=N7wiSF9#&U6$oHo`>ScezK2yGA0)T0kzxp7 zRw}SAOZ0Nmd^U2P-(3?bUyYBS&e$-rLKKv>04m zTtH4Q=O-Hq`uyHar5LpwhWIb`VX(3?W-NyV&8q2V2UI0sFp=Ee)3tlSE*uA>K)gX4 z1Q@l>&2>UyuDR1D3!S@q$;{pAJ7RvUhgJ+Hr8<;+$Y+icbxGH`d(yva2k+o#5 zb5&3Kjrujq>SmHj)BmCWS%sEKA9a6Kg#4-yrKPG_Fhq)>_v!(ccVPLVi_)D?v-Q!p z=i=>SP#L4kl`?f2mtyB)zmyJdSg{tHwP+8%aX7{JBs3Ju5sua!3o&!~esL1d)YgJj zF;)kZz`@TFWGtPK6 zl+*=rg063O-t94+ohU?f6uWnTCnO3qbV%)@TE5xN8Kg;pXK|e+Wqn2x9z74`AlIcw>7k5m5zU$uWWad>ZKK#Z$6SHS28d3Eh%sjH(XuCJDFHVCr8EX(!>Z`pL$Z< zpG|Ga4m956!xN1)%8J$8pE+p%7<8rlJk|4=Yd+tmF~v`kf}*9Wwc&yR*>k`GW#OAp znjTMkrDEw6N+sU}eU%EiAVrN8{SJR!y}6mqIt}O?Na43kj4y>16JdX4V(g}>l4P>Z z&R}k86Ptfo_1o!d2FrFrwP$Tb%9DEIz_upuh{}b=QVj#tnH1hWsntDy6@>55n7V6r z{(2G4lX)h{Llk9)>LHCs0gAWHv0>&kruux*bzg^5Trp6jWy=_gTI^L|xdPo? zAC!?$ONRlVBe&Y|$sGO$wTAPyYn|ZKbzPk=;fN6r9lZ7rNO+v<&Bn5Zhvqkaz80=s zJ3ML=&Cl7CeIq77Hu#*9q~H5G+nkpba-}931aK&0`f?RQhg}tjuyo49($O4Chsax# zmlpO~i&T!?MMrB{pwiFIRZT*)Ydt(2Gxd09ml!y)4Q@#=vJ&S04#%5!-2XQx?s>6` zmywy7TTv0`e*^Ik`1XwqB;kXKgM*Wt!o2Ee4|ttHYu^2&ri~7 zUy@G5?(s1(#0+@-AidvCHkBC8(>8T0aC8Z{80ML&Vy_0Mhi^lOU{7LS^`}g1&f$8D zwTl5#cM~uTv-?Z@KTzIVjNq{yb9eWYCp4tbzq!_3tcMe@#&&#zoR+E|EKW~z?V-(Dx$|H+k4Pal$-mlsrA%z8Et@VM;$ZNLTp zA0@zlO~ND%leD539`Uwv*r$#tD3V&gWxxZZnp#@#|1m26RS^I8@b4`~5I*dwC;=M> zZ}k_l-@BHe=N*{9L$;35qg=S>NUQ%k)?XmHqRTikb>M3h`-Ro!5*jiG@G*>*cziXrjk;1?jDjC+%77;dnColMj^5$`VJ|czl&Z#MDtiAr4U2qLi7LR`0N$-LuciFNzR9J zJ4J^!-m43kw_fvD?^AcPea||i@19v_xbrHyz%~n|-`hInk(^P3P>^PYZGQBzMruhV zqc&SFJVqHrq458jn;-AOrDEpdwMF4a&C>FYRDTZFUI{X`*jx0!2z$$*I-<2(H@LgI zySux)Tacgug1fuB2KQhAg1b8;xD(u+g}dF(cka1+*Qr}|_{k3zbQj%o&UZY|czi-p zW+v>o5Ts{`pG=mHfL&|Ci=FhHJANG#tH_|)Gjli1SX;GFS0}V|3s24D*vpWW{1a~- zt0*UOQKftIE3^#Y8U??Y94OGHke_tn5-bO>Jj2k`-sCzM!`5>0`IaB2mH7(|wvbxPC&6?`oa|exV}qb@;N*yPji~P_RWOacOg{-}K5dAE+r3|{_5E#- z=$}$TWOqW2O>v>Zpf)K}X(s}maB6$V+W3+<6WO@zoZ=3zv@FYuJecMMhWzdW8~;Ue zFU4y!Scdju@&iHtg@n=SOT>mqtXAG02cKvwpNek*o2^_MTZg^^?$N~%e#9P_sjJu5 z)ZaLJOLGG9{e%JUnE$+DJ1J`S<(FMQ5SINm)3KawEi9s{^Aj3kyqrnOeV5ngLjE>U zJecKPbNqC@H#4!(DPp7)KHnqtmNhy%#^d9Ad)ba+kp``9=m7;1n@98LKR3%MD1{_u z=P1zaOsdk`4nT!)m%0n@2>*p4vPDHjO)o4A(d7FEfBAUkY4x~Zdk2N!`c5^2f2^LH zzlzvXZuh)ZBYwQSIF0-Z=HeQCK>53mp-G&MR||Q@5V5{JUXYqSATs0-?S&nQE>dI5 zC<|~vu0e(B(e}S6Q8c&u!a};xs!R+H;!s*O&=GHb99~FVh%s~DyA@M))~kgZx-^}{>A^8Hs~HL2 z`=A&eTf7fiKCfMDf(=u{W`xDlj+MY@v6@l{#5$`1w7uFeqS2(bJB(qtIdXG{cKzTW zL~1m~$cofk(b+4YV8IXP_r7#|2&~KE?!W19l0AK4uR`n-yV5XNs4w1aVb_i@F^0$H z@!G+7H{hiWuno7NPN<{bxQXl4lWdIPThoy376jW~#6<_CSlWyUeq6Q;6^l7Lnn_ZU zV6JHlZ~B=BcK>A>cefbWn1nK9*ul_61{O*B1R>cg7gr%FchhyQj|Glqn3GEZktlAj zY+Zd)cP=h{~Y@U<=suZd)>Vt|X0YSm5 zwh!~9ccfova@?`hzie5M-Dpq)5~3oZJx59Luxp_TX0>+w+A{Jh)ca7 zCiahi$->k+#GUvtdV_Ob0CFSMWHOwY&_oY4L|iKERb4`@wlDTwQkP++ z6KIKFmb;^NH=6%ZbHX)_7`Jt_4Gm$(#49w}$DhkPX9m@dEFWJgBJVm4Uj<_BhTjsB32>|epvP#=&x zU|W2JLFuGFEfO(s;(kW`=78+81EFXAZD5cJe=b$tIW$R8<@HOzgTv+6S%0-TF{RsH zhpx=)+2%WrQIqXIhpf!OpVkU9Fdp=T!cN3jBOQ|835Y;j#Wn~zI{$HCbR#d+Bb56} z2S_duUSZ%#k|SrOT!@dYVgJ$)*y)0CJUm4^11VjTT~Ykva+>1@$6!$OKeR*I>i$91 zW)H)Qe~OlW%lw@Fb5=F5u9Ok?1h4P!0+Ks_h3hj zr=IN+26G4Nfy{d%KeSwRq(8a4%$%glA#w>6atS#L6pD--$C>3(p(#*a+@NYzZSBzg z6!v74DJN<{i2s@|4Zpq$nwps%Z+HUwmD?ihR5LTnLs%Rf9_K1t79&ie=b@4Gt@RF% z>A5)x4Gj!4tDi8?>?FG|B)*X{7Q5(QhM|t+POR{N6%6L@F8`!{lp8i7l`tM__uRMg~u#oks=kb!<0gZ6I zh|zh!2kUT1(u^$`NxlI_HGb+1r_kImZ(gfY3eslyQ&TO`-d$sB3#pyTW1b;odI~0| zzwC$%tK%uCAVxFWC|;e^jC4#$mlnwtI0}1;Hp`n);Ewjl=L!#9@+As%+aH{>geTfbx@*F|J115`gl@tEBmu7|k3WNB zG=Wi+88HWe=4Yv8T*i=!Saj!S9IK9>V${=D%0tw0z4xX(wp^eslfSslUssHO76j8Q z47f^sYu&-yOJ$no>KVd)s|TJ0YERt#mDHoqQ30*sD>}?%)$YlB@0Jw(&w#x*{II9* zK`gW_-c~oWqbS0Cx`dQ+ihKovpIA+IB^kQ`wi04!y8Y7O@x!k?ZsV^K?9=L~r!kbn ztn7}TfcKn7R?48DPKm+D**=6f)!qg zFD_a$wY)JYL&Dky(@J~?bY05d;brS7O7~kexmC0RQbm+>kr#;W50;PM+Sw2~d3+3m z0;?-bmtwa`Lx+%ECB9DHYm>7o-YMW$^T3k>Ykz!yct<{fV;Y}ahmvf^?Z46^Yil0J zEWV2qz>K9}oxlognSoo<=ecams@O&0NZt;)_}CTMei-(sBQ3lH*~j*-zOwtjvxxMK zeU%geFRqjf#KoMX68R(O6!*jZ7SfT zP7if~b~UBdUD)ZF(CRL-aVtQWaXu>X**d#bXOKDEX4X+;ndBWT$kR|rH2#o+s{_{B zA)ib*pU=U^3DO}y(dG3G4fhuPZ4AbA+*XFU9~3>Ha~Jc#el`8_266f7hBb$g$g8jC z^#1sYBNABOMpHD0fO=RHpZ_|CQh4gf`>MuG@MZgi$YD^hu@`F&c6<)!QYp%-!%E(9 z7-?XH=6)Ov?#XIAs`w(PCjb{dYZ!p*dOj%)IjCu?MMsvgm7ios7<&-8WnRISf^^L3 zspAp($bO26l`{*^!1b-oNQ?{$LW2%y&&-8`eM|}5hfFsr!|7WY3?l3_(VCUzAKqEf zz}j!X3k$X*{wm3peFj>z?9I*hi@Mmsyh~??1mzxYglea!#hsVH-TB@elY8nn=YsGn zvQKMZxHb`87l$P75C$lp7t7+GU+^N1RKG>3&~Hv^l|&GPsr3<1 zvB{ZxqWSBVzeKehhmEQv^rdhf2!fso*-gPS*~v(uiCj)!;;N~f{RjQ%J4J|$X#I!h z-$!=d(29c;(s??OG>gNwS1tlV^`)yLWtqhONJzY%z=(uqHEkANViKevO}Cc>pMm&* zat+m`29l{camHwe$!lY*4b`QjD{wWsi(1~9=oW|QnGN+o$7k<1wQ1oF7T;(|aaSx6 z8RJiGXT_Dsv@E4U zty1dO+U5pfJzSum*+zR%x~tbooJEHAzda!4FfSW*MJ~5vF~;qQ87UJWnVAZlrZ{SJ z#&t-g5+UQ?Y!-YqMonO{-*S2i%2>LdCE^ciE0EVSh7O`o$#&0?)tIRe{Jk zf4zToF(gXw>!wgdML6@V$O~Z&Fit|qWhwL=z|CzKdCN=*|Eun0gF@fg?`Gyo2-nlV zAD=T%+1Qlcuc)E|>O>D@K@Pg0osB}Wkas)l=Yqym>{fXJjDZVEG zvFMy?tzowR?bZJ3#qEgB?L%_IL{{tC zkj$`^4Xv*hnoW6o80rky?jmRnxm1n^A}uiiF)Z<~C^ z;}6HFW7mSSBtm!;RuEV66GA6x7oA$c$Q|p*0F4IMm4fZKC=6|{%65XgVoHmB83Kp% zDk=X(A5jxTK0Z)i*F7*KsxKV7FCx=B#@-k=UeL8ATIbs}H=qq#g_e zYynqd#s*m4QF(@C?3lF2%=Ao1ULJ8Q6FZ1+$Y)4!5|Lc7T3n=FyK|Qnd_&L(hHqe& z?UThGF=p9Nzv30NX@!hj<3Bkq&#U?Z+%c6~hLMq&p*m_K(t0A$wty3qRtq}?c_Axd zt)MW3e)xOjjhAW zQ6j8E-}AUKnntSu^}4Oxdmqv61$Nx7nsiv7ggYUIZ8i_AjbX`2L@*S4kIVHAO+)M& zy`(_(SQZW#Lx@z^XgEpvtBgZ5mu8uKy^zJHfqBXb+m>WgIp^-&#V{c&i)>+4+%G+>Ob+Qt*=;Bx;EoO)BW9YLH6m_b z+mk@ApGgpGp;%Ei;W{X<5bNYCuP*-2z_51gyb_$~fh7r9{HTy7r)eG5;hR|TP9L3^ z7w#-p%8QvDZXAra@3mUbnAKC)GyI%k?|;f#pSB}l<*KA!c;{j=#UcUYy)Uz6P!N># zJ%22$#Klgg=PbgJC-L&PKGrQPY(DZ^3(qYez7!bP61Kw#qM}K8I45-pC9;2wZsQmwyP!?<|VCT5PkMQ(T9! zp}9Ts`K9#jqz2}keuUa)&Y)PCuaA<_D98K1G7L7vJ7W+T^R&!lYQuA2O*dx|ptvqn z^B9`*0b>+t-!so+Us=2CD5IF&ff;SZH`1O9hWitXC+S3>$AFQ1Q3D0X0!x;!6jEu< z*j0Xf?2kS{Q2KYYjYSo9x9p7Xb?~?ZgppntO-YG5j=j_Mk5#|)Adf}|H~?LFs)uHR z0Evxhnf*>85s=oTxrpi~5@@UfneG^3)|n;r`3bnd&UQg0G%Bwk55VW?jS->Wq&-Lf z?y!m4n}yb-+z89d;yS_U&drlM)EeI%=kEV2iohZ-fNJlg#dvTvlXVoNKz|U~dI*N( z##Nrh_oLV&3_D93dd$SwDyU`Xu3XUz)=vvzew@8)gtBl*u#0pMMo(;n0*^rx8iSEy zSPTKVE($jBUt;>WZ(9$W-zN+8pa3qSOlnL1sr4lc!8p-d@FfU}^UTOtOx`m(?k}|N zaX#aL-2_Tu`eWh#@0r?b&(L=*Vkh$slYlo2!5Sgjxse8NM>PRVrKUR7R_kaG)D_Uz zIBbT1wcPWKe@~=3UUOh{ny@DNMD;tin6Dj&reew|(4E0GkC<=Rp|l}mQGWDPU~TU7 z;kTxsA|;O~r^5TJJxD_Kdmw}8R6<1`!Zbu^8&4 z7VVaKevY)&Qq-iWoQ=}bIci$_v7w(O%{#g3<$q77Q5)t%$Ok@*}@w$$zCXh@n zL$Au$PWcla(#VSNIHFz9bqNAoeNH~O?<=XKTvXL(Qd<}fU1YGQ#C5*`!F()I<& zoSo{xVJn@61Q@vM{#N#4c=xv**)Q{==ga(W3*X^;Iyk@`?kYVEI3)v!O3s*FzwR_M zI(dIxJT_^5e|DC&v+NeOPdE^}OI}OI{R#wJcgcmJ;RgyyEyM4_qJZQUvH$H1(bsA| zl7K;N#7K#Npo|udD4+K9t!!a(K<*2hG9jm`&Mx(GwlQ66$T`R-x_APWM#na_C7~-) zS>%&?nU-Zz;t2tVgm5eL_egmt&ZfOQzYId2w12W6*GS|(>~&vct0)Tw|7R2g&=AKf z>#PFX8e_&dkz_kfrN8nb}tS;_ux__J0VJd`5*z4+;v4 z!y|NPuLvXBt_`6hb#$TAF?963{d#u>PDC`1z3Mc|(5q1@@E*v%dGo{@zJ-T}jRlfs zXm!z994gxw20X5zJvBUph;G|2rQigEICcTMfidzM83n>@H#$j2CGc+%Lt7eON_nKW zE4_#w;GbvYXPwt?;k19gE~miQxiK`3+ZGx!9xzq8_i7*W7ug&hA2zS&hh;A{stWVN zvBVKXR^|06$`E%}aTU5vKr1N-V#+KJFm@s)R}1FzDB*Kl%O0EFU-PASf~*jI96U1q z3iUrylMGzs?feLMChDBc>RbOS?(lAA&}|axfnk$zIvyC5j6Lgpz&iKcNp^gf<$hpt z78}bfc?TI`=%0A_)qOAgq@R=)LmymNK5w;u+l1KrqzIs?ZaVb@ITMH8UQOyg^`_bg zS%X?>FM`q9p+=?dFc`{ty8%PD6z!VfkcPh0@^I&Xl?=Nk^P0H-6g!XxgJ;1U-_6@_ zdn|K5SE=Y`H-OX9)51hy7VpiMX>B7c+EnY}{oORaB>F}A;E`272^HcgsPz|!$}LZ= z&=~ANPSBq&cPnaFkLV})Re6D3PT zj^9AxG9pqRTL9}mq09%sK-))d`UOHu0{wo@*HP(^_`tJ6wzlIFRt;sGQNVlmlkg!D109=y)GhVY6R3B~9L@yVvL-oZhH5Qd1;6hP4DIV7>B z?KFJ3F<2rq*x44ZX*z-tGM4NvdBoreOEr|;n!X{Q&trrazWRsK;bQg4*>vM`0Gscc z?Y7tx5_U7I3yS1Oj-x4!MfY3{7<_hPH#S16dV86G6Rifz?2ro|VQskL9~3oMR; z+;;>*0d@wom7InLBqhqasBA$rrs{$^xs-tF@^KA_>Trj|rXj)erw>}pIRRemQ@VtR zgmf5i2?_6Q}RGE)J@#Edt`Q}jGo7GzHMOlZLOTN)-uAre^XIn?@M2ziET1ZrDL9?6()Us7xdalwFf3=BSF4ENfX&^ei8jhhIg=Os2ieCNa zGpm!2ETP4*GR*+a!?+o0P{TC5$AZnJ_Z;M;A{Juxrs#VjFBlMB9bhUryMk`Aepj7G z8O&+5%!@oxE3b$>yo+#vUcf!F{wd?ptuv}j$A&kM3ClvLp_g* zZ~cZp$!Oe{DVDK8^SBTupqRkJWije|P4gMR6PO}EN?3cywngMCSkS`9w}b&cKzvk_ zZqNT3!q;EnbuD#Nz+D3B`wzj?Q2jnqS{SIBx9w|65|wpMG{cSPmo)sypV=aNXBwtP zp-tq@&_he4=q5$fU`xzza8sLVTCNAW%OccIJq!M zEw@7Z)8sDQeYQRIpl6z5b!Es5h{76*xc}b_{PmQi2Ke6o_%ua{WnSPW0u4IIQP9kh z>}s${xqxR5f&E!b7j?4=NVu+;hd$w6jUMp{SnGOTC;^Y) z^uRvZh8{Hbl+95BZqd3@=iO3pRud0) zzFojhq;DUd>3QZ}j`!Q@E8WdZ=)NtV+<1z)bunzcGrkpWiRM>g^+xYAISVsj%XcHhn%)uHTSb9jiCPS3 zQEZt!$d^Z9y$|fm@%=x(X?&qPIIrvAj*ck321>U2@11!J_C=`t2l|rrC9F4EzhTCw zdDIjXi~hNjx#3E90EvqS$J5J;j3ebNCT?hzl> z-sVUa!|`mJ!1p*C*<;?duHD*Ddbo-y0qvLIZ{|)w(fh|V ze0tM`sg)Nda|;Vug{kQmT>TTK!Cd|4^6b^eKc;!DF2BhDlBSyhM!r7X@ht_#_#TNd zknJ-bn4XqQqZ}tA9%P2CH`3GU@R8y2scCb}0i>k?S7iSVfIc)VBT}^4$XaFK1d#0q z4{Q@>XYVC~OCHHx^;#}nz7F*-baM zY(pW2=P}073ym|&W8m6SML#y(*mx6x3?QDG*xy23g$D#B9&t5WCRe!Uq6i-8XuG9B zK3*Xi=aXUKrNZq88HG;swfJTj1dUU<^8%NU@rVuI_YyNkzK9h?upeFvcph89N>KP^Kz*G#-WzWm(9}o4GF6K|ak8u| zi7$h)h=g-4)XDjw{no&xHr(@i8qh1e#b#ZQ?ATz)+EOPquot8{*?%bo%=CN0bwHn6 z89gBW7_roeDW_2%O#E{1Q{INp>k-Jvj@qfs7!lJd=1a}RxIe5Y_KqLor|r9r(p^J` z?_2#WzTiUROMemG-GmovWkiOgP+BNgC#;4NmrYNLtNW?xQ@AVJg{R4|-bqBv0oU4C z>A@_<1t!Jb6q)8JJb3-{{chpG@*L&W-ou0f)(x`}rxZe0E7Erm5W1)DBdOcH^fpbIsf>6j<8PD%+ zfe3FZ!VtNP(ucUfkpQ&Barok~IW(U$F|SWc-waaI?b4f6SVU$0-c>m*2Xd=_VTIhZ zG~=sg+-C0$1gc`=)P!3*9m>3SdX*u5>n~Xlsfu*FmKz!7+Xf5QX|O5Y^-#MX2pB7! zr6S4tzw(kFIJKL&9fQBtBYR)*$ms9Zt3iH^_c-Ero6H9;pM*E2L5|^;@(Cjfij2X_ zg2;}Cv-fBPNuT;0!>IL>v1#`4@#yhHcvUh{7WJwLiwhX>PZ*cIrjga%B9I@UA)&j< zc=j5aap?)3aJpJhay2)+H}~szXSo~L(3{`%d01r>h%#1?#aSOux(e~?CY9N4* zhPj7wm`J*|s6KRaIF*!~4DRLSrKm)7d_YBZAl4YOv8MWZ@{)d88iKz{XE?6E|BK=< zh)sCLRqAhtc4HG3MVa|!WCjeQyQTPkGji|_P_RB1QkC(^`$%zW7+Lz+CMnZEZb~H` zZy#JK-BNeYN$q78&-ogAw8~!6QlFyVFm~&a7e!!@fDdRg)BbG2Koe0LOC8H3KN&&U zZ|fmE9%~4c(m5%PV_dZyE$DqbiM-`c3z|4P#2>F1oL z8Wbc8Ad*5kyNXEQN}Lm>n`uyuOj^NdeJ>+?b{B!OcHt5N(yt3b{yS$`XvC#5LfBPlMX^6|*`VGlLTur>BaoFuzo81R$R8o6x_FGIdQ)P#8*wx8R9D2S(wz21X!GJdGxIcq z64}V#?dhuTkDE>lk963B@ymG`E#e@#-)0JH^{}FDE-3sf3W-^3u=FzaQ;od_rz)y5 zKCw`UWx>+Q_5kHB8o!d!C zy^0^(cof$`KavDDt7KKmc?Aat!_93n_dX;BY^5?ze+SjIVMwR<g zl~KbNfNBq*{l!70u51oTJt2Q^Wqb=vBi5p+UER~j8p?4DtwHFf#I<~%p(V74JcTAi z1-xpaH-!T;3o)|NTG%)iLg$w(ZeO%94-uGNU@{J_XY%kuPxrdKG+vPnbBR1p%)rJ9 zD3c#TM}TwWPrh0XiFNJmfKrY7ubRmc;7+Q%I3qvg%O<{M0$O$f;Dna zvr^Yf9AD`3BpFjYpW~yvrY>(tUa^}WG-edfQad{lDEweJ8SPVmycSF6U7;CPtVgb) zRmGnWj-N5a>G$HYQO*FlpC|yUvY_wi`#Cmk1)P`e9ruH5D$;B2mqP)$Wnj*VJ!AC+ z;do{XM}n^DmsNJy3;y1lr@m^9I0t4`U4o5T41SU6R$-rT?seoFOyt2FMrz zUxxuFb!#6ZC)Vmnw~<^xlqvMAypuW7~~u*06Y@-Q!&V@5AJ}hR*mf#FDq$dLqslgYx35bD5yd#PqHeuIEo~7 zx7V#x+AH~mi0tS2i1!R&wlWXl0cZI;<+w@>e{&lJ;89(CH{PoF7YKSx0`t>CQYb(H zvVJCQ_@4-N&om91Nu7CzjK@C)h^c~Mg>Mv!YFKd@z`pw48O30NQEi$ds5u(k++3$1 zX1Sb2A#mHyu(OJ|@U7u$u|-v_u{XP)pYuCqf8RXR_c{Gy6sb9zZ5Gr=yfxt1+Wq zFW3_eu^PboH0riry=rb3r@Sz2VRW+kM+8S~%N{v@Wt3j7Mr-`aJkI6SWne-8sl3k; z3P~B+whTTR){*oB_H{r`Xx(?aS=`clo!!E0fd-M_voEV;FL2~Lf|xzw`7JPloxWF` zzmT(c(mv&Pgx2rj9Id^aF_FfrKQXj=Kan-7J45lIEn4!U61+jrtqPtgHd63+t23^! zo-rblbB{yN#mx;)GE09$-`+cuFN=5%6OJD$*Zsc7{IEOGpxYiX7X|Avt@j)*$74r< z`L`+L7Dsbqk+41=n*B@u8%a^CU5@+xPvS34nJTLDY%Zk5NiK7{#M9iJZ?9@=O*}O7 z!~#~oScRDUo(hJ0V^Mt(g@6h)>Z|pj|JO zUf#>G=9zOU2=eTd#&r!q&{)ZAu=VBtS6 zYRQNvAHD;-0+St^C}KevMGwp!se_IXuTxnHlLC6Q>Kz|~Ts0{WgG*!&Tg+{S>RvO) zmv*|Z{8ar86BG>FWN)!ue!gn09>h-dHXKHz-?4*m1+3Y~Mo)Ryd}5?WWjwTb8GUzH zg#_aF%1|=4`N_dbR}n5>wa6CvzyaL>MgFqm!{uPesCjJl1*j}aEHti-c(6;^M0<>C z`&7f%VQWwxlhDnym6T@JQU-Tfr;4QV z3Ikcutw}0uFhC{>?(Lt)buQ{1c(yjx4&;gsZL zX=TVe4+YmVyM&CYEG3ZeP8*#3%gpbyVE4C=G9GkSxhRwiV7iy`>AC zY^{5$(9Wuhc=PDS1Ybd99saNe=xOLnSqP>{3%txA6Y@b@9k}38x0m%8QG0uO(>eMK z&sGLn-#1v07>e4401GmYbOgp(bs^<80CFOwKCY<*KHX;`H{tW$f$i+)7G8ADn-uIJ=Db1M{TpC}; z;3Vg3)m@VAL}~|O@mg#rjLy}|&?|V7=B&h$MQU!&Xhg&rq4EGS{0DQJ+NuSW8wbpG5qP4Dml%SElx&R!*!_>z%Xge-r-g(@C14>TzY7vPsOge=%uKCXB(3Eo9 zN2pDyx1-^tnK8_fD6dl&qDWV#@Ugrv(r^800TY``yC_TGqszt25lQ%%EN-v z^H(83XUi_tbsSVuwtI)+>CI{a{=>-FG41+7Zv*=O^W znt5eRnH$W~k(miE@CJDLj9imB((gNk0&CTik4?eUozw5Fz}qw{kqS650?Q{U~oX(EzVPqDcd z?mX(@kSR-jKooz$EqJ@oDQ>ElZuPQWxG_G`Q&AwY(&vl`U>m1EX*C1D-(GXQQkfES zeRGW%6XMUhW!ZPII1~!Ty7?dI!VBj=AAW%b9u%18zq-C2cYp8B$kg>V_W2(nA)*P; z2sLJwcF4K8W~OuJdb;t~K!*`y0N4L!NIL%E5C1E>@J|_E`?>{0y0Fvc04e;xPZ1#a z_aTP=iFy4G0OIfX{{vny|7XXtNl{+2nwFZH^XPNE2bY#U)N>A8|NiR%fNA+ZRr4PI z@zFmKvvG6Bp@_7F}Aux3I7P?l+*nC;PwsB|tC(V&8Q%NqQii zcP1anc2|Z4`tnOn&%etAe6a!7=l>Al|M!h~ApC~Zd2;gYd1+H5TxDT)n-mgrI4Hk3 zZs+5^7VJZge7g&n5MYNV-HxKLP0`oVuZ;YU7XR80^`_OP!Sjyy6WUCeE^1|wk>}mDm|3xlE=mJzE0=~Hnzd-uCmm1cEz2P<<%lh^oAcj>QU_3k#hAy4-+Sq z+vR`4S|2{n{MTu>{ofZV<_=DcDfq{E=FBA@Oxn!l$pOP}N!p zRWQassm$-|542^F+kQPfB(0Ps;uuL;Lw1zZcHg#VF5;$w4~Nd$Bh;cDs~mW_vZ?Y@ zT6w4ERVZgr4vq<8CrWRxXMCOe?FQ?0#2g#iuSGZGRxUob41U!Xm$8XTWp06K!YoEh ztXIHu$RA^DNf|NPZ}07cLzWP-m_x(LPPz1>8XDt)HrCG3sZ+6cK+=V*KVNuc{$vJW z!^pPZ4#9TN01 zL>rdKhoSXYYDZneJ)bF{8tWO8xc!^xBt7C>1bk3pM>M1dm6eyIS-2nu6CN4sgL3b6 z3uO@;lmTYAfY>SsnO-!L1rMp!S&y2CJ{m6} zp)OeA-=6`AHr&S7*4!EK>cD-!ZBI4_nDZL(!s>F-7KDll{>ucW{+%F#F&VcU67XFc z*6AcL7%nE~Jb3$~WwHh@bn#~=3{$^ul7!A*g@vW?hD0`)t`kJxXe8b9w9UL@8|mz& zUE9*NT6!Czh0o6Z;`LIH*Z?&=jlU8%xfs66ME?4&wV;Gp1jN^mlu{n7QTKE35trJ z*$vCjyh)k()Pa!UAZb*_X4b^AL;@%pUm3^wmBK*tr~uA*yFl^m#My3%?328AbdPE( zm{TA(TUb;G-%_@}6^&0@=!o_GCtB^SR#1Hozi(th8>90#p7d~3B4ZRLH!Ulh4Dtqx zMrnhD6T-8Jt%H&ZnO-Qz0=dU9-z>Hxdz1hYN}cn`qBU(p?P^*(fjx~ zF2?3ih`^sNJoxdri{rV_HhhM`rt^VI^0q3n75*f_h=x+yA&8}hhg96~c;35C7#?x& zCRm+U)Y4)(X2Se4^qS54Mso3V_p%}22~N1%BD%RvX=VdzFng@`b%tPv*ICth1hSra zimjzP?%eLA1tKU==A&!=20j|cfxIVyuX#XV86DwKBl4y`u=|~;ae|q{WH@4ac@`R! zq&(iyFX54e(mm@edIO8GbYjH;FYr}P+oSZ!6h$#oGV;_n5l{w0|Fa2kS_=xbtBpJC6`Gn=mR|qx38g8amI;1xRFedF-~BAE zQRwQ#gD=B{XKy}`sJ=)L>u+_oq6I9aroyBGki)9!H+2%)dj~iR92=}eQ*3=? z&odG65>vE0dzD++?yEyU>`g^phVHIOD>KFn9oF(|8ox652BUbK{g!(lYuCgVoA9ni zMCa%DQ#QvLeS8QibsTD}W|J^M1pPsbl#pGovNmK!k}mEZxj5#af4NEjMIm!WCtg#V!ciMkq=ytm?1?*od74k}_(vLTyL>7g?VkigY2K?%!o`OEpY;>*Yefw7W0eHvjz}ZNQAf#>U3V z#un7wEj*e30iTq_R$Es$;t=qnZ_wlaw!HbBL8sv7PdE}1lHqA_oY?9wLr86>({Q6J zI5v+6kskBGp=V0Cv!=w>p=mU%!X5P919ZL5Yq;J%?K8j*kin{0OO!IhOpNMs7Y00|1&;=(UUmG3zSt`>f zQTitN(a*k{xYpo?*x@B6FG`Iex_sdoIW6>)0Q)QS@`Ic*d`&go$Znvo0XG2 znu$LOyh<_7#MPgO!H%V{Vkhum;fF&XUF(=%tIVJFqFW0CDvLnz(d-co90tl%l$lk= z&3|fpgYWh`?VXf+MCi4x0{kkq(c_;m40O_h)3R`=7iFLHa{ET-(Y@qpLjmu=N@Y*@ z*QMUVc$IOJZ@#c07~@{^M^jOS#A>;$!CZAXkn^d3yEoo0J0dSgaI>J^ij$BpZe@iG z=9&9W^{}9+aah$q5U&p>$r#HZLQJ>mcoDiBRn>cQgR8svk63rEZc(Cl(9TIptIbSd zA@=xNvlRdp)=>2F-6XO4i%uC#MtfBU&Rh(Ek5ly|vYEX<@*4z%tKaCMovE#8Dhb70 zaRVde)kFd7Ff>jLK~Z@fNldYS@j%o` z6p@hzA+{-84+ZaI=Z5KgcqlkSP8Gr?ubd1TOxRi_{@D&Hx9(HEy&Aj%i<5$>I^iWa z5djE6UqUb~u3WPrL8s8{8(22g;EPJ_v&81ZsPCML#F~+RSV^?dN>v>d`v+|y8ZGvd z7AD7)x2j|Ny(t@Lp(isgT+4hNtI6Nx0qP9q(%cnVeWp^0T%n;G}qApegt(@$_HuC}F(& zM#oVn?d@4Lw1Z_7`41uk8u+Dh@EM3QmjCt*<%TBE($vA%u^OOw_ zXXB=0Q`z{$+^4LnSvQ=0+=Ma91YM_p-AjlcuY$5{fof_Q5fYV#d6elJmq9~GR5=T2 zr3+nc{j) zPFWR>_y>1}gdhwaj0XjsKmGa*V)fN!T>1Lc?Oc>mMh^Az@=)ll1%pK~Zk0XpTl$FM zbju`I1aSe6t%hL$qDAq-ILP$~JA&TW(p2*3n^YT(M&O#`uF1G1X_sC zLXgq6?_ikSh-Nc&NW7Q zUUjoiMQi^SdctRk9lr@>8a>_&Rn}5WsY=RoNmrOUf>J7LAFjg7V1BN;mK4~YCv13~ z{M{+45rn{A`Bv-X6ckc|#L2~^%HJwm9g*M}QFGar3}^6qL0)5xNP)y+Y-5MO!vj-Z zZcWZ#gTP@pbjjKpnE!swk>Rr;CHH`cZa`&n(+W*!+S9YM(Cx=C>>oAiAG{0YTWAIE zpu*CcRUtY%jU?n^+j76Ur3>_)5pNIAwpN%zlc?wQC({E)BXq7EP~i{a{ssYLWw*7z zl1{}0h!V54gBYguY}oATX-9b&O#%dSmkX&uGSVbhl*$BO(bYYEfLp+zIsqn zW`w4PY~~Jn1wJ~AD;YsOX^3lctJVUqM9l7w3X%1xf}{s=+En6;(15`BQEaB(-1ktr<3POR2d(^I)PSVQl zm?Vnruq`J(-Ar!?g!LMnn?-&X6Jy(i`aUXHK0n9qC#?SH%uG5=ip=iTa=hS!;lsgz zC7H3*qp<6H@_r>OlZUEp%&!r(oe2NYy7|besi7?{F4nfUM+1o79H8V1Aa#`h?bts_ zG&Z)9F^r-8{!Pcq!xK?lOi4&ch)M_;VJRqvVF3#$X+;%U%N-S3&YVQfA(1B4b8kNb z@tqf$kEzi*28KaH>@d0|al+Z2F^+~<4G#sXt*Ns!k{et2<84KlRVY3Q(v)Fg@nOU} z)v$>kab;Lt5o1w>jI7KBS!(gGnU?-dgsDSj@>xAR_id>`YYcJPWicOZQu~VKq5!9u zysxK~3{mO77#h1Kwhd^%BugICc6pI^m~OB-K-5q$7JPMvNg;5F7!+iB9dqajt*^kJ z=X68O&}M;u<1*b?hLJCsvx<{P7FbhWsz%U!nVA2G#;B}e0<+mtG!zRQ-K zFabw=@W*#%H03{Sde=4xep{R`?;z9)X+t(C@Tj&5JjP8)S+qhGpY5vNuR%Gt_hqc- zVs*`<2tZkfYDLF*i7U2P_WeJ6y=72cQMa`j+}-Wq?(Pl&g1dWgcXxLuxI=IW?k>SC zK(OHM5L|la-dla&{;Iw{|AAesv)5X4&S#7LTdT(* zhv7hmoTd>!2_R{s0>t_Lf;X9OhWAWCENV(z#&{juw-ph`w&%K0bkO#baNwK@fYBzb zW#k!%Yi7|4@z;fMBd7_|h;Ub^Vm0f{aSg&A6SxpLE+va9`4f-mq!c)(x!#mjD0j$t zl2#Dsd)f4jF%!k8F(;Q4_cGwO?jg;IoXA^eo%^ZE3@x%0Ydkfo&!#2zRpp5bLZjC* z&k%E`>9KS;-^rBicqyDviT83asB|N#z@Vg#&R#F3Ae{en9JMgCE-=sYqB*QAy815c zAHGsat3$J0D@VF=#+M^);cHw8cTnjZ$#hmE6@KNhl<1<1^2Hu*1vn^GV`iMDPFS&z zklRpm(qv*|QQ0G=33=H=WGmB zIO9dW8qRU%wGcZzu})is8GX%#=|8~LYhoH?{+>VW0NAzx7ltPF6o~WkiVD(R&3a9Z z2z_ZP4TQU|^JnxjA>^lc?c}+Q=UA$xgeil+^?@sQi!h z3X$r;W>L}%&j}@z^V^NDZt&9RN-)V&8XL|&1Ym!Jp_OqmPzF#yxPLYfm*0fOGGQj+ zsao*FFHjs00ab5YlGJ&{u759nQi$>5D=epr49fW-*pUvolIai_mk!6qmxW5!dN5o|Hmovu%$HwA$X9SftW#AZ>L9R&vP4e3R zb-V3~h>Y=CGKAFm%NH^A%nwW$B@d19aR5V){9>wV6`ENvqgb zi?L`E?)nVd(^Li>Cj+m>c;-~PTUAa_SzJu8ats6L$I1?MoPBpyHqvPDGFIhR;7Qg0pn;ZK3X6e&~Rr&bO`Wx+4NOLWeWW2exXZGIAyYu1Wk)o-f4{PZLZIam%Dx4|*c ztWQ+XbSHU7*+jvuK@=c$IpY%2`^XILMmfGHZU>U$mo0V?;$@^E!nfCIvO#^M4zMR5 z^04ye!Y>yY;v3WisxBL_bM0VQ7zB@k(?e(YIIp?(JO}m0_f*yKeuI z^Q>eJ{+xpwi8kC3rxc#dqd8DFD&P!S;g)P&$x^bJ8hUrbam9GKR?swhF3$l)iAT6} ziNyqtDmGaF#`{>e$RcrfiV=JAf=zNPSYB>jL<|t@Bs~&z39_sEagtp!a6?n4t3Y7m zlMZWL_z#RkCi94h!c{%oKW(2DI%RNmO}-2nQXepq{}e@v23=?9P+4W41onoJy{07i zlbkYm5)XF`AGnr}Ta&lCWTgi07n^{tt*k+7VuKG*72hB1A&~+i=ul)WC)*%?(p!6O zc(_XJ)n;(>2qGK$NeVEWi0xzeSUw8@7B7#98LhqMn_qoMODOG0%bfR)BBwEKy|9MS z-j%4{_q!*dorM*c?trI(dmJLBI?lMDjYw+3%)zjZx?BRBzW)4&U&sT1u@wt_o!i`u zR}_9r1-X4o&W!RocW`7E#$fB=f<@{Md3^=<=DP?(z`45FmjzNl6W>$D#L+Nrc_zB+ zHPr)aVklD?E{xMB_%$Z8@qLguqq1r6`5rfuuy4nlK3kK=*LD-e4$$2%p`l$=llB`R zwJ57MHFgT|N3Py5cxILN&EE2wYpfbMJ;6KGx(lN3s3t6liK`HVnJ(hXUost_;h^eg zdXN+w!^-Xxu=pHu-aeKqItF+Bg_tC|&U(Zx_l2aj;*YI8tNl(rWaQ35fho>H26Pir zba7c7iV!OgXUHik#5ha}p^>KSc#JE!(R`aI+P0GQNJapTGF0nqJP6wf){tZR((e;_ zvjyUCLX9-c2*{xkDUU?fW!=}q)#^^y!F>j`V5`+S@K&N_k&I} z%c7vFFZg5U#kI1L_unqs_LJ)$(tT@K(Qry9uNZ_N4~3pXU7>#!l$FKS`9GMxzSZ@F zdMwg2B;N>$$4wT0Piyqef8qnYH-N)U+)S&DPvkepCsSSDSP=Pv{7g^K91>iK`x$~9 z=HxZW! zfDD_yYDDh>@^F5Up_U4q=HS*_^6JdsUd$6)a}YKXj&5K^zjYtxrz2#%kkqI**=+4w zj`12oI-VKkq*d?2GXM*yBHrw%l(rVy=7euWSkh$LQGVjUeugiQT)j!BEhBXN1~?cO zgzS~c+^n;?8*nhrjna%rZ`3(!W1$#m5L=$&JR=m=7zdgs<>r=>^5CD4R5*#9@$ym} z*tHCv4d7hOfWEfCO(~u^PEnvQ{1FrN`55Yw-`n8olgjspg2Fn9X$D4nz3-Z@ca5i! z<2J=mDBDW{7a6BJ1_s>Mt_p!`Fr%k9j&(;{=!BTSRrrw#hf!uTanUKXxq&KA4KeA3 z&slnM4LEt)cq2&cXxqxTVtU-WW*Te`;98Z@cj2L+e7fuj`gL6evg$By?@{f^ge71q zr)gK#^QiYPp~Y^XCCyXRO9 zC0J5W@agUC?dbTpAIC5!BsZ4`NcT)kO-3Y;l7fVWSx~hh7V?$;C{Ob8F>Kh7l$(SI zAo#_~_4qU3gB(2OIdbq{hrFIM#HVbT^!x>VqJ)|Ob+WM0l!1~GkoxKtOL<~aX5 zQFPQZq~*^F^11*p1O!uDVv9`{1=Bl}MZpo(nOt zO(X*E7tpbOL2(mloqc;o`iw0pKG%YCy`qiH9cxE2j;Z{Y6cF=*%^NC#A|Z6w7n<9+&zi8NbUU5W9Ft!rQCNpbvm~e}97n6r~4O zPT0Kh`Hv(|D{j-nzZClHQ<+pz9ixS48$T=6#|;y7DHWmFs&fAvjyT-tCX_wwei z3WMA&7UG44WuU{;S^8J7Xa=C8c?W=g3b&2Pm7G^PaBJ(dB(`ijxZ!7_K`&&J6`rC{z!YDp0%G$ETi~d~xSt20WGeVT0slo7=UDN?K8{ca(ka`kd6yMC9%d2P}+HH6h8406JLce5BMuuioT9^<|g<;s+AX(BI zp2Y0E;le#&Mc+B-1ZW2uqqYmdY-gby@hU*iiCjJ6tBT0sHxA;1ywC_f%%kaZYI9*o zt7FLFU&x$JE0HTl+PA9XN&B?0-5andYpJA?tcerpI44+9@8V1=( z;4NTBi~fe=ND8x)<7K3Iz)^O8{dqgwWPunVb-+lrdWW6bWf&+BKJ>~W@YkVl%Y8El zEzDy0g@;YCZ#R0?@Ps?0^D}yVY}Llg>g%c+Qj_|kGH2VVx=M9HLp6lW-S7>o3LZ=a zeHINK_Jc7lpx0wmL1Ew&xm6@iveUeqV}?`2zSZDoBlS>4W6r)ev^{gq$!HZ)Md+U3 zPE_G`mlnVV`LpUkH!NZtjju#xZ8mNDHdW!cTRrPSX40_Uegi?Fp8md!tnRu!c$<`TU%N zsw?{ziBKOBpH2r?42CgkBkROHdNno$*}fr%2!27v20rPiFNzU#jC3ai4OYhQ zQcz_aq_Klp(|Xv~M+W`ER)*?A#56^L7!9IKLNK-FiwOnabsxh-;*I zfxWz1pTa2auL##!L1};6Nmml8*`N~Luy!ghK}gC}Q`!2Exp=lV{7UhtRiIm!KSs!q zhz#);EY_1)KGfVJnGo$a9?7B3u}D~nxV|dXgFzD;(S@K!BGDEsr5P27(@b8=TTtv4 z(+OTiZ^P@s@pi(-)sypvz1eYa;>150IZ3vIEm(=488epU!N;wDuxy-r3ssxunT#09 zDe)A8IQzt_@4ji+V0aSlX66MLPZ{#R+aVKe&70E zA-=K-#X3TXHUUTnKfe;!NuxV?wrV*!Wx?V8=@V44^(oYpWzipQ1T|jDEXqmYl|P^v z1V9BY@AcLbqUSCSxMBPAx?-E)=Hd^*UU5~AFvxKXgWQE25#+;>4he2M)w~~+%ma{xyF0R zg%z?5Crl-?Uo(WX@{=6wg+>sRC^?Su8dw)4$UDU7Org3lG^IP5DW!JGZh3imDBir_ zRC%3h0$=V}_34Q@;@Ped(N{Ty5}-zF1Bb>qVC>cJ^jlT$SddU!_#hJiW? zyB!s6=0pmof~&HZUpY1AL8l?t+(VLT^46} zBytL%umlAh_-FGkyrUmbZ5|n7GK&!It+z&mW4nE*Nqf~x=?s5*6T4#}mrR;<_m?|? zvW^Ma!6o(-bU;nZl@Vy+l+=K^_La`f*eXqsZQVO^E-WNVnAIFou$F=*08AFN>x){q>+GRcuI-Jhm#DXk=- z!S~z$vV5E3$O)4#HxswOaJ%q9Q*BSAnT6mZBP;Ie+FPPWLDbs1l4eiTlV7jF&3KGU zaUF_;sFKJ$TW8HGTh@&c4^qHfALT@fmpdYX9kzczawm2j+;!weXE0H#EOMd(OnKIMiW?45(TOcDaum zBbQ{qw)t3@%y)MNNL5>i`{juFW(Ri=`y7HWDm;5sg=>%AXJMaAil@qne};%tJ@WIz z)P_BGta2S*`C)Vl`v@ZwDM;%dvOai4tZe*|YN>erK24o#<-{Mcyt$@N98L!Vg8~bZ!^Q&^t`_tr&IsU~+TB`MTPNJsX-j6G9yi;n;`N_+vFkHdUyEzHY(vqr&k}-WMktsl= zhAe6?N?Tt)#|F{byd0ai96zV%o#oBQ`A1A-JJ!_-l=V<9i%0MmzW(ri`46swbbEVS zNnJfGH5K!pj%~f&1*Q(@;^gKcv9Vq3D!YOE=Uu@c`i2KzLf;YF(QW*Xy{ufN^R{}~PK8)#^pBQi!2#5kG-DSWu#sUIBlmBD7 zg7EJ%fr9*xGUWwQ`7UjZ{@XBJYZL1Kt&zh1efDAgrGM7vfc_iF-TeKJ$h`zm&;LmT zy%7xdra3$~PHqKV-S?5u)rBc3dA-{IW)I_!!`wm6#01xBzcDa0 z6nbO}{CGMs6EFxGaP|gj-G6`Z|9t$3hsa;*$U3$ z*IRELjo504R|cRG9ITJsX$ktp93-Ogek)A3Li6 zEVuwzLQK@Q0V48LkRCF^gvbAo%>NcaApJjxW3L1}T-?4!iy0#u8w6Tf+LDs5JNdun zuYV__5@S#8Uheu_<#$V6Js5Tg&;j)#IX5qK6jaR?o6kKe{A2lyf9T-0rRDL~#V%WQqu+R<&!dGM4#+Ql(TuLxJrXhqKVeKfnpknb zz`%+ONlfxJi+YPcZ5MXFxCd<0ScCXm2D^lApiwTvBBv3Ct11m_^Hr$L?aE-HjEgv+ zph;W3a?Y?!TE2rDn;awg-C+tg5>lZK-=jw_Ak22Qk**RBPOOmZaVT%2{1DPfhjxp5B9J*2>3>)1y9u3zkbG6$gdnEUqbr-DJkR>ZEr0kB25=S^baZUHsJY4!jD<=~s*t}gXrd*3 z-8q*cHHGGMLUDLUb3Dvp=W>aWkkri}1;c=?bZ2d>EaJI2e zT=I6^PI+|W|BwTBhb8JPR4nu+&G#e2M+8I$+r;^xVZ)w4ZBp508Y6EC{Bw8(@(U`!=p9Vyi)Z`aEm;;Y-(?bJ$^@ z*!9gk9kV;awVLE=BA;+ACV(%TlX+6g736S9ZmCc#)+6}g zO0{+_zUzEXYhs|dWGn}7>Fav%}=CkIYXH-wmMis862z2SenT0kwzfozSJpy5fLCO(2= z4p17Jy5r_?sV#k|#MjdVW!+n-wyHcZT5n-2M`Jsef>@*!Ine)H+Ep(L_xHZ;3hzY! z)R((()51Y@V1l@na)=}!75zyh?ptvj_j+Tkrny`Y<%)}A4x^;18khX7)#-2JZQHjm zL{)=VlP9F3ju=S4=UBQ66J9EK_j0T;O9Z5Rt+|%o4|?KI5#lOl*&6$b_r&;W=f9z# zY0S#p+bbTo6sPnPrXd+QsLlsH_&Vlp%lkq1XzPJsb@yXANn41_7p*S&9r9c9pd z?6EwZ6Z0axsY0(akHzN*uwlM{b|SQU%}%a5Kv#e2k_o6(=*blys~;|!N+6n$DRJEF)ZssTGXdHT)CPQM(5nQc%3U>(G#{gJcd7h zz}wkYrD{oGmSEjm{^yp3U7DV!C}#1^=L!eatR{N)Oo*dYI5gJ-625XG3D+9N?)Fn` zGy;s+d^+a(2#oNP#Y*zw)+aLl)<*BBT&en7^xy5Kif4}t?xDf*m{MM1YvU-xW@(-~ z7EnZWo|Cq~xa`@M89vW*cif_Pcw^^H8)<>)cvgk0f42$ztAw|h)D&`!Z0Eql?;C$$ zZjOi*vHKwWh6bRmGW)P>9j4S^q;1Ea}VmW0Ab9z-I2q8+W6 z?-$?DX)d%2JQ(lH21R~BD${y-zL61npFGo?8B)3Pmd8Fsl(loie;L1K2u-zHw%oal zrVbP!=WQh|HH&_XMgKbTEH1l=`L}WJ8IC_&*0OFU?CI~Ht;$mbTNPyTcEE7j&$H2o zxbn-EgD*l^kCj&OjR?&ULwg>L6qc{EIM!d&RKw95uK(z##Fmy)uJ;BI|2veMnueyb zxt(6_^?}Hwh2mQQK|jSuFELF`oQjHy*upR-T)pnl1SWs5!^60(Gu{ndnr??^VgGkH zCsZ2NgcFVnqZn~Q!#O+)Bo7zdo{nT`JLAs`cJX^+0I~W71?dalq_-bg&!ZR?d}}QU ziO2GsFvCHn$fh9FXjkm$k~D}&@jB9SloY$uKuC{o`H@@0- zsubj88nzu0=ZZ~q#sjE60A78`%K8M6mf-l-h5o}^b9ktWwTS{o>?WPHQYvA*kzZFg zBRh8(87s^YrUoxB@z>Sp-Lok3*IIhwN^aqZtO4~LO&9N&jL|`nIX~8BPqOf-P? zkoB}I{q!>0+$24=mN#f8Zq+8>Fmfh>ms+~0%puL&AjaT&D1K4KS2?=LrE`9^?b4dr z^`YCZE1K0xBxcY&J22^VCb!%#G4-h;mwi+yMywzI$0h#u4DlioeX_JETC-YTCHNnp0w#zOb2MI+MEGDV_NZ|Kx-_oJUQB<;qr zLM>dIpPF^y$Br_n{$6pRpD}HRXCc=Hy!(WvoyB;iB`_53rvzaYqKa)pzNXcY&^U;= z-r0KP4|nDMB@JDr+1WLGN5qDcFY11&mjBhKCP_5hEo<_Z0S0R>z3u8He^;{uh)NN9 z+<@sFz5IF(+>Aa{%w2lW4o(cWCk$V~qI^v9STEA==8OFgp;bsdWN@Z1q=s97TM84- z?LtaPt`YpR+NtW;m#jjU`vR0U-al~kVTy%?#nH_6)?Jd57$&vnlpK2wTZY0twCJ}y zV>iD7%RKm&X#Oa+g}EBK9fe_=n6;y%kKaVr;g{T6n6_X*v;FW~;%K;(ava&JA_c3v zW16ikc7&TNTi$xDPV%%Usby>nsZyC&YQJZ-=c8sb*(BvUI5n=Q3=Xb^;>)WUwqK!1 zKAlq^#Hr4Bi2KhvetuyA4ILdkARxf^=I3|MSDrlV+ggKecmUVJ#mAo?$OU}a35kdv z{A+7#fn+MPmZu{W_w69p@tRibw zyV5Z?Awgwyi%n|VuO;vsdu^qSC}JUcTel^U*+Xy_HIv~HVc=@N77OScqQANMt&j>0 zOyARe$&2Vy(uA@e3SUV1059=w(X`*s;Gp=f8svOBc8C z?{N#w53dqFo<3mUyoeynIA^yLfXvX^acGi5b(&h5-^FHm9V5L-8Pw|%??mF#yaK|; z_;kcEV^0=qdhda6(6F^tW?$$L*-_plORxOjS| zwGjj1C+ih_#f*Lu?^&H*LWho!VqMAs7feY3W-xPnJT_M3BnM1P698@FQ3I8}Tuatt zoWvV7Bk5F*wx^e0-0%oivUkSXGr5AnaM!P+0iEO~^&O%Y$$DHmF%4>9C%$r&Nu=eNSszN11AmX z{T>q3rbSj+PatEw1Uqp`m8%3Y=Y!v}EI{FOvC3#`?75CC4HCbP(9?Znw~S1KmqQ4zJg^hdE}{Z0u#SFSji~36 zxW=Otx3=PltHx|y!gcy0VvdR^E`y8#HtJv`(rbu~j{JNZbyUED;pN{pRkVomym}%25ESYzgI(iKKr^Ne3V3GzNLx(7cT@z14g{f3 z7Xr?L*5&xT{z>3`c^nO%cil?D;ya{NpXp71y0vX>+Trjd@!6K_V=+v1T`@d?F-Th| zNGhNkD8e^6p00(iu^KoV^62SYvM*Zk$LUTsu-y~FI4sOcafJ@?{#T9{#cJ4 z__wiSa^ok2W|l6ps8n}z3ABntWz-8;@)^grBbh!{GedwH+Y8Macv5CP_lO)c^c-BV z(jB$cg#T)fTLAPJHA7Dqt~64D6y2#k)i#6{!;XLPN@#x}D{?iQJROG(`(X->EyLf{ zI0q(mth@J^adh_nIx^G^_iWQ!v z(dMxXZ%$w04RWf8Y|7;_ZTj5faF{%p^i>v?%6qA$6`nu^%V#M|pojk;(8=?gu%#-Dz@^`ikVR+eTX`9p4?~d448;v%Idylab~Jp$Cgxtb zYT)GM-t5sGxPq@|iZ^4I*`-o`vA-lmpVHBO=!Q2mG>7HgP%9-ai1hcdL01(OR-Qyo zXa4HG5(C3&Pr{yMK^W{Cpj*p8FnqlO#LZ$XKScIF*i=H03NPOf8)YXf{f-f28hvmt>OyyFY@}^XAQSiRF=?tY zijAEiP#Bo|xO%{3RpaXCH3o{;k*n(zNasb7(vwQd{V(EmJ3Lq#`$vsxiKlZrA-_kY ztsKaauS*a-7^2K`d1PMtAt4YDATm4s^ji}%4@G0}H7qJ-!|L$9x6I5GRS3lHN#qQU zs6)}Sl_#w!k9~|L<$E1*Ww&j@N>W;i*?}1`F#)kCzoR;XX0FfWz+Wz$e`HW2eWZ%D z(Qis-HZLm3gskJynK0Z><*kVbl7b}D7J!NOfL}Tpi4{UIbo)r`YIGlo|{<0m(Uc3XlV0(#=ZBcDUikJzMfB)zN82P4oba z@S6wE=r0o|zZgADUO9DU(xT83Q$ND~vM-MC69WSW*y-QBQL8s4fu#RLA6b!!p-(fReWL-$oZ+0@pB=qa zoQ&WirZTy-@bQXE6z_^Ga5k~O6jwXyQ)8Mod6M_Jii4*%GbnSjg>`<`L$$ zSNiRSq!{ckv)&)3gX8tj23_2Hk@=i5oc=k=kJjZ|_R6f_X0=gKUN>!Jc2K>aP-yhp z+)ASQ97$<&_5yoOG32&P%!|TDUhmZ?B<4r!)!1x7%?~d z7o{&B1Aa>zH)N9(MorC=gqAie&pG~~+-T~{jh1$tb6FiSOAzO#M&&Uk1#LSMR zi`p4(HeZHs5&wZjA5cbcO@8gAT$Mm6xO>^Y6I`E+FRY|W@qGCg3F+~R# zEc-ROtwCWKvX&;|;MPd58N$7SfX+|ZF@E*w%7N+aRA1fJXWy3UzBtYrW+G7oPlIzs z7(-1L;DB~3on@U8Qc$`dx%A6UuBGfE#>-SvsnZoAEEd^KY0~EcoOi=0aRC<~Swn%0 z2dRQ~Iv`E8uyi+WwIL)|_{-!%FGJ8u+1qjH;8QCp>0yL1;G4{kQnjMvjl^_ei*!dZ zy=#x1@=;S)?6g~i2oJM-y)KFL+#j~G#Y{dmid*&&-ADNlh<%&aBWh#7!t`fW%F7hR zyOTf3Y3)<%o%rm=Grsjnhh=t7-^3>=&&Rg@bq-AOw<(roc2YBs)(2_QAvGz!GomgQ z`3LaOt?B0eKmDjW-dT}=#X@cjR!KYE4uYh^owChIl7NlE^{{*#YHalk`KlyNxPOJ# ze#-O-DXT*_CESme1etHCk~ytWUj1Q$mU8Y9SpW$N#BNMWAsEO^;Z`OHk{wLh-uLSs zL!;wsjODIH@cC>1f?05#aU^;Q;!|=_T*F`veYGp`vJ@3AK^=Sxo9%T3^)pA$vGa*5 zmf~E6Z&T6-z0_sW24d{#8z3DT={(0T(xmJG&lDm7GKQ^8hg2w!Gtki^y^7sarZt_`ZJzJXoHB~ zpn?*yGGV+Hwxl_*W zUGkG_8J3}idC1W(C`)U8lEy3zQK-7NvXOtotORZsLP}bAo!2sc^aw3M`k3K`?lmQ+ zyB$YnENfySW1L<=xN}A39{N8I#p5}zW+Yt}?>~^#90dZ3ht5Ahp4GXX3XAKR?^R{w zBN855eKVJY&hG2xtxGx}Vc1;yN}#v6kNQ}d^cXc!A}GXg0LQB4iF4Cpobg9p#GNY< z(+FIDR9eodWiI*E&BTDF<3-n~h#?}ij25u03(T^kq2h){a~1i=M>1b}@nANcE3Z=v z)qL9q_8%AwM$Rkl9&oeoj);@_dTW3>25!#q9+Ho4WQ^EgU{x+RBV!pp#^&&<$v;3l zRgkrgA^P#byg;FtS7Wj`@0)oj&#AbE3|2U@kmEv1Xti0_n8kMUR%&YM&fnAJ z$0-MY2n-AiPahvsKYb2KGtEhxoZ*p0f}@EOl5H>C)L+$e?QJ0!fFP}+(3ZxqE9{3j znGT?7V0TW~)Dg+4;9w{^IcCJ)tiU2b=?WYE&mc6(THb1UQR++j8*|+$u$Xs0xAxO9|@V}6H*Sx`eS45 z#@23zds$VHp`oe5(ElxEplY23R?AYz{{2}~iOVS{2H}a9zn`9m@XbNlFtp1IGdxR7 z>`lmAG0VJj5yGbwp)ExiHpnu|PQ{dbfPu1L_vvhG49MSY+7A_d@4`26K5gje&DdcD z)}$suLwxrZ#Zi6~`5o-tkxjFI#{Z49>q1cU(g=fL-+o8El?Ke03H~BWgqnhYG3=qh zdMk|9JI%})$z_8DI2Mx2Z<`ZP*UuSk?UZ}%u2B4brl8*X(hIQb;D&ce2@^P zJka)s;!nyL2h0!e8~`xawBZ#6Ui=cASlnzbQI$)|#fM1F_3pU&l}0oT?bdoO;~-r4 z^#mbfEoy*|mxQbx@-(LSYC)y1JC%W_lc%_{5F9!FeoQ(luuzhu47pl#EYeGZ%RWO3 z>-?~qWKJB$kd~mpE~$eHWSy_IQ#R`2%r)q)3(urCC#7Nn`+jwrV6?Rt6ZnbvX!99Y z`0Wecb$hcG^;`6QIHa`hC@|b5-K0CfLJIC&MCLbh8!8b9udJj!v2bTubyS@2PQlO>} zzZK#B8zri0_eXL_F9)O#9;ZNQ&)N7(xCy91a3KxpDf^^c_)1a%TBwcynPR=)Gklw* zD!lE0RcA6~7O5{MBZHcBJJ244fdc3*V2;Fo2@>TpIwiK7$M>|qjhl5pLDd?%h~iKl z@P6rI=!mXm56j-YT6hExFFelB(jw1wvG{L#dlnxhv&#GktE!7jhvsD(*qgr7-@yv4 z3c*R)Wq;NnRF!JX;Q}Nm(9U87mU4a>U%EC8M#NpL*69g;yY6(po4=bAO?jhJCZk&)EHyN}5xfoIzMht5w2k}u%=SVs zM3qrSNxfBUMnE+k$|mJ%R#g)6Z*uIW_`d`X*Z!Mv%`3Unf*uGF_$<`sq@~1WS=4M~ zZ}+YM6A(<;kjL|Igr?D<%!V+^`s*3aquLzdZ}}9t%x$LKh8pa3!!ER%?=*e3c7#2z zZ^Q-m=Q0D21A0#a{?Es5&ml%W#C})}^apWu4h1BO=&PHGj%%NZM41WtG2(%oi2LQq z-ISNhQfI8`pHot07R11qoOLM`zBGmoHg;lk@?Z_24|hmC0tWI+|88TTe)52U zcs)53j>roUUXAcZEqB68!g}eE(@aJvu>%!X31Z-nhg;?w?_k+8ZMC#R+aJ1tv=P#D zh|})BwP;=s>|<9KR}C9D=a3wnSCh?2qD;f7!wmK71L#Bc|Ay)S^)e=AL2obd;Naln zNmbp})>b5-E*0=gLu520)@tt@TwKItHs})Z^yE4AlsO9+b_cvT6#MigE5Bj;KddDf zqwC77V{8IeN@va}wrO?!)KyYVparf9*cOy1FW<$H-=a$=U}ZGSDfL3XU@h#tLcbvf z4Q@b2c&E^63cPniLdRh1e$tk^@;Fq-xBY64zJC zm%**w;Ykg6j*+<`fK~6PD?)W@&rn^!Jv;6@l2Bm7Y#N*!l-*D&;{3JpRXbs|t*ucH zHSx(0_%Vn45`HM(3;6jExq_3l;3;vSCD=@?V7-hc5oO02$wc*fWy z2WMoKgq@g(()S4T4kLI(snr3f)&!>cK980)^fUzCKLa;1<=!tP!uJDGh6Yk9qDa`w z8ffP<5T_Z|e1CXkhqO7DhZdf-8IUvwlq5mCM2nGpq@S$~`^M&xLM8%!ui%@1-8{US zu_Z6fq_eLY>oG;fN;sV4&}C&!&9fgei|E%DfdCf1Igcy*=y z@PGv0B+#H*H*oWYM(enfY+wdN)rwHBfZnp01utnw>^gVvF`I@3&pQEo7yq}o#hbfM z7S)_SZl-yCPKZZF`1>HRp%W&4K7^PM`Y$!onkSKc(4W^6@}tjtf%KSwDb$p0?1141 z_L*VREcwY8MqFuW4X`rA=T@7EtXG4m73>v)YZHD~>}tU?RSJ$?*(Jr2=oEX#EDy*` z<9tPKPEZZ*KUjJ+Lphbjq)w9y%D)D#I^7W70JuNUZzFN@^Io2_2ptXBWhe35Ap27=*NDVi>;#PZv%z84E?!{^=5N6i7?8SUDCi!f8iM z6_H*IRuQqL{7_%YP^JL)Ysw*W2QCWX-bnhal1;+WGaxVQeA0EmKn85PF4OMcbhW%= zM)DoMYq#qDGr{G6cJ}DjBblcOGd>D1Y-Nn!XoF*N1FPha0S=jLnb3fo8Qes%8 zURz&b1&^S52KZr04*h4uKj zn{bSx|JBTll$#qTfmk^7=iu5boNL*Gay%F(*0r4pXkSl$iF#*%mr+eYg`7Jc=T_s1 z@D5Wrw7LtrOTce?*CygchUlL{g?OrEaCse-?{oSU3M}BQ4JL45Zj{#>a`8;TL%>HC zxauHrFU&Yx78ubGj)_ZK(Kk0i;J*oCSp@D4X3QJL{0s+9+~H_Nv`|>G4qfFZ-yc|E zSvDWRH7OUBgd5!@0CmIkYKjLA@$29RvfVZ3Z4VI3*lZ4xQ61XF!Np*dzX7xzSUoRp z3><2UTU*DH5gx6DpJfh=LmGpZqgo5giVzg7dm9Di82#ordKH3+FmGv$YndNFdy8&c z7Z{(2iFHFIG>Dy%aguh7AY7z8`0_q^SRCPH@5=l}J#JDl$)jfSs~D?(JG?~j(3RzZ zq$&z94moa%iSkktLc~r%ej@%r{IjRi5YI&XwvWd1F~PibbUX?`laB%uK750CCX1UwdYKQBu5@q5x@^FqFf@}j->Q&sGQT7Y%-vS?AC_Cx4Xz$q2hWE-yOu=7cND3EPf%XJ@jTD}?llUFxY&jXDHj%1ZnjoZZRY{frB05=NhDR;Z|e zHw}D~1EfnQzPSj|P{&Wg!=dA5Q3)kvzchLpchNLG$3yiTUYQh{5@Dy8r z1q1(*iUF7aziJCO&4=Zr3;OKNEeZ|>GSc^)TR%|Lif(-@Rj);+Ur z)gpEW=)1JVA>2Vj>D|a)2kT1n-JU=kG{L4Y>m>^yP?~O`6ce3?JzsD|@I&PPW0}QR zoXNNyl}Xt2+9+Z3n+W@M&q;qR`d3qFgY|5+VLeT<{j zkN6A%F&{9xQ;Q#mGi6aHJoNpa_c=mPrpIj=MK=|w8Dtn>RDEhD?Nna)K z=*ZF=?E&J77x(OVnD7@pg%bF1-wFl0U1(cL&R<%@1QrC8x+&x$H=}rL8k&BKvR;f| z>gwecej(TDC#S(Xqj>Hu*mD}AU1rsG$JDusS94qHToT;9FqQbN_EvZTWZMYVAEjhAX z`2UdhmO*s||JG)J;O_43?gV#t3GVLh?oLQ@AUK5J9^BpC-QC@JcmB8P&aIl6cV=q7 zbWv1sPVe2D?%n-c>sfqhGZ16GD;%?Lhc<;1zvs{KSMW8e;E8KP_1)UpuV(Wc{Tgma zdgrHUjvo><@^hOmHl>)N-nQ0B8DjZ%XW!0k9fe)956SU3cHiyf^SvjKZc2;KI@uB< z_l5%M?qjo+_PFmfR-C7#6)ak6^MCgGcd8XUc-|pKOERfkvT`rR;|&MgblpI{BHp%< zK1qHLZBK)^@>e^wuK#I{@=<7z%IuDlZZgl2-|oZ9z8F%ipZhIjcS89g;60J)tmF8A zK`F2JH|DIWJ4R#=JlDSRLtzAx?!sb?C*Vj6so2+Kuw$v`p@%*r2X;4!lKdoD-+njE^2?t?Y$SDW1DrDn zMvVaJCPITv0>1Ii6$8mXR=qavrrh)5ZDPX?@cN1pFAuE&q(_5@+X{%hn)>mDS^mDF zC3d%-Mh^at$Xo|dM>pw_ePL*B=&p9JO7lnDpQ601wcHQ6ei?~FDX0kMy(qB%QM)S+_@xtq z6Fibung{yL*hk~tRVHZ-l_Jp&yl*=wAN6gHFjY9Pqrbr(T45#iP2D*TL& zwY7n*xwd|l85cd|cmC9ceUTUN9xS|*^_GcvsE_tn?|?0tnCyw4;(o~Qe3_%U1v)XV zaV2ur9p3a1M=+pwkxRq!PT?F@)7F(7XSH^M^iB%}?QCFCTq^K!;w5&%DER zb4L?;3wx=0(O8M!+25=o2m++0itzvB>)yz@h2yFxu7Cu4Q%dL=H7+g=1rHAn8QC-S z2Ng*xKk~Ag`yG-|HU>I=D19>9ALuf<=X2~5Fdw$c$hAR1>@>r(^tPdA&n>_!} z&A$Ll0mGj@{#fq^;#Jf%6Juju`XUwYxw$#tj;1Ew=N>Eth4`rGCU{F?DZPd&QEfdk z`rYbRlC9DEPPqw!rqGLtD308q*y=1zc|v}-3+6~75uVwQDer33CTbEi6I@%t_eXSj6xt~^6 zRv~N!s;dYh{{Qf~|DnMdgm?gL-~R?(eStbQHgCJvytja*z*-MIea zY{341a3J(fPh-9B^jP`jBqt)5-Q=45O#CoTP9**i#8Xg!P*zt5s^b4&ya)l*-;suB zJHOk}I|VT>^F9jmV%yu3D{E?6{1=G(pJC#EYob8A5!956j74$U1Sg(n+6jzx=-SYi zG5ddq@dg0`s=9^-aymLVfah0K;n2%GJ54$PMgjE1`5NUt+jHg0^Jf+S&w137Pe3&G zb3hz;T9H!=1?jB@0lLcmS01W^M4^i^kR4;#uO>D<@EI27<%hpcnk+mVF_^UHfH_iz-m+&fa>_AuTmNLCS)cIb z!VxU7He#yl&26lLZK3Pm&d1>E3k!=t#28^UfB#0;?IQ!1#4%)`CHzj$%U0i3tp3E} z>9OubOVU8sD;q7op=(!$drEt>_vM2khKZ}QYU%{J_FmLL_dxd}3E{`(AwuJZMHfF- zO8bxsgFV4mi)ZK}rMc_(>u1HV;fA+s-da&259csH1~hzAc>LS_;nhXjf}58vfb$s? zxio|tCtpdRd#+_!#P^MW{B9eon7?0<=b}veuskI3H<{fkI?EGcstjp%WZD&J^Qm%2 z*A}f)`wbz2;E%yCI@){uKBYnR})jFv?xW&cY*-K=`*uCzJHS?kvbxG5Hnvv zV@Es6A;E|L!r8dn_ySrwG$H&{RPdATm7au{BlQ6G6*~B}tbO5|M3x)P z2_rS8u4*GD(gyrpCA=u+P3&Xg1p~3ZSGuqS(5yx3IQqo|el%nYe*_55KisxLQhcTF zVye$#i%WTlc)a`RQsv&E-Fy)Gz?_vYHU%53AnX=NlZfi8 zrV2a67g-sO$k;)k7ej9plJ7ZQxdnBgz3WkTi|QGX$BZnA<0deFjbg43-Nzu-dll7m zBUG%an~nVYmznP62dFdF-$}i;v$V^5Iro&_FX%)yMY;^vG9h-ed}1ptka3x4ZRw|sJ*Ihm4FH|wy8gW0`8WS zg5b(62K{y~ws*r42oCQc>XMuV!U1 zu~7T8sqXTG8^h9X-4KXmADBd4T3HxypqihnNbjKU{L+rKa~!r>7J3%74<%I`IEy@) zMBfD*PV|DucJK&NDs& zN~z&eh&oP=EwnUdv~e$-ijkn)1fo+y0%MZOn1SE=k;BlD^*h(Qh|eWiJ>q6kk&Dg& zsZz^U{o~R=#;7YI=c=M@Xa71mX{S7ZvzEs|(P5=rmQrn84mH9@pYH$KBd$aEV?7%5 z^aJDX1CU5}HrD-DDG+|;p!esNV_x|sZY#}4#QTz%#y0tColi_3A=r-rL$QNyUL0Na zfj7qi(@Pvn+r#hB?<0u;upebiQ5`d3PSB27eA}KKkF;5wmET5ng+Wbd6-gco!HYBB znqq8^h_OKsDvEr@+|6 z=+#c5neu#twBv;x;%3%2$g8(9-y|2Qs8$H(SRBL5Liu|)iN2wqQuX$v@-KVs5L2?Wlh>& zO5C}=2sWN@pQNQ8=I+Kjl)bY;hz0o6OnDjqvo3!z_3*$_$`<@Bwd3vMGYt+%cp2^N zPB*u=BdC>Pt{$&WAUYl&(PkI8C%cL7`gGI7nGR+A5&~a#)x=ZdW83z2@?SJQ1w5Pt zMz#WMd3*ROp7q!t@4PO%E5R+i2+U{rUh9KAT)OBIlg)1Mzw>YRqstZsc91*X2@Lg< zC4F8h$lHUwTya4{K4MJYLsR&vl021oHT_obhC+uaWiW_mYD8P(AbFhiVla}wt z)l0ZI1Cj&{7SZKRg#G0kqujz6=t}5>xS}0~vE1eYw3~u_@?FOqn$^!Xn#inygAaPR z#gX66C0>vId;}Q|^S1p{Viz}jI?jG$ekIO6$qn@Qwzwwllf=rgstTMRSMjbO$!YMe zGUEeCEP94LOjH#?;k)fA!)urn+5N);iOvhC*~6fzaf`Td$Jev-S||9q>hmhNF+P>5 zO~*KrUQK9+i4&{HXBbhY^l9*`mcU1TKdXn3^}oDp2-xiKsfdg-EB_I^^3v;dcLY94 zd0F1YMlTl3s9{A51zyvyD&O_?rlXY3gj$_t^5yP$Ji~a^Hro23BM+xF$9FtJQE63d zYD`R}e;qWGFbG4RRS22-(mbe#%_(c<@+duU0qm~2rumhX-3MsyprYM6seQh(ai!B#j6iFh`E^*cs*44M%L{!wdbW_o@9Jp9Um3||#eWw{#!nvJo50}W%T-m&2afD6 z@fdq5&-F)4)&LokoZc)pvD*nk@9CKQb)@4J=OO0dCylkVTSVEFn7r%bqJcwL`7Wb? zcP;aMCgnvfAl26C9ud|DGE_gHLH*p(_vf{3tH|6C61`doGZXKAj&O0Qr`0bB*Ax+K zt(TP_w-b+xJQz2>UN8w9?Qz!ke_nMZ1}20_0?1TLySNt0wz@!m^_Nf6+@q6R{&kpw zilaOB75UY5IOMjy$mCdjuAwBAN6}s1Lpd=m-3dJHD4fp|h58bOv_y9vfn#vXdfa-K z>}{d9Yq%I+tU)5M<81W#rsDIzKFxS#P$x_5NW47?zD6);qpF+8zQb}V3G zU*vh5xv&R>^>|$%oIEe}U6=udJD2|;mrfqee? z&<9#d02g0fL)>6qrmq*G!Eqj%%Yk0EXC$L0{q!^7L#;^rnS|+v6Agm%>LlW59k?th=P}x+E-8aa4S?EO<*iUj$@$5tx;Or-)4U3RsTu!B8D;$U@PeNdD zCQgwz9llW(7ZuToQ8anZ`MVaFwnsc?Si=0irhmqyvN}-CP}qgE-fH!L>3yb0km?nH z8h<7!qi7HEb)okVH(9TZplcl22r~B~Vk{txRIc*<;^(&aET##lZBDiqXnK#;`3(x& zMAfVb>f!(^|kp45$~TZs4FPFJpqPCuncbyv(y3uC?@+Zqh$+UJ?hBLlho zT8pwzeq)<*Cgsh_Obw~PJx=$+aikUZaYr_HL0%t5@sqbpUgM7)yRx7V3=B3d5t1>v zC><1))!{B2CK6U%BPJg}@&ucY7%>8p2c&d0^xRE*1+Fnjs5{X}kIM7xf9NX`r2S!l zp>mKFLIprIX+wo9ge(Yv!9g3zt6JzdHa3uLBp|_QH3a$@C zD%Phh+^VDi+b9$CIVt;RY1*2WKK!-PsrN*$O$i7!p<+aH%jK3^-S^KG<^_Y>9cb3` z!lw|-A2+ud%~xM#@rD>vN%~pz@!>H!6%I2xf-DE3yj=;SlR6xt>W}i@M`dR09^NQb zk@(R_Jl8g*AItZQ%_xMVOw~~1+}#v0Zo*m>3Lv#R**fvLDSk_stP`AD>xa+O&bP6x zCU1t}Q>h#h(}%|tunoW9UL^pLh@TL3yevJ8EFX5~xU|Eg}Ne+|qKi z(HHyk^3hpb*-}MPs$;dBBJ=nsLsB4Lrw3lK@*oOp1TVcLB+)15IB4^1Y$1lRr7CoaQGlxH?ZkJvQ2k{N>Wn!s z!WPP4kfvB%#)6DtmWhO?jgWtpQDE|gQZT8uH?~zaZk#!nl^o+Zoy#jtH%dDY9<;8| z1e1U35dU4+P?CsQcOTW*8?62caq%m$R7NE$!z!7IK{}$Z>6caJV-Xb) z>MjAA$XHlfiC<7+zzgcCVO@%EbJ#(}vXhKef&F=nfI1?*uG}q?Q&k%aLLfbEBNd0S zMGlVk%)B|EQOmM3i>e&r@4d+vHzsNcv<|w21vLJzZyR)u@$<%u^!kruz-{* z7%9{!!m3XHL-t2ZY{X{yrY`JqgF(9|I_h~KrqK6E=E&2C2JNPKdd*2f2U!Up(Wc6F(MZfuc0xLr_I7=CK8j zHbF(u?{q%0l-jh*30qQ<%-$~U=*gcm13jsB>Zw0TdqoK&f|;wThPs@zU>WwtyWWkl zj(rCvHLgFUWCwtM^tx~$UU(WEu_@z4z^4=*ez~R!5{)8N5kO9~2}*^eB(;RxG>y1=GxBX6COUd}=K&G?@vU&}H2nUN z7Rkr$6e`u2W7cM21?nF`I_i}5MW_+I?a9&bHN(Ryk1^GO+#Rut2juI=iH}EGU%g&a z>d2Wd#0(?|A^kTpRoa9ofb#wi$zf90Gd}S1jo^eIP#n@t(FI}b$=k#FxDh{p3uY}O zB&*U!CE$ENWt<-<=Ct0zqrWbg!s@elr-##(Gd+;`WG#x) z-aI6!+A0CJh&*}5-5jdMV$6$$R$`1de?H8lvSjB7(rLRbA$@%B(*(1Khy>;|U7=U{ zMzDSLPplSYlXXhMz}}}cv6UUlAH{0YD=)nU5M0$0Th#xc*)zdnc1+DLU#~h<(7BMW zt+)1A0Q;&h5To+Y4r%?$W;DM25s6knh{Ob>Bb# zj4Cm)C{&KKc;3phV8OG^5>}kX$#l)TZfT2xVW(WA;ySJ593_^jI>yxQoe%oDobYw$ zqPT}q8m}*>g)?=q6Z6D?KH=*VWSWciC2jbaupJ2PIh!Btx9Zf*a zsjS6~COvnGrUe4HEi?B>{^zs~L<+oJ#m>!X=ry~g5v5sTV3>mUoFrrT*mK zKAQP#Wo!G*m1*ike{pGP>;7yd4iyjvipVPf8|C31x@J6rcP_Rl_HA_Ckok}#K$F!y zkMdgQK-O%heygbu!(^R#Y!dG*L-`5aZNdw_=|4j2bzO|~7C|s#Mwv&8y1YNvsJqOz zIUcD#f5yT#mdKD=pE&`rV{``BHcefjh^#8M!i?=LhpwT%Osk!FSj&IK2)shg*x|A| zssnP_RsN)JTv9KukEEm1e&bpF@qbUVYgzN4!mixo5ABp7=Zo{xn zrGiUHkaH-UC$uh!oSEXU*2MInQSKiFK*dV!-4-#Qo1imbI&L5R(s^FJ8&}ussEBRW z;mg4hwNpeUIj^8EVDb+sO<%VvP!C7%Yqh7~9}*kmMnAdnXX)^U&DLvyc?)tYJ5T5p z2tM0`ZN1d!!_>Frh+_+xQdwu(AFKNBl^Q?7H8jTfO za>X7zf?`+Wp;1J+;o5&mz9qrw>gs}NdP8W7g`Sa)_V)QHDCs0ZeAcPz_S<_ieV$Mr z&|hpFu(TS+F}m1UHW6~ka-*toiXD7dC_zzF+UAB>s_F-+_NLRM+tOFeZ7os<{MPzfZp zktfgx3-dZl%vMn+uO19O$hT5(bKEy!2iu;aBLCD~Fd=Ri`d7r7iSHONY6tj>e6 z?e=1d;-0jc-t6*_im=`(Ko9`-eEkX}1_W1|VhLhi9ymw#?qs&&Bh#`&m@B8KOB#O& zG_$Wdiwq;Z<+)8HbM42vy3i1M><~H4M@;LYnvF-<(aon>P_?#Ye!ugMSp~OmYi*I%I~SI5IC>QYBCG>}wqg zCM!aF`R#uLeQG!ZOZi|7eZ^%c-1P-Ec2`naE%qW!X7VJa#=ofc01z8A^TYo9xNE3V zDC%5(hI*FWAt5c68pf^V=wq;EkBeKKYVfN1azqaonbJxTqKcnp8P^cb?X6Pv_ito= zK6*y{=w|jSUdskVy8WNiM#AbDrBfPuWe+?n{{L3>>qG;vc3nc6;KW$U3<82JD>F#+ z24S~RB72C5kO!5~9aqh(Ssg+PRNTd!<1RojH#biqee#%-_|6gm1D1H+=-|MVU(SM7 zl08hSTUU|60~oer_9Og?25oa=9$D!9mnLUDC2r)ALjYG5TVsyRCunNwM(wn&djmSE zpNR=7r;Ngo`qBY^3*4(|gTOkb5I zG;#sX*zrgn3Arhh&nMzOXA>gh90npAJe#UJ7%KmuPoR-kT<$nPDocvTHeGnQ4&On) zuaQI34c_t8Ca_%sUDYHID^TMvLy3})ueUujK~CQv`Z#KEc?B;jtq1#~k(vg?!0|uk zQoz`xg1ou9N-&K$tV;b$UY7(!hDVc_bM%=@L>-{oPXmfw;*FQZi z3nyi|#b5e;&T*59H_BNJJ>{7sXfaIlR-$Eb&nci9;8XS~9osSYG$~3G+ftU;vY;Na zH%+#OtR!na4+U+2e`Y0$$Kkj3nqFtAFPE~aT2Ngy^|7?2vu!z1|3SrBv^xd>w8Gh# z7TZ7EZUKZtjzpGlQ$J*#yi*diYdg9)bi2^9mPWd_jmxDMF(MP!r(2SeU3+Ga+e3v6 zapOy;gK=_t1!kDH(pN>5TGsH!2L5Kh@iWPl{(}w;yDT_um5?bC#7XiU#FA^kO#ci{ z>2WQ~BH6#{1$0u-60n=DDn1(sF%=Wachk@= z&F>&gYgbVl@!T4+Jevo8RSbUJSSw$(=;2{mb*%=|XwONxyj}qaSl)u$Gy1%p${weu zX6k2J)`@HSMam=rk{4d|zNFVaB`2BG54!6G=dBol;Rw&k+ipS^A26I>I6;51h)irH zk5CiqKo50T@zxHHV@iTyd2FzyC2&i&hQdos1Zt-KPP4P3HWHlR8Tv`7zYy@Jugd5Y z!jr4N9GS%=Cgt_Ex=qvG^>eU0#_DZCsb1)8{U}6j)+*|5ir;>LYBc$9b4=~_nQ_%? zwMj@BW}r!WMHs1&atwqRUxY2#t1T`aMZB5A_NrgNcZB>l<{7r#wmx~}#=en$!YfS-9aWgN z=C?2-%3eT(MmrZ47$J93ofOx*!D%-178d0;a^wweDzTE5=E>2$9aS;W4G3aVUz?d) z65R$20)o|ET+)AD_Yt|>oEyE4X~1d^>7FSglB9;cl91F#^^#Kb<1E4Wcq)$~mw=TN z4xz4JY`+B8C#`aC(ypEo{iWhRE`hp3sTJz2BKw&^IG7y*+Tc3bU!MA<|9Enzo_Rk7gYX|GiEJ(Dy#|EIQANyvn+i<}HmJF!^qm4YDAH&GvT<9;$}u`UhZ=lKhE z1u1Yh3Dh7o=3yK0n90pd&QiM*73kIqqVC;S#di3GBR12C^xJ=%JTK8D1w_5eK+ES>`vD$ycY=9F8}Q}cX_7teQKzOFjvG^v|JL~xC(ETM|-+fy44ihsif^-A=^h| z5f1rer7Zm+cpDm&F{m8W>+0E`&}SoBSC7mYU#`S}6!QN*D9!C{?dlS_y}zF}$qEf6 zXJco-YApOTt&}ai)R+9u1NArYS-XF(6nMT1W+6HvK_Dr{JbW7lXqlxGNQ?y1UPEyg*l3q~#B@{mX&oO}JpmsJ6IYM=F`Y?C zA=0kU9O@dLV^G#9<7zxoWI{N#q*f!4!+`JhJ#4EvkF%Lt>%QCGwehxlU8VwV()l(# z)|I8OFmlt;7|N3yU;DF#i6<==6zRSXoRNdQ93QcIOqez8k zxB-|2@_pZ*^1nJ5LUlcmyxg}H@?^>i;9yJszT_jo`DG3ex!h`ClR4%{x1YRt;JcaQ zf#~T{^!HYrUjoK!21b?o$}GB%T?IK_H)ilG?ThAUi`Nv+Se~f7{~TYIUZk}+u4IdA zu9F&}yKgq$K|VA6C$wV`(DwO1IsXkOOEXh&>b!djmEczcp6%_0C~woYr`~qF^;1Mv ziUSL1QBg*eZ?l5}K-AH=QwC^22PY^zfy%(0B|itU6y0e~r7N@s%uZ3OTfGMZ)AYr& zRB#A(!C^7a!b(wIkKEnZltJ)C6kQ>Y^ZK*xHz$oo@WePIyQtID#Ph@o8)=JEb>f;@ z(JX3x4NP?)cj{;Sz??IV{bm! z$kmx<>$5ug#U@7AL^e8UK*lVm51!;$2>o+Ya_^($(86Do)kExsZS$}uPUuUfhJ)V< zY_t9yk5do82R6d9={^%7ghr+Z!Y^_j^UaTa69M4*zJUOi5zSB(jR|-yV7}%Vgq@C1 zu;au6#D;lPk$HkP;@rG7tH{`D`nz@PwE_v|<;043&C*us{m*vP@-mOz1}cx=!T9{R zU^`}0#9wu}IR|RL_|bPPEG~^kv14yTwH^LgE@WtLPEqmkk4XY6_Ve#?Oj~h+7#D&d%KbqfSk3v zznvAQB(L`a*h!0`ZAXFzqq_SQWHRpTd_X`k>7fp4 z^UF&zG4W?He{8oh2jj*Ltfiy5L+TgT;$)h8WY&QtN%IUshhY%;pL)nIndM%aHZUi? zI-_}4z&M`$megKrjJ`abhp=5uhVPQs0%MTZpW5FbUq1i%aqae+@l??}s$3!^9J ze`Yv1__|u{sr@oR0~;A#@PX)hnl&OG3hadKO|3Xfm2%as95KH4%PbzgQCK#C=2)k5 z-%&N#<@3JK?85>Pd_9Bsyq;qgBz-JFK4RMbxpG?VG1TZ$Pmf4iMs@4Mn=J z`W%;)f1yLmsVTYHUrMi!ZWd?5j{5IREzCq?dkPqNQlIoDx@UZ@wOFro8hK>08RV=} z-|bYCAVQ{>2>`5gMW~{X4+hG6d(Hj;zvj`l}kA~audCz_beXZVtI$;o2+Xx3t&>Bf@FusUP-TX2YbXd$S^qX zw#Z{TDjT4iU||o*CLH7*!9d1qs`jaD?<2FBE%Q)#HF_F?N^Hf5(zaCBqtpV4^e zU!enNd!oF*jZNe@sS!W9w`r4Q?ygza|0)=dcV7rDlwdh-k+|o?bZ*EAt)BpLs0e{m zL}^k9i45-BGXJZ>Z*^+0BFc4_A`7onc<8G}1gWCS>1)f*XkaylUE2;^KGM9V%Xwg< z3=T;?4e;Y7*hcQmi27}By$Q$_MPGAFjKJcf<1!Ih`GZ{yyIuj|ZfmA_!3I}o0%z^L zfra`f27fdbPb2Laz!9)A2+!H0K(3U^iK;ty#4@iTg7TN>Wb5P$#D6RSBT|J+Oi25p z8ej3_XJe&V`%9*i)HY#)ifXa1Zui)!%ps)oks+~*>6{8dQ6CF zEr>L@=(3?Vp)?XAdf%`kc6wX)t`?Nv<-u8>5c6Cl-XyF0ck((ouq2UCK{3bmAR98{t*>jXo6@mBOop>4TeWU1$6@P+*bVCai}h2=E0 z;WsIX8f{^PTc0CA4HNYY3KH!6(vweOOIMTfg`yG=JYO70bD|gRdhpgoJfllTU~J#QM9Y?MK6=lt<(X^8ZN>oukY?P|9n&b z{i?S_m?q`_DHJd5Pf1BkRTazb{(fGo0KAL!MD7ewf{zZEU09eoi7BtVkYnNaRqG|e z=W?eOS6f#r5R#f9S~e+m`~*5<7L%03T>BJ1+tHnW%eURF8u>%zoeb?(n`vd=0fyHarqSeWyyl+1Zl$ z{i_}|C~jErE5&x15-HrrGZCLrK=`2;7ji*^i_{t$XOtc=Gn@%k%Yy{IW;u1yYUoUr56XUWoa5#GA+Y z2s%52cE-_PYiMo}q7sCRojowKo>%#W2Z8MJg~$_aiodq`Cw4}>aqo-IHi5_{VGPH zBfUb>=Ab7Z#z0qs-1+5QUS5&pcQDs7P(xePtEDr|iKXPy)%+lP#`kzwA66z(tbz5- zJy%twl(D0GKk+|5g5Nb`jS$@{vpQo_EwQzshc)SRx-m z=>1N-|5w#El~`Ol>tbrZ?J+YW1J&gN)1p{bbWp@IOdmYyj)w)PRg_KBQrv703t5+o2_KtT-I*^?KEeEn- zeK_*rBfIV6Q{s;FjlfoB+e_BV{pkA5+WA^pQ)cFQ+FDv>+WC<+_1~}Mnz3jSXt!Yx z>%JF+grC5}sI5LFeHMmBqYx1GlKS-T_l|HH;dH4_fyp|MIYvc4#KF*tACG8*t+(TW zx1%WTcU;t?qwvm295Zu4k=I(ZB_E#?_(6r3poQ;FscvKEFw|H~q#s#j6}L#OlBW;D zr{7LWC*;I^%1>L@R#JP+4OtUOC?{l9Tt3rs7qrDon@Cl{^L}eQwu%_|E>`0*Q4@4p zWYjp44Zm~&ry9$*#3e1T7IVllt(f$tB}%^N^P?Jlw|5bD)tZ{mEHRThoQ+>~h+*2a zdsFOQiUQjxfm$7Aq*Kb?gRKO*0g{N;TIq&Zvg@05Vq5EFT}|YpEWa2b)I}tl;?O+etyf^&4&R}%WoWodb16o0 ztdoOk8P18H7kUH^87$Bm=BQX{m;7?*{u(94u{YOQor}!@-Q%Op_mFgfILsOfxS9q~- z*xg|hZJ4yk+2qK~ruG%s50$K2;7%vNL629BlRY!~<^g@ndT9euuA|S#i||rJjCX2i zNQ^heF#jNst)!x=8ghH<=JBN!9y@jG=qP%2R$X1wqVq2o^2fOh7=taFGcP?+Q&ZD* z62@?1=-d40i!phZv^RJeGnGjU=4=Oi0Zzahj)$UP%lu(J%PIZ7$~!~L!f3wo{f>gk zdVqX`MOW7y8x&|u)Uiumm&^9g2jf|*T__){IF(w~BKY%M%SZ%`(qlf)@$qXhk*@6+_ODlsCec1SUI5E~!X%wOt2weXn zE8eGt1o`$XEiT$R-V%A*ocrbEL%9g_VE^yqPc9XD1uWEyjr6NLIgYr)|JJr&43<1# z((Mxh2T=K~h(JSt0W`|%@WFS)Vz_Z}SF+@{XX7t}Absl*VY%^q)rUwqqLf4GA=<4=@%n z_7W0(_<_j8f@Z{ez=uCoi}eY>?QQ0mtZxbbpT2$AxA*W6L-3gb{Ns}J>5UbfH~=p= z`#t#emF%XGj8|kwHU*NjZyC_FNIfex8OAZkzG)^ zxr7tQuj%|wEM!+e#x&itYP{zQp)qEPlJv1p{pZ83XYgVyGNMp0&xOCbdTv5rL?n*b zWM<{l5Y%xt)J`uiCy>4EDjb5;(I9vW?}k1cu`lB)?V(8ncXG^UD`u}x{P^gH_&A;C z+xqfsZQ=f?rX}SVSBa{uZO@q4^3x0Hgh-gBCr0 z>vyQTrnUJU9#@i2Sb~1rlh{x_J(3P#Y{z@ABD!_QzdE$iTDBvaoYQQFFz@Kx#Q9Aa zgsobq7W8+Ht0O~6_BVc48mOZsV4Ynz)xm=GXC*(FFZnqj<1={1Vp?#IuM zj(!;7AiHuAw;;}2X~M2q^nJ~DE8XX5vfkZXeockg0^J;VpXC|Cin;QWJ8VfvLe7y!t85+r&JgdXVfL=lLA#F8}^+oiwbx` zM6u7*-;FiSXRm)qCA+QRQ$_f&aJmR9;y3Ni*|)Tq~{*dbmY#V#8`DO3T*K!iXlVR$hvgNMI9wk+Bxop z$&VgcoEZ`4$UE#KD9j+nl*Ej7(n4tO`FL=w>BAb9QML5~LU{Wf^-e>76>=INjEi*R zir0PP%5c~gSg51r0)npX^_T#-)SFgX#(8P znQbCv7^Q)Kbx*S_^*DFcdr))i(|2nAp3yz5LN7RTWtKQ2bbkQ{P!CifWVn*3)0Sso zY{wUegoL9pANi29La9kM4^f?gx>2G)|36WrIL2oJWFF}Tt9@&$Pz;xvQ@RAujPCFp zitr?;Ok`6_C?3^I+B!RVf?vR~Ma8;9w6WM9pCZuWa}+CZ+8s`bjm-~ z#W5${pRmd++2k83Q?(LsUDSc3{C+M|c)s3NzN6czrJJ?%c9&mw>7)yXh2nK*bJ4UW zL25$BIKNwdKnK{Mv{iz*Q&EFDULQV?sF?&Il^XS7exJlP?zw|~>{Pzj%T86ECii{f)5D9uu`wtjPV3ngrqrurCdsvk zYg8o=xUCJEyF1X{Ez3RIW2C|N&2^RXWfs?|gH+^=$ai#s{C0+0C6F6ZmgTL9;eYA~ zD@XN8hyKom-yRxET}R}Q>SpY10kdU+z4=2q+8wnxd&Ja9WDMQC#}#xs7`EqZ zZssvDvXg%bywm`%P- z@x};L?i(&HZjWZlF0nB%DA?;JAy3$;oh9!$Mnzq#>yKKZurDVEJ`ZS&ccx(8L^%R> z&*E^-rxi)sM)+?y1UQ|ao)j2w%m*y7S$PFRqP>^AO-PY<$ZK4opb9&+E^E?mBB2_3 z9P=6j{cLooQc(sR>Kf20(g#p7=fbX*Aa6A&w^#odk~R5#`Ubb^2 zL#63D+0eI7AU?=)(a{Jukb<~*U?Sg4yxkO972#*Eh|Us(eW_!>$S{vcjQ~y;nHI@} zSWTcqhI$@64jyg~+)lilgf@uaTP8mr{8pA$PpNcAQRog6?e&SWFw_3hQ=zDenl2t~ z@c6+W6fIt)V!cthlk@Ic`g(wEMVk58mK828&!-zQ<`y&c#`YPn`6o*gd1wLXgfX}! z6my%*Ki7KeO_DXy87mguFZWMna3b?yuRyX9cvsNK6Ztorx^#Y!;+B zrW(h@V1Ka7z_F2^B79TZNo{ z!mUqpQ2pfUGsjhZ=h*(TnymgsRMD`ThS!h_MFf2Ol!6LNW}uKA{<-3~-qhFY>8=5j>4d99Q2FZRGnUr(&6=u7?qDVc9ZnT5~t{$1)XLD2g5pHq5*LV zE2shJeQ)HZ@N6P-WZk1)?BEFBojC6}B`tokuD@b@%??cX1=+^m%?>kob5Wijeff&? zRNIDaF?_BmkPok$ubB3xyTIBOf+!em>j##xw^V+E?J-B0(PZrL(bh)cD3O{aGc0sf)Je zg<@rElS3f^127%KMJ+%(NhlG@{B?yhPpK>In__WG>>@A>nH!>dN*TmsKu&eJC zpmjuIP0(yiSt?K#q6el~8H8%|cpVd|s`~mbF<&PkAJ_++8+?f9cjhKF=Ov9RlR2cXxLU?(UYLjXMN)8kgXKAi-UO zHtrDI-QE3kzJ2%I=g&UP9}#ka->n6oXiAiK^q7ZGL}Mow^=3?|TjI5T(+U zM?K*#g~W*G+52@foPsmk1UNF&d!e>Q@H*rl7qsD+qcfn;@Ukg>JA*=fByWL|MMpWXWbMu;T~cO9xlqbtMb>pWcPQzkiDse z+Mb-3_nOog?>l;B)rT(>EMZujYrg<>P2UUa8HM~#H$Cc;h&(~GHg225Sg|Xh*8P}+ zONv*93a}0R`5rVOGqGW7UL5o`CcxSU?bsTI(ZrmpPZC@p|vE}U~1QdYq(L+|CMS(4<>J&O5zOuuit zNX-i9bVnJzZZ;(Lx5!(YyGWRj7OM>B2`fw1E&Dtv0iH-C&Py4)bbK*RXg8og<8oC{-RW)qsFnq`lWwK&Emuj1`ydnc= zUgNmYrY@Qj4Tl=x7idMHS7+*OM8|vUsVPp-XuR}2^OHl#KJ~iL)y(FFU zmRU$`T{Hx@XP_pE8K%&=!mVg)RFsGubpuXU))5kA5|v2`O{a2*QQMwUyd+N`xJ zIwg!#&W{`N{TMCSzQK8K$?iJ4bvwl!&v?IxOh||*3Ljh7DE%NgBO+SRkI zodHEnmyEb=FOlGpPq%k?2|9P3rv`ac(#D4@o-QZiC3UoD-3L0?65X4(s;9R%vJ$tl z@oo$I=~J@b47njmKeH&~VgkqJkriZCjiDTsdd0XW<&1pi#w?;W0gN1-18iPiQ@Fn;ziCCspAK!I3>sm4&-WM!o$IYC(HJiS_rjnGfi{#IXA)n1naq zK*xQ1+xk|CjNPtqm{THLdJ$5Mb0c-=Ljt9g3>V7~$v!66>gB`P4iKe(2ow`~$;dr#A#e4(>k#(31X^8Depq4a z6@0@)MxoUg7LO{{?QpP(D=D|Bo!GVyYsaKt{M4)36G}dpA?k?7!}LPVm)@)bZx_y2 zjO|mo#|SE+Bg#iSf-Uh;zTtbVRrk5jlW_<*xpuC(OQK`zB1a=*Seu^^`-7T^e;@bv z#ObK)$}(j6$x1V13pzr;2_!*%Tc%(G{6SzIIAyjw->#-ZIeYoq;Hxcym~}C3uCOl( zEv*e5BV#hk4_d}gy88Mfu{Gwo4BMlGXx1Jm3pX!v2TqXOz>rO}jL^1@69aSOHGhL_ zk1yRxfX`PX1b|MB0cGz5xfVQ96KSKL*dij|fF2&9Kk$@PAPcN~@c+bc)LJ_i5orH7 zmMg`VHtA>nTGo;us5KUzm!V6Ia)W{Kdb>$xD{fn0sCMt8FLE) z4=U^8xt;h>1;7=k{R;0=x)QsSZbNvlt}ouAtVJ|$m%!kgx0jn5&gpsYGRtvRp^nt@#FZlwr61MV-Hu7G&WYl0mzqJE-C0 zerOyJG`A$em;FNYaXTyv=rCy40WCsfdgO0^c5`=6ytPeg`T0WLzpE4J-SMOx+J;AY z=*>A`Fw+F;xT~c&Bo&S6C4Y)CC;#opC$U5czX$Y>O2&h+=3yCC7hUDnLNjR87{i2@ zUrGkH5aMM(IjPlIeEIb0<5pfuTyp`M-8}bbIxtjAQ=|nHm1KXZhGv88aDkO%G%zDzqwsRrV=y{_{1(unekCnzz8h7ukXc zWBo{><=0<}4o=u-f$$+Go8k&UqU$(BTTof)WK2+96YD@4^jBXDIAkRUFEAbEU=^BT zOk5#~ZKwy6+nfOKq<5A_DvCT?ODMm<2m$|bXVyL+* z8j}7CL1?I+j$%vpB(E2=h-KwpPuKpfkZk`mXEjFtsdt`R99?vW-k65?S8Z;`WS`y( zGh)zgru}48XsZU(F$1P4H7=N_dUKwkKyn?^{3T|T5oTqfL`D7p1P%{tx&689Cl%q9 zLKf^d30@DD`--3B!p&@;@y($a+gRo|93v5U*N4GPIrHbYwAPQhOLchEGVy_$mh5oo zVqCGAX#*cZT&~J#zSaTd`nXy_Ac$b8RO{-LF@v6-yxv9!7!-OkiaMajY!X{_>Ywxr zLqt6!&Me?)Nn6O@>dIaSnJPCo_LHBB6lwJ?tKYtH|4t$5`}fCacX7}!-tvU=PN5T*9q&%N-QgbYyx8D+VYPc=2bIF)Cl zcfJ1+-@{~AkhB~Hg2Kop)eJVRB5Q%awuhfp3&cH0xsOF~^$G{%b0RVMK&~yfCaRB) zjLocq#Nw387J`P!{n(Wd<;{_H4+ahUjaT74!cz-){;HIA-`jFnV;=;OP+a`XpiM=X zz6AS}REgv18H1Ew{+O>1=)xn-8L3uXLYQ|xP}`5kUUdXOF{`|F>W^{8iD?B0{dE(b zu4n2QkicAxv%mcL2fg5T2{xz$@$n5G`|!wahv-V7_oiL0b?V*~KjEv;TjFsPG1A*gFRO$J>g#56(rL{FVKYv(`wVkbPwCMX4@bKg$ z89y<`J1VaJkP#`ONed~wL}1IJAeI)H^N?W~Y-v1(Ci~KW@Fm>S=g?i=gU=xlmZQw! z^YFcGO_$av&oj~tGRcge(k7ssXm$s=rL+Xf^eoZE2JR z=NiNf=fDuLk)ItqkUx%h772J$0w}3FFJBnb03d-c^h(BnLpkTAf5QzV1_$VnIVS8! zI4g~ICQC_d=Cy&UI$}Q><^GaC3*nOV{f#VQ{&SC$**^9FLY262@#EtI?K<0^^cL$? zD^1a^aMwJdAX#&4DDWTk*m6;fG`Ny_$|cB)%o)1c2C;W@Jmj=-yM9lRI!4L)7xjle zfgIBjHOgsLc0)DV4b-TY+c3s_QL?b4z(I25#xHPv+w9P+3~%?VSE*qU8X;=evtZq!c@_FhkeoAL?!i)N`HgE zl3o^@JRwh8D0c3fz|t{pkWjo%#l8Wnl{1{t^Ip%XAVT`k1B9`vo@JeTsi6A&<7&9L z`pP?5RH$u#(p`5~XI23^+ks_*{(299kLqua<$md&3O@pGzWnQ<) zUVf9u>uvN#cSH#3q<+Ud_%kIk5AW%ZEM?UwNoKS`xnJqo@xATEe}?)O-L;mvvF3B(!Xd`o(#`6T6s3YLD<1lX++_AGC}=)2gYv>EC$uSvl`c7AO{J$x6MrL4JqsD;1r4?R$CS z_B|p?km;{z-$jGG5coD=V4r$USOgn4Nw(3dvanAQ6kK!P4E(q$@cV-OP%irrd+1l6F(~f+ z3N9`9f-Z3zHyJ9Xo3nVMy|w{OaOL<@lZWao8<-;vC=r_x5jy#PiR=w*8OY~NMrxiroDh?Y( z&FX4)Z`^!~7oNLpHA8Fw;? z85@%@J_>tZLveF+Cpb?0QUCY!2?G}9LT&OH8;B{`D6tBB!L_$-1Dwy71684hdTH~1 zAs0iMM&_NU2!RTV^2lVGkSBy)NfpVKwK8+Um$@TjP3*4kU5zOAEG6b1jmYtXD%;Mp z_gvWPhjw^5yy88JGoBRt>=S;nGJKkG4x7I{&jockRYDhrbEg39%%oO7Bk>?pn-}kH z2bz2^)sgnXCFMDhC|%emFTTYnj%Cq>oF`JY+}EVMNw9;RRhWeG!=mAnkRC)tF6#R;YCNgKQ(%D>IZ&HpaSsKYz$qF=&dG+@iIjnhm>7` zIoagmgE3;+4@&DkCzB4|!8->ISBGX$@3&jBs@7d?6(NOPPX@1htRk|TmAIxNBtkm= zxFe39!^!e$yOUAg6zh1w%x;@RhmgcsWU-eZyfs;Hj!0$L9X_?t#p+Y{NPL8Ou74!o z5F$tD^xi3Rq8I}@8SM~6@mQo%-FOzMjFKKtaQ2YDTht&|7wJ203ZUNH7pugy3Gtqx zP0ry3229m?7yYP2g z!qSi z1U@?B?pH0&PDWh@V+L7{5s8T`U-r&|-5dyX6uHooX5qjr>D}B@WwI<(YAwxj0I1-UXglQS56XmHarLMR|GTONf4IX z!7M{U;2IIB-zzkidnS(pCh6+toa5Thi(6Up(6o?BvuK@acI`82oJcgFIP0|z^~#)lQ--uoinv{&S1fK8?<*9U1J*RQYApRGk|6wA}a5fQ*4{F-V=7U()RB{`g1Mh z3%skgkT_`&za1r2IiiAvR?T1DUOR6ekevn`#nweyGbQa9o@~XreN=L9kVN)}Ix4ik z5R!(_fdVWJ`ES9|KmU;DmzU|4m6%BpK?qMzPwff?|9dPJ zV`DgYM2nL7^)~mIH+Isl#pmcV8U%BatDkDv7r}v#<)~s%D}lVX%q zkc@ulR7ucoo|C5-H{XM{;j&fT#rroQPE-|nM1sn~KfCxI)VA;`&rsZSz|^tqD6Ea* z8SZTsbP4>;!DO$cA4w5vdw&2OmWKAlguo}OC({)&=Ww8MZs^(J0P zG&CXT<#t7G5&hjiz{0N5AQGcHcvCd1H-Lboo>c8{7t$_}e{#s|)V;VLfjOU^sCa!^ zp#_2S5b3Qxc9+^Ww+I(-1-;2uov~+5a>H#v?g?kMj0+gyLZFPcyGR5iGqdJ<2fHPO z<6sMLB2mP0V{b}3$4Io@M|-b61r+_VHVf{H_|8gtHe?_f=#J2-$u7P!Borzk!cjP0 zu#*|;eGa1ytFZaiG=5u+MUZ=8QVLtG)dAFj7x!(!>|AOb+Ou%B)cz7 zp=X4SqJn!fO&xj~d^$|J-Nd|Fy6bdM@+d_!(hYOSLsiM5AqEpaRA<@0Ykb9-m*W8U z(J4M-sA=LRZ$!pi9F$T;x_WrhsNOUnkjp5hlV4R8(3EENnL-_W*KCjR8;%|)da5>U z#m@H)FMU26GZ)@%8zu4XVSI#tBK*vpPMARhZ$MfePTv}VZv^Tz#pa)GVuKrjlBIfi zt~+gx?2zNkzE*|_%t5#7KUD03*cn{=~e%`=EE@DXrOVq{@ z(i2V#!#Lkjm(bnSk2nMbXr`Ye)W#_9OdTL5=ncr4{geKD#3q>jDu@|mp507PUc9VP zbj+!03ECmZJv7E9;~hadsQAg=GDhn`UFz$Cew>y*bpO2mt*N|dLQNp*Z(2^Frk)g$ z`e6G`b{XrJWy>qf5Inoe9xR8xxuw z8>F!`(^k#dji=N$%P?4fubHDUFek|iHK>T#x)7yU5jixnJU_|m7gE+?;hMDD(%S*$ z-n)phJ2@1i;C!*UDoWEs)j_A!qZ&y`~Xb{w!y@pct&vR<(X>!PG0 zG7Q;~*hu$>S172~$9Kb(J%rs5UrzB3gcN^+hp~g*U%JFq-|JtrZfh#*;X>x3TJRD;JoA-DI%Ymk@O(v_!B9xNV@QdN)Lg!B~3-dU7WuUVo;NOi|CjU}V7-+YcO zQt*KrJx++LGe5m$H*x0-LK)WamvoRyxIMFf&`BUZg=cmk<{=SwfLwg)|CyLsEVX?+ z5(CPdR3538B<1lCk*hrX?BrTCG{RQZ4n-E2k*Px7|0NK=f?K)o?Ows&^Q|AROeJU} zB2PT4C?qc8HFlh((8C^~I_cGPGr6MXp5R72#qSY1)HFIrnQ4V*zDepWWgEdkeJts% z*drIud;v9CqGlc_7%;&$Oa8F(7n>fM_!^}d57P)5@RysynXr3a5Ta7UWXFQI9lSZr z3hW)3#Z6OuFDLAwC&N#sU_X+(yt@2NUM1pW)h|Tzu>iw>wrSsM+}v4!)2mKk`4FB` zMn2OsJ2fpU1Dmb{OSvzMkQ6~{Roc!*;xk}P^{0)^6(CXY+R?a$kwNeSLpCtn9#gQt z8DOjg85ZK3YB7AxR;8<(aNta^b2qtV`7P=?%H6&KWjnl!`P{NO$+D`D`UAz@J*7b5 zyerO=O5bLYQB~~wf(lEI5J${fQZ(+>V-mhZ?hNbrnKfAZ?WSnHY7Zz;=RpV-T!K@< zCG8-w8L5ZD1e@C)V1&`npc2tV2W4ImGlA!>6AcvmKN%Gp-SVCCqwIi$(>hoR@f$RQ zR=;!@3nRdR#x= z$?5U3cSh#Av(KmRUEvLFvp1ni5tlJ$c)=(*c8?v<;9$w@`@h#ByjJ=2g)XWIRsthS zxOWBM)X`~PemnQ){7ZcXXyskDDqlu1dS$U}=SF zf{KXe1*&zYs(*aumX-XPAy`km=SH(y=mQt|R@O;i=*||zVz+@sQUDS$u@)5$=2y9g z2wR#^T`VSI0XN@XYj90$;xdAqBwFC{QE191gHTbsRn9+&X5Jk*@9Xb}KbAU@)dALm zfVDX!ADAK{!bP&y-?$L(*CHMRXjQH_gOlHCC(}=DqDp1Cbt%urXC4_JGc$V;sI%|#7Frw_7zyzU?{V7YD7az67ed>y?JTmt)e5HSZ&59UcoYn-RoilXi|Ar;h< z!L(`j;Mq7P5KSm@R(bjUw349NceXZ&tS*eeWyZ8OYKL#%7$Cs*uUlduJkgLtz6*}} zfzuGRL6ok|_>oir#W?HUV)^Z}1x9o28#Pv=a>5B#LGvYy8*>Po%=X0?Tu5;c`K?>* z<~C+nIP-^MuolL9oy24ByfaT8s6#r1$|&@A6+3(hG^7ITZp|BXQs*>Hs85!pQjB5s z0Kcx0yx7L;gU0&?_W#wm)5VVoy6nPrK5o;kuC6Y=rKYw{F%R{abPe^KMZr*Em5?(t zE0MU+5<>LEmqGO+_b=F*!$H?MlzBl46>|1op_Vx|{oobct=F^p(_Td1~5Kbl4C;jsg+q z)4Gx%LRTe9q-Lr2=M`C7S+a5OB7|>;NJx?o^fsBNgtY~Yb*bg&eOb)pS-)Gln88b zzs&g;(Q{KUtwG(^y8YLbWG}p~yzq6tz-aHyS0KM0FWSQ8!>z@qS z9|F5N%r26}JSrLcs!i?AzPGL2B+$LYcta(scE`^wS%&O(S(a~t*9`nCIiAc!-&gmo zd12KG*o<$5?Z8ph3fxTJ4hPS6W6jmcRh43)A>ftgGG?NUE_>zJvcjqN^-C9S*y9pu zYtuNTQ)C2vbMyka0p}!Uj$h}i&r=bxnqn%GQI>NBpd(-Z3&TItnVfMY7`_|Xa5bt)ps zJjUb|r-PL495>`t#p{~4abUK`p?$`eFwl~{sn+uO6UwCoV`>vaf~kuB(K z4f7uY^8ti}jLC8_DiSBJ_nK9tB4dOuB!U=6?ZKJq9llT$(lFqxIO6OA{nggw5IqJo zjm}^vihZ?C;s2rvWW5Rh{|Em+P>1Y4`QiTxHvGdTo~Hi;Nc^u92UJ9#*}|ajtdpA? z76$xX6+QT%e=5fR6%>h_pXVtphuwO-`cB-HObhA!@s61-8c4FUvvXY!K6-Bu@&EOk zF3`)%Aznw*RRCPypm3vQHVs6AO|0WLZAx+rD;=PI{P^(?l%d0d_oIbIA5ceh>N+(MJzco@4`O_X<7 z9l19*7=*nJ`h{u}fKk)pii*r3O%dQTa_}Yv2}S8f9$ksY#7a$;Fl(zi2A3BO9uJL4Qr>x%5XwJgH%6r)?I z57VTO(dZE_O7;BCieXkHf~vQ7<~t$CRfNIyYvX%CB6=^TLM_wA+gwFqI~AtNtZjGV z#gY`m)=vRpbnxf&BH-Mv0-h>i%yY-sFT3|$-{S*iK3z2_Gk7q}0pW?ff5r>3Zs>`q zHRlDvIDyB5 zRNB9-5sJ0^r5o2pEj5RVvHI#8p8js4I;$kxN=S-SW{#J6M7@gTiiek1YQ2MvY7a_n zXj3{W8ZmZI*3~5Yz!GE3K7_gHkoaqM+eADZ9$|_~3|0 zv-7^3^bB;z^@y{#I-e61<2zQdG3yqro43Z6(RJAVH^HqqF0!uQo}(oMWlH^j8vK|l zuBY|y4IOzQcpZiNFQdmim&d`&OOKx@$$DyPUzSRFOw!1A zT;*{{f^g!JNi%V$3V8>BL>hQb5iS2QE~Ll_pISeq722{$CneQSQ62Dg0g;rvEt-Tp zZP!lIp6EFI-e=x?i^5pM(r<}QXt)wGy_5ZU{(sh|K~MV zcPGCi0HVUl30>U7_kxdP;h&3UwLN)a3H|(rlNUC``*DrRtGDgJ#rR8CZ)nVJy`wVN zc>zDe>#iJ7r5dJU!0JseqxO*NYnPM*AsNtHNd`H}tG*D>YTEhrz$cF!KZ&m#_oMD7BK?r9N}v-scF* zC&L~+oQpZ{XvMh6!?j=ja>t!wokjYuaCY^oyyr*%zRGzB<5h>bGx?Aus*MKS>hc=0 z`UNZS3ttyPMWI%IJb_2aKsYQ1zv z1kGM^6qQJIi!C5j%V_V)(x*Hm`}cRGqI=oBqkQb~exV~+etMSRGlK0?2?*XeF#5yt!7+s-LJP7t^;V#tsOlLb2vb;|Z(X-0TxbtQRgqg=OQh4k~60;i0 z%UPWn(s)z}`83YPTcSr*ft%dZ#HFhk3Xd-yi$N(7*S<4|0yZ?TOSl_p%g1G|o zbqsaMSHRW11%?PId6hL>hYrMh6^)rQ87bI~q-D71Mx1L5sZx!jWo0nQv_SwG<(@=N zp4GIv(ZMoTxQ?#{Uqpdq9ibnRF#!SRif@ddO?e@~L^C`~WFG*p)Q91H-qKg?ywo4_ zSO7gV`6Z~V3O|=yY1sI0w02@T8l27s0HX>kb*>T5U>)Z(K2@+9h;OBbnu>&)wSLQ@ zIO2Or+~Qk6*7echAxi{=r19^zPjWz|+}G_Q0qWqwV72 zc#aI5xV70IgUca_XjCKQjzk*pg#W6MMZRjAzo6#a_nGwd>VXYBahoZP3Ejj1I;RJ^ ze1-GwYq9kpnbfy*Lh+{bo)Qcou_`>>7m=GXAVRe}Fb!SKjj)iwemuRCXVY{=&C6>R zf8a_NP8O%as9k89PY9k=5zLo9w@{j++T5k*{5v_^q=)0X1?c&tFGHKZpAzZq0k!JL ze(_mE)T+zM2KE(RDuZM&HJ1D--iYmfGLP(GPvugMJVz(&MVlKw&sGKGZ==(P=m7UZnVxgGi{GOVk(q zil1E7*nO0OLBh@Cw6rx$y18|n1&XJA#>G0lEvokr;5ob8^=M%Ri1;Tp_T`;`othgb2u#xzQd9XI_nR9`jYnwQ~PVh+<4A`7SALg2s;W(eVDJxHV<@{ z9&%k6G5SKb?@*!Gy8-&t%=oM;YFQ-;``ac~O|%UL&S$H-BJ7r>Uk?rm!qSL4ba+k? zkb%pfPNEL!ZiZ>lCVRVqbyLi5bh)4%bg^cx{*lb~3N5v=NcOuSo%l|0;RES-aC}Or zCmmYT)P!Ay4s^Q9*K!>!vgAij20(L^aY1UHaAQ_G-oP_N)q6V0-osXXyX zC~gc;*bvd6p!jW7Dl*%Y63@u57F*=3PNd>zG`r-ryzDF-_8W(d>$f5Vn1cqjRh5zZ z8H(ZqT&u#&ej-cb>4>8_dv)U?U0bD)+)UWxf%V%N?dYiA?R;fN%(!L!cubMK@b03q zE?v$10vBBWS66^1e!kpj*W&lY5%4iBE7$4?#J-6q7KCwibL(rp! z){5s5<6W*a%=i3@fdMNW-|#f7KAc;9WX3Gu9O+yK1*3eUGUK4a110{wN_F;j2?fV!y+U z7KJqSWJ$~0G7%}tzgguY4-!J-{qBI(xrk}OKZCtkw4Xu8G;Jt@C^#3e|5I9N9S3Vg zTw%(Jb2Xij^@$dY8h7-?rQ1g+GwtS!7<8I!d`i>SneM2Od3L=SYTJq0cpW#{29`8# z;drC+3M+5Yems1H6pn;ns?cvtlV@M}!_Oi5loBijCPG}nz#=b20oJ1r5Pt0QS9G&$ z=SWpiqB*MtTt*Lr8T5pzC< ziw>r!LX=4b2YY!wngBz9U8LvOo)*?M7&>Rja@lRFjn~pz8yMF5^=2i{3a<+v_jX@( zTegQ!)Uc?0$OXz%-RyqpX65zH;(6lPFL&kA)U#6GV@AF$w!=NRh6klF7+TEM(rBLI zX`sZsfjZWZ(xk+c2602iR4IZrdnJvFh&!CHEi80&ueR-U^MoQw9DEPpkWytNlvZFN zT?At{6G^R5tFxqiPvvk*;H8M&d_eC4q4+v=(!pX*W;6_Li zEkiVrPnUZD#-LF+~!U(&`F4@~;!k1cT(xa-GMYX~|rCv=; z0Te!~yce4YX~y1|92c7Uy-4%zoq!z>{y&ES;-b>hNa6xsQBfc(ki@FLBj)}65(%Mq zJlo6C26k(Ln00q=pMstq9vlXFYO?S7{_35H4nAq^{_$4|zC?eZekOmp`7PFZc&8-X z2!{lCgxU7e#CMkR9s5dvgK{i?EA#ts7X%$ zATthf6VQ4{C;vUI7(Np0-|Sa;)ZjLGG8jJJ zlBM_kX4x$Qtf-+OIgk)zKZjs2@X{S5^N-x)h|3f7b7 zCI~_~rPjmw&4(jb6!P_A=!*b*Qtk7fGD($BOa^Y3c`r$d)MGViw#K{_G~+LFeoGW| zsQgD9d|97d6?l9=4w&cl5A*wr!ZI#n*?SAx|3ubLm*3-7&zrLLVzA&Ln~0M**gU%B^c z9_!6XyyvTQ%X{{$`Mq4IgLqd^XbB0i9$1Dv>?!nR_k?+~**oJC?~ELlkLjwGOMCbo zS5Wd6ottW9oF`wE6N4Aa+73FcY#KOVe(UGr=_ZjLOpt-3kl$ICvC|fGm%%|IHiCfZ zae~hD;7yxvNWNVwpmmYSdGbqNH; zBmftlu%>ftF2zc*x*3RwSrf8fW(KRoBQ3!@#psK|HI96g;8j7TYk*ZNdx~vhjRh0D zV-$v{of{d66u!RX3KzHp8TLSC@Tvz!RDx7}xpgD{r2O(tPSxhic_)&0UlEy;(?*NO zHyV7@76>aZn3|fG@lwVOjj6kQFmZ|?wd#u~DC|OMlNFWS9SzWK z$fY>@oBnaj7>et8fp*g(%vw-h5k^}*7|F{Y@im0idAS!Cm-VTyPan4giCBK6{s|3D z%1*B9Ct`Vxgm$PoetCD8#qtpTPxJNvF?$&igacnLKBAc;gZ^pOPO;vzl^P_JfjsqV z=Q29V5Y_I2tTc*z6IYj zvUFA14f~(0bey@lTlS5p&O^!5G(L|D*iX^k7;IzwgAJLH<~$Rr))fEhp5T%yrz;4I zp9vI)hQ10QDY0Uf$Rm7i#ymezCi|t#V-$PKQp;lq{RbSzLu#=6!}_H|i|20~Z#HZW zuW~(hVHBTqURmq5`vzJ#%rc-)8rx^Vr77EWACmM&Qb{i6rk^%Y2&LqbiOC^>k1**{ z<>Qhudv+$Gv+48ctHm^bSNYu<#tlx5cy=?|PBNg&C@5{_kKKO1Q&r{yPmA!EeYNoXP%|a|>cp?6r(bVkfSm zrI}${Cn#epx+Xp4g9~Q%rSU_nRm6opU^AS=YK)s+1YgyUMbzi2X0}Na=`RWJ5Tv|j zHShlvwrLAMMgf~d^{zTeKJZnWYLESPuebe^>@Swj`(!P@sv^TaC381i+Ey6eIpg=I zX;!qW3JAz##M2vE^tjEWXLu=Gpu^IhN^|dZ2hNOOF&WNq@erubW zVmhP|fdIS}*+QG`R>kco1_G_flDN17?-i;xPDp2o0}7hGOzsDU&x7%L`B9WH5oId% zRfj!%bhv+rCkp}wkQ`>S{%FF}d~w<=8o)+E43)d*LpdR|N&r^&EWdslFOQ{jaOQsPh_w~o-~dk%zzg}M$0)nMp3N?s z8+>=iY)iC)l)cxhqfY1*)wG2fkG4yw=J{6p zVRb=&C^I&g_8m-r7m_RxD@*nXWB9jsu{F&gM9j)274%05+3%3WyuAhmd;ED;>>i4~=!~Ojz3O!6B(FS9`PhSHw zp#*nkFXfm%rxRQ825r`Zt*RNJUHx3rOrcq;^t$QTa=b2F@YpZvcq*!J)z~it!Dd?j zEpP*`0L)BG`CVP4q=B#Og8n>Q^zid{N-e4hpGUKJyj~w!+PnE(&shVm5Iv5WT}db* z>g=PvB8BW@ELKh3(_B*D+4;q&UxN1nhztlpFnkfmbt{XB`upS zt*1kY!gSz;9>8}mfUkcL3%EG%zi|A)Ou0X&7%ZxRY5+!ey*yyseB!@mZitz*24~2& zp&+h#t5RQ;9IS?gw?XUM=%u1sxTEI(wv8iMiZY4PU2FPx9!x6Zht9vhhgT; z-Hb%PWi2r!QVo3vDI`YEl%^qmUU-n2R4{vCs_!nMx`yU7co3eNO4|v@gvpBBBdJ6> zT)6|*$x}Aj2-Fuiufri@Mw{%WkmI=bC5Nt{PhPVL$qUJkTY%p}mN>!u(CjMm!__Z%Q3pU+2Nm3;8=w+LcleaBJEZ2q$t7MZad^U}Nqd~WF9MUH1VS~VL#zMQ_)+-r2GfTwqMd7&0fXXl!A|J?Bc*;PUl z!)d34i(@Wj`%i~n9JHMW)v(oABbuaY@8*;ZXJ*6y$YKdtw<1s$OW`>vf;R#Kbwe}P zJhC;>GbfpX$SrbaqehmA#ra+dNHo+m1T!+Q(WuKq_$sLGM0m`h zwaEN-7b^J#Veq)vhetp9X3#BRV>SvcWT!>r7n;Z%?g)#g)z&ZdiW~2W$u_nn7+OiK zU5~M(x=C^8Y*bBP7G-6dL6Zy_A}P>svgiH%r1BsH8x|QGB+ZWc%bBO*Ya71uqRICg zTa?oEixaXG(SL)m|FT!}Ob8B!&>kWr0Y_%Y#&?g-VuEvgrPb#-@r?f<_?no2V~=Vn zZyZ;_62L*AQ((UbCio7aFzlI)k$F6GdjE71imkl2mk5c!}zCo#bHeeYsxG7gWPk;FgOI zt=B7e#V~HKb;h^xpydPHOBXli$sgV;k+p2X@F=qc;6f*3RCnM;)%Er22KB1nlWAX` zmro9rW6&w!jh*QtB|$UNGs>GP;2f`4NqM^?nxjEDiQL2-m12U<+^}KO`+(XRrI}c9 zeFUS)PXGsgc_t*^WdQx|24PkO{6fwarQMeY`C$$4Z7y`Z3M-nsl2PT{gPUXgb2tN0 zZ()aY;8$!6*l+&n8MHD6%haX%VWw_MG|ceYFlgq5aWSj{k;#*T0vcU%JZuSsK^C^g zUyTf9g3B3B9aDlCb#MjwgalvHXybSEUIcuN)v~GM4~Ib=K}i5Q zyO&_8YO;MTGmnb2#*ZRvuh9U0iw(-$#eZ)ESPwH}~~QpbtUq1l3C@__tyP`~vy)S4Lg3JWTKyv_Z}a({yr8~^Ax)sTf@ zcxtx_d*c|{6o{2{C7vS&il1H~bs=3o${$Z`f!T6C&(jy+KH`f7EIBn%&yV)CArZ4h zqU4=q1stA>?t75*wKcCP5I*lf)GS#P5^!6#Zshwyiyr<$z3|)^O65EpAS8Yw5II+) zpOf`X!mxlCz0kiHicNsEbQ{;HI_IpRRw`HU?b;%Z?a&HmM^WV^hoV8D{kMdkeETv6wlOw~ zt2+zOmL-;?sPbgEjA7L|2wzKa2UVkfX249iR>6+00ao6ybJJHxp<$AS zIqXZ-H0+P^ll&+61sIj;d44M&@UmyUuL}A35&6!BiLjs*SH?D3GnU~AiFKb>U>4LRKaYyG89pSf zc;JywyO;RcwHXC%O^LP9Rh-9jqAj~(1LNugh8UWZ_qEeBSAg$ZTQ=jSbM&E(EbC$t z9D|*>hki@cP=waq*srZ}6r$5(2SMC>Z}_fnGyYIzRm*Q0mPA8;uBPOp{}S z$PETaNe1>!MC!su{v5MX-v#g7jgJee2=O#htpSB0959})x!kK~J*6pc;^Wdg*nro? zT@=RiNN3;-;i%w^=179xBZbBO&X6SP?GKQZmZ201PU`S8x1Q8FEJa$K*nWQ}gQ7*_ z$8J5*xJ&v*CgN?+fyfE2Un1Y!JPFM_blo`faB)+vO)X$}$F7T2*c`08^wXNEx)e1T z{C)d~9C;69guJ>f#5zb zhiyJ!Ku|u3;z97hJdN#QMRySSu<{$KuprlSxF+r@Gmhsfo%(mEw0$wtnU+w=aOee& z7n-dDqIac;1hiMz%r*H4jK{_pSI@;C-6Af~p>7`#NrJ2QKq{~UpG5?5QIma=X2idn z39vc;dw`OeM_?Vc!NZhC$? zbkTLuFESxIC(&s!({cbyC%da_3h|irm(qQHwSyKjW+dz1*{G`;HbA#);vz}Tzt-xR zB??dGPOSLXf|g=mlk=u3yGOCr)qH*KjVWADjIdBCB`w)(7wgMG_F~OoOak7aZ4bF} zhqT;Q)`5hsBvpn~<2+ZQoCNrwqJQItKJ(1Z{F194DWH+91Iu4mm-nkIe$%(wg1^>( zIB)Ik9D4eM7e0qqe`3ybc+G~?(Ng)i;L%DyJta7>mm9$zI}-KHld#4IU-vsfDlBMj zHf(zQbhYY^AJm(?m4Kt!Az|3Eh1oi6d-mGUAqtYbtd>1qIp?WVw)L`JD}wdYIA zP~LSskZ3@phgRaftWupyOO@!}TyN9M|Txwe3Z|CJ44f;M0WduteJ?}0mSCF%z;Ni(xxao`StF|yLiE2;Z zY@>rf+oK7`y{$v-tZjU2UQv1aFYb}iOx9AKZ&5`yb-$#rr7bw2EzOPkElPsN5xE>3 zfKDALRq=`P3cuL=e80Mzn9(gX1klRgfEw+3T-}XRM4Htu9q-eI*F%H5^*Tjf4d5FP z(x%H%W1)OGACMo&$Fm3~?-Z|IxdN%MbWZAZ(z_sy2fs`4-#Ru}oY*SM`Xpy7nM&WK z{4&cEb!%(zP4NwE!T_-1CDvx%lkC8h$?BXECU0MM@6t*VY+%MdSknz|t1ITJEvoKc33Xp4ZgRq6mPM@8vJhuhvSuc6&VU z1bowGs=Xo(CVXD@_px{~ToAaX-@aH|Cx#dO1MGS`0G0A&jrX_!yoE4u!`J$JjHu3v z&CTquo$J=o)3X`JP6DQnhON1;m%+DR|sL>U6_LPY$%*v8w`KT0zO6yy zqNdVX@|Tjh=+57tdpjBSH~g74H{KbyyWCX*P>wtvq6;)%B*`8VJKxJ9df(nS9~-fN z1s-r$|3_fb9Z@Q(mA5+Zy*;H?yyBUgiqHcE{!*_Q+}P}Y-6#!IE07>>*rDXv9HxP! zmZdbPwMHpUwp%Z&XKdzep9p*Qw76-f0x~yYADn#t{IyRfJH7AE7=6d&TOS|`-R@=A zN%Lu4(Ic`E%gZJCY{hdWxQ?8d5Iy|!ldVi=W@{54chu(Qra`BJdp3IFheM~FCd~ze zEfx~mm0~*G&(ee4CT-WRsMjD)zMdRzP`!fOjA5S`G4)_WrLWI7VghgY3{>aBDu09!N7s6f6?<`we=&_Xx-M87wG*I5cAmH%Y9hhxMt zGqH?&0M(eORexaLu4(b|af55kB>Ctmg`@Sj<7v?oJ38|Ez({u;MI%?mMp0fWJ!na~ zP@1upNDLS0Tx+=g5*uS`tw_r6H`JDFnv=5gNPjtwX&)?66{hOh%Fovx<-5+G>=>_JSHJGJ}Ln zJ=FZXoZMaHuaNVWxO!+c!%oJ}RonGw`269V@4xW{5O}~veM}wm*xWSdL+7t;Kf!+@ zVJ#e?zH^RO);j9t`r!dn9Ky~Qx(Sb!{uw?JPm>ZAC;5T07vQF1GjD_?BSWYenxylL znGOqlbw*%))O?zIf)XS8<9Gw6;9FOMdA^g8{4&xKh2nn&r-om;!~afrd{90nIork7 zTEC!;?5fH6N8xwX@;Wjc_2(JKyCP!4&Qv12q*zytV(8x0aijtI+)W%3!r))Y{5~(| zc{Yg*!oVgctQj|9e9yJ&Hc)a_rlIv4*u#rk32bc{O?KU3%(7e`Re6InQ-oTeTos+0 znmxNDX3;0{rQM6=qpAm_rv$!Xa_zLNt_nIb-QiI`UiE(C>19DPR*p;dVdI<*yZmdV zvqQXtrPcxWU*cZw2dHD~SPSZ-lq5ffj@{gTEYGIKicxdbmYueh>=!)T_9UMZYL z{JuYIrICY9qlp`9(2w2^3MVC`5UQ?syRC906qe>vfGOH58$eB=bbaD-zEJoG1LnBeG3B2pc zoSFfJC)YACa=Ikw{Gl$VnWs*~wS`o)V=$eBEE#~m+mY!P)1V6N2`X9-mF>*In=wQg zngs$;TIUyTns{5g`}*(}v#%Xc8R-0x|HIYI22yU~WQ)&MlJ|SJ87|WwQwLj?Uzqi` zon@QmG|!YioRjzmWu_*>JFN5_j3f6t_+7eBIW~nByTa{Bw@gj(x1Pfm_lgV=3{WN4 zdaN`J*jk(3ByeapD+WNQ};i*78QCMGWVljJ7Oq`|?nJ1byP!Ql}@D17JT1kUAOAJE7ls-slVX9M$`tKqwfWuAq z80zFVuP6t!aT|4_Qael!Xstr!c>dDKZug{8|z}$-9WI8w23CcgO;Wv0(iWT+dX`8~XWx zkDx%zsS3|f|HU!-pF4J;7|g7EA8^jRh#w0IL3v@5`HxTr>(~=^(DV)A2tKw)Kehmz zoc;3V9~_dc%J(M+R86+-rPWBxLd{E7u6wEZtNUxxc6rkrV+%ypGx~?w%69@kFA0)y zj2doZa$=auXn4?AhdxF=Cj)Foi8gE7G18Tc0bZGR$q=4eMJ#sjRu)?g|9yug@kmoh z=j(CqhS@SL<5lB%bOd`8sWjEgmV;jyOe`CSWoZCfwYa^)pI^rpl763XimSa*;gn_% zboiTrp7b!KxK)q_Dq|pxwdep)Pb6;rf-5{uKRKAV-Q{{H&+R>pLVJW`YYP4}rNJgS z*F{cAz#!B510|V(rHjJE16Y!pn}qB{i9Rl}d9Wi@&8hdUep`IoY@z%@$De1N5uLN* zn8kK2zR!`npeOl+MS%-b6jaE%rP*gB?(6hXmc^Mw;$RFVG)$EgI)f*v0fUPFz@m$7gUEqZ4^4Au`|XY@Hw;S7L)D+PGw_u zvL`x9t1usQykQ$Ozp zqo1^!BNQhFF%KnJDO}jj2Wt=gKd&%PrnNIR2m~fhQ*kt6i5rbVVC}rI+AcY)Vi_GT zz%N~y<-LUGZr16N+83poR29P>(U%RC(Tb2K@AZX$AzCN?3Or{d?!*`C`vyu(jCD)O zK+n#yEd*uPGA-Av96}Ne*Q~>6#`%@#yv3Y-o_=vW=*+y8*o57d-Kcq$o8-m*Vz ze@NN?-g5eMhjtCcpgyE3qx?S8FhY|mH)WVXKKTrl!WCb=wQ3J?sP2Tnw@-GKc@ru> zv+DITfGVFInjG)$n~UHFQ7_3Q=*~pB{?wp0WsTT(n!JQqIpZ33M;*GYD>e#gvA*~& zGl=&yv>Oi#2m>2(V@)!W3IqsBL`D2TmjXonc49_@A2 zyIk>BVUCvW5Dxy+I_65b&td9RhJlBddT>NLXz;BaMA^Q(dL6?>D;>2~HW(3WV!Jvp zx+LmJL?>xvM@?_2x!v6hLwgQ}0O*jDB7&M1k1KR%8?lOn2Qi|_4I?2HG2=gif08Dc z2!1=Oy@^FGn4AoDbo-fMd?Q}5m`z<}t+6_y+I3t2P6Xe2k6i?qD#V?j(?gp8MQ`)=BKH&8;5*u{z~~7FSxMQA^n22c`IJfI;N~5S~rvc%Y*G!;z(E`VK%Vo7Zw*h=2_894^SPgQZ zi?98H#~HJc;hwpTEyd~6;DpWgn5t$`{fHq1`&e5CjDesy*vAhu9{7*k<0BESF!44DDp1Gny~8ZYF|CI0!xAP%MUe2b{?Flj#?8R0aZ!V7a)$JfoY7DNeVS9WC{>xg*C1poCPg-?pxpC3j+vfX_+PJ z8i_lqqI)>3g7xJEne}*kCEJ6KY%w0gxX=?BFs)(s zwLvS~d{4N+-55w#z{D=z8rb&oG&e$-79;UN?CAP?!tACuk~_ept>{7hC*f?BD{B*< z=ZDRfXkkGU^?=GQlh0)+S;m0H*EIz_Vh!OJL}hQQ1v~6v=+86E+uO>id4;72u8`bq zw)n{iNc<-A*o1^4hlK>J*NR<~4D{-Lux+YivznqCuY*7Z~uI?y<@nSfA>qU+W%bGsJ|M zV71|tB0OfRKh49?w>8AjgnLABWYQww!%11R&9{;OZ{w;iA?y>Fv}KBJNHS+KSv7=_ z*ZB+et}M5klZ%Mcp!W+yO!s2EfBdLy{|^$ClMOjm9Y09v$>n@^H}xGYiKxVZ(&ft( zOo~6<0e#n)2oQ8$Y%iCSB!r?}?TFuqw!uDF@kXz`EGAgE;U@)Z=2V7(afu-KXOAMY zrl_DkV;wzj^7bE4&DL~PvpmrRl7gtwk}_^jL~oC6oM#p(#>QTs3deOL2h zS`ROQV!i%-kUrmS53y&<)Y#G#O5BWsGUdhru5m1)wVWB-l z+Q!(bLw#)7G&uZ)KxxWZsV~d4@K=OJ)Xx^_DUAm4+m$s{ml(iH%>jG=d!hHnw8d5{ z#2jzfP|8usBZTztEO0)A*Om+qVqFRK5XRu?-?M`=jslt?m&N*|MYGslh_*rHxP}~2 z#za(2lz(e?lXVN3`{nUQ8t(HhqEJsN5RG8;{q#fD?&h1m{D_*uQS7VSAf4XixbZD? zV(LPB`dn6pEZfa^`4I>Do6{bQO3|^pcjB&DalR6)xKLK-~2&vSn0RiDGTo2E2bLF-L z7!UC!*Y=kM`9{ok(&Z;8tA_m2D=rS@j6C}+PZ~M|maX`WnrXbgo!g;LICLeMxtl$o z5IB^b7pxn!$0xQu%TLCs|4TpJ>6CH$MHE-*>$6FK{BKt?;(L9KjVBQkDC}xs-FHm< z5vidwod6ZlHnRn$y`O$g5W0}pI}uR6R8A_KxBaB-_0nx|H3SV)S6%_T25&o0<`|3| z92Z5gE@j2!F1sNcZNpRwzwLplVAlAE5y2tYVV3c0BvE)nbQ@E)9+RDE(n)R{Hk%!R zHm)Wt2PIN3XHx78GiW^33G|DomNIJzXE0%!=J*fGohGo@isLER3d+%>UV$F5*WC(w zH@kqsfaMa3tvaz^Y@t;n%gA}$ewatUhN6wF4$N^M(emQ*m~FDm4+<##g=?o6-VnxX z7|&R10gi0E>mXp}S?`_s4%UwEn7_|=Rlw0ak%6NN@opmlQGbq3?218*jq47!`rA79 zZAHX4ie`eBvgR4b3*OjvBO+}0)O{nm-J|0vGe;hB^QiZKcu~lVnJ&tXZ2{^Kv-#FV0jqWyS@_YU?uz1Lm zLIMF$PocZq6cj_KTJz4`IMFI@^F+Tlbq{_ht^hDAycL?6D{;QA;1$Z)(1_hUg0Roe zlR!T=J4&*z=-K(F*zum8=Q51?l)HvR#KW$*_TKQ>ESxF}qXHx~7wDG)COd-ClV$)BmztWxE{wP&3#u7E2{!gmkB_SS zTP8=*=;-mxQO`J2*=PYQEKT{^IcLoP-F?EYi5WYDt&tWL;;~T(pSi#mgM=xntVvSb z?tB885tlf|Fv_Zr7|2qIFi$IFg&&5ta>gb3DK5Rtuz==gNIiHN`NlaDh*Q|PfiGKW zoAFD7d=34&1Ufoj`6TUzc0u{J7w?+Z)E|Bwi$dZ6JB30?1keN zSB1~m4kS3`d%f_#Dt(Fk0T8b*aGu+zRkKPxRtkDeKhr z;PD>B!ok=4FA33S1pq&K@)CA}c`3x;!zr5Pm=}R=+AjdR z48uAjG?d^Gmp8&FbJL#UsDl+MCFYV=a)@+A+*(9l&}WsNJJ{kzzb+z2?<}YGyWC8h znwt&I$w5}~yPAC1PcC9_p>K8TRznf9<=D(oL7v%PCR+oYU|;{y_+*3#BGlPSOLl3Q#7_3DES03SV1TUfHL-SS8Cayp%OP;feipiD-0gV_O9YvC z*wCWEJSj%=$aQDh2UJezLizP3hNT2=GxWC=h*sR}_lnJb(meg^IHxWBc@STU;Oq?T zx@6zR*!c>x#@pTNsAfAKY&E*}zo}8dQ+0AF%?buYW{bopGqgu;-@NitXbT3T6xRu3 zvqA!5nv?{ccEJ&)8V-q(3{aBZU}pzdIw!rlB8>q{4d^HPA=yFdw9#FuOW@hatc94+DaZ>1L)CJHmO5wGR{8 zzW0CU22m)tBr&POdJZc1&M+I3>xPkIG}ps28u+2P%H7X6g2p(|QvP1<1Af3OpCkRQ z*OpW3taX_4aIo~!&@QnA|AN^1AH4o{e)Hczm$olo|gqA9U|F%BrsZHn7TOcmvN z#+@YMoM(Do!sokM+t(wJuX%h5V&AHmqT!|=SU==idzl$0K2Ytv1P0;$`0`NTYk}Wb zk!noz9`$F3?P->It4J4-Iz39UDrR85QfIj`^Jufo9T~+izGnaTBue%3XnENsJv+9Q zOZ#-^arwqes!$)_viSPK$I#U)E&$lcvVmsp{N72mCp*OMzF7w{jGMAo?h#Yi(o7{spa0OUFtC2n(wZ`!okr4M&ulo@v%lj$6>4K zEca2KMah75D~$a~=pa*nsb*4deNi(77RPB;H`;}|tcp_D%FY_Mk#M4$loDsut|l*2~aL%)Tx+b{uv*Y}TYo?hJ)j z{rfglIL-&yoCptMRmasI*N~ZHJ52f6`)Y^;O+X^9xQK3`XEcIZ$i(@9M$r`1YBMeX zh^$tM;mpJNH;OhnV|;sank0sNcGZdYL?bV%+4>;W2JkHT)$*@HxsnWT13OD0n@P}b zuvY?`r7SjLj@0vv{TI~#AZ+Wh`w|ubrl$d$-`p@tQ^2|B&CfLXdqpy2O zs$xt!VF3)_-IAx2XB}&F4`+a`o;JEZuwjzoV&^Myt(Ij}DfY=0y{>4+;|9FDCpwE+ zwvz%osxJdZQ;9oze)Fpy#pv9?v5AKvf@gc}2@GpT4p`bW_c*9^4X>~5WT`eROM)X* z_HHqy zdInypOVX$BLT(>F@?_wV)tZIfMp9YX3U2)=4g2+}Y%ma0q7!ody9% zp+q*zzhc_M(mMcoQP$!((8yk!N)_dWyJ4wLp zPe{5y8?~0F_t6iBoafYp@BL=Mgv<3dyw@@{53de8ZZv>`>?I|AJA5?wavMr z-G;E%NXf+8WPkYsg4WpbBj++8Z32;NT4}-h-OjQk%#2l#H2_OcMtxDKA9QiJpYlqI zVSIi6(lU}PQ0;-DaY{vB+d#idznd7FLs9)it75&CSf(eTfOH+2{5c4_Xyn53VTqZW zl|jdG8S&1QjBE-Xd7iy1Sq@P99!DcN3OHjo8oHTkIV}}vgtQF$P1Uu= zeX?}o;~h(Dn_*ZK17 zzsRtcxPmiL*F72Ka;IJ{^C0?16DPmmn~sp6&cKlfv%+LKd8N^Gev)wk8?hYy*_Z77 z0@4v&t5fl5i7f`dZ=X7!Nd85EBuNUOOoeNH;gYh{W?k32g9bT#LdZ^^Qse5WmoByy zN-LG@o#`WDVt{z`Tvr&=TiPJKZ{Zc1auJtQ=YCqE-zdH!dporGo!&T=`pFK90!o-s zR9IHI|5_)Bn45zIVWDzJ(i^vX>70vixO$>R>;d=7hLmJyPlo3$F21#h(typ~T8eNR zJkdVwn2-9pD*b@WU*9jpk2qNzt#l}pqIVXMw3*U{;R}{0?484hSg_oCPVY4g_SiQ8 z{K9ctFA81jNi-GIr)ALh#c`XmIhzlU4NC`K1Cx{X{XbN=54zfpM1>h?RE6 zCROOfcZOfGvc$wiu}5r{hj_(*uymk6QVGsHuK4$T+`V{o28_$y-}9sRA2vE)h@Ey{ zix7c=G9K+g+k6@$d;rAX{>BInE{bC~1_boNpFr_Hao~*$tRqJ65f=6fsh_zjVhL5* z2m8k~*lUdb)L7I!S<|`@{Wi(+cvqZc+5V%;AW-?Wdur+fvA%PVqzF7VHzknh>4yTr zF+s*yh?P9bUs?&G5FDUS%D4U!nCHzhExmjWag4=)p{5zkTYV5K1oU(#@C(Y zQh_5Q@W0%_YDTZfzZ26>YV|XnFtEdrJvc{0|8em~6u7Mt1s0C5tBP2#tZIX|FK#lp zs!F0`$rblK;YIT_Kj8(LG%w~~q+j$UsrM8)1OoEz=MP@Tywv8NGIGN~?r>-ACy@@h zORIt#S8Ix=02_T*yw^6@8>1jNhP>c)h1x$g1&zn;0EBRQBHxdMdfj^gLaRDERiUQC zar@d_aHD`BM7DCOW2c8h3k-dd@wqcXa#4Qzk6{T>XBMd^z6AU;sN?d}+;pWQR&XHwA_2R+ z=9*=@ER5Ysg~WA7F+&qcZRTTDM%M%1!E_~ZoG;@q;D z*&x9Wk2`d=9lNL4Y(Z%~A1LHlX~m1JS(9|MdInn33}U`Dv<5TyVqIL{T28j3yCMiW z^XnZ>$vJ zBiyPwgKc;?@41k3j{b>xBZkFtArfAM_vd=o zPB+`iN%DPr9sz^Z4T7AIESj|ZLT|X)E7cf&(o1Cyi_NudQ^$0~v?y7xvW8gGjZfGLK${rN# z&|V|CquvSV+I#jb30-A|A(NTvb9PrU4j!(aWex=$wp7_AB^Ak7lAJmdZ_{HD z)QK_KC45Qw2N}SnwJZA9yAgztEGGw>L zFBd|XYqEus(0{%s#pkj)3F@tbqs)mbfPqaJbbb|z45x{()-P>LXn1|8LT{%{^sa3c z=;GTg?-xLmiZHsYsMBl^I!5;R;guLs_HpkMe$`SkGDh?V7v>Y&zr{(KJ2YVlSJF$H zHjxKl-C#$%j5-oa4;`UAmACywVmCD8t9|)9gs#FM zPCFBz$n(QVeT9dJkBDxG;rB4Cew~gzk9Job+h)4kKJ1k)GE7~a{d-6)!L!i2XmS0< z+6k+HqF`1BLa27Htzyg&ciTxdxSu8&=4IMJJ~c0Sq%tK=F^%M8kyKX1&goox!G*sx zNk*S$RYHcBA$p=rT1fdD`IZ)}`nOYIDYTv271%y^E%}s)j7+&2Weq=A{zezWxlhUk z!jRt~!~Nl-@bcN6tNlJ_-dL2jJkdiwSSBV$>~)A-&nULduY0aDCc7#`1CeFqD%{gB z%*JS=j9a$!SkheMJ^+uDW{-*Nd`+{7wIjj?H|leE6|*u$?gROBHyg?IQN8qm0l5&5 zx2}&y@v5kr2@STT9@=gb|LeT!BER@oD>`iHV^q;4IPUXk50!-}6yg6$BL@bRav!1?8TUB)1vF+0@%DX+Mv`AU z2<TS!v0-ybA&P@BfKF^Gf(AivlacC)(8pf8W{$7rM3TF2LJyHOaB4F zDt;~i*Dc1&^8@V8^IxDa@va?!HSgyAW1FvX#7h^|03P{&=6z9&L-+=)EZ>vfK_neI z*s>t1go0!S(e47=$YcUqO8;~eGk^dei6;VvNDBkp*nfj1LIzGT+K~Pm+7!k7)QXpn z*)9P0RjcoS!e8A=((z0${2K#GXPH5-|8E_DM;__!WYP`wJ?HZ<<&%mB#{WNZ$S^-Y zWB1lr5n1UyJ`@E;`RZifC@X|Z>EBX=zTC$Gor-WAg~h_h## zZaO~5(PM}4_VC!sBU+j733vn_q{B18 zFNS=W=oLzFq}N)cE`WJU*{=nEZ^$+?k>p+I5&yA~V1j4sg)y(7c+@buql0LR{c~3u zi5~$#INS3Ohwc|jq53}}$#kV>4jet*&+}vc8YiQ9gZCD8jbU^;9k#hBZiT{(gjE+T zhOKKP^E8Jgcn0EjL#~1|WkA9z$SmTT2Zta}>kn3)dbkU>0dU&bYpz1e=h21{cSLK%W81`#46BLhJe9Fp4WP0@D0mI)(}v;BB3 zeC8WJ*h|aKkSZpt>2tM$$$f_8ydC=3e=pVN>$ZqIfpc!EL@GHy3iTi@*fSFTq?)3Z zQXJAfLV@0oBwoZUS1rJfaH$7_s5a)ty}9?v9bCRl36tjN!tDPnh5IdOUVhYv^{@QT zjV;+a;jJrvnNi6_h7+K}cl!E>`h;ohkHr*nVk1IT-C?+9-lY?xDe<2&qZPU;j+LM~ zX%x_yZl@~T<`wRYX^^p*^+#_Q{}iNORd>_SM~*W#Anw^WoMG~OY)R#h|L9(@@kMDQx&tHWYPqW6*K&eMOF8;< zM?)WTmH0;gAo%YMlN_uJukUvcWH&ABDyKUM!%@cLiELXjg({Yc2qqI7te6&A*T>Yz zDa~8dwK*Mc)}f8avi>$?VvyjQ%cuW+9UFKxEXi< zmuXEo>V#LzkgZzkuxp5VtRn}1q)ju^1~Use`wTJH$NR2DN-=s?eRl*Ut$kLBkzjh^ z&;>qgH`g1aGJcwFJp)m9Rd}Ighv214tXs{I)|x`_Adz_0Cdq}c-;I0`H%mE@=EZaF zcGqM_u=3cXNfb@5@n4L-;xv&eSD!k0TJ!4&SHVDr%CJR0(Fun^JaLLP;uY&Y(tbx@ zXhs+P#J2*t=%TS-=oG(;cc`R<|3J23Q4JiaZ5-f+%FgK1V+mlc#fw{xv*H=5-NExm zd-}A+)rqS3(0y+%YfvV|tliZP_CQp1!yfvQ748xnes!XQ`*PO$Fc=(nkYQlvpepk{ z@yP7ceUkvAleTIaUaa~A4(pF!@KJ+Ki)#=l_&7|KOEdFMte|gFqghb! zhiqq0y1l1f%mhlWvkX(NLX~h^r8v|ZESQf%p`nRYpw1cjotOze#qSl6~ zVj2Ykd&wZ%2zAtqw8=I(dLNrUq06^)rJqTs)FTI-&xc5985ibuxk9@X6>5>>o6$Yc98Jd4|mvhAaO!?fsBJ3d#NtGN$y z&VbQi`J4&YD~tU@*O@JSrr)p{g1(FwdK7;(n{eE6Aa+%Zr_z%m{edqL@X+%#`uE&k zG-F+LJc_}5Z;uLp*8v_zDrJ0cWu{mr6sA5ijD7x$H1?n8!P~-U+$?vHxMhw&RMhT* z3E{LLL^xP`qcT2eN8SU|G}@O>dZP~z7g8H$_r64_*f}zg>1XsmJn(okUi6h66Ea&` zm9REev?w!UnOMrXPCh(9^nGRrgP&>YUMdSug<8AR;T*rwQHLLGICy=4W8nvl>UOKF z`X0Poeqj4L0P1Y%eReF4!9CaB^rZfTLUC%0mk!BxXNh*5#^J;|xN}2zXl$Wl2&NdA zZb>Ac&tfRD0jC>5#J2`qrc(`p_Y)96{P|a%Z*5Do!?#&qv~|LTLN}Od-N24koR934 z!z9HDLCuGf7oqwJp!pKZ1s55pQScu=tAyz9AnwUe{+>$L0_CQfJZzC4W~24pED?gU zvL+Lp)6HWMg@{GYw_jz-mxhEDA24P&&M9ZAO>>yhZMdO15aoDf&k_)F3n_H&ad)lj3e*TE-X95 z9gi%$3(rw7*k|;*?Ng{i%%Uf9QN~r7+~i8q2h$mouOro2!OtCD7oD?3d{!zW)7p+$ zG~?o|y&c_JL9<4%>O>TOl)gkd?sVj6&u^Z1dXL7WG*av%Zq!AB)Cg$)FsHch+L;z#oA9p|E1#@7(C5=&jjqKVe-M`yV=D;1BR0x~aX(t2vLJ0$q@xuWxg@2Wjm>$?*&uBT)pqq4Jn@>_=#P#44wy9f zv(nk)lPHTIWYun{WSZVdHg}O$Qr*%bc0{FaR9w{Y%f!B&C`*s}_OtAkp2TjjF(Kb! z*wGnX!&}W8?q9K35sbIKl8a9}Ld?10&2WEjCEvnGM$Uj5N2AwWC?YLk;b!aYnJ*T3 zSwm38=Sy^5r0`3rk#u1kzWP#?waVphgy+ieXYc_y??-NLP9@V_?`aD0*?he9(YA*t zIov+}UI=`}n`e>c(vfx8H49vTqmaCx6rew#nzp;s4)Dl`LOhH@c zsLy7?=%d_E9ZSo8Rk41GXU5=Oi|F2np<}a2Hv;;-Q)K=~Pq}77@<0)Ty@384X;y)~ zkOpg}R*k86I|uks*WoxOl%}M>%ze zP3LRSauw&!-a|=A6HT#ENvucX64pibArb_jM=PQ@J^Y~IYrJ7fsRXhSXwMP;O~<_x zxN;z>G0-LA9SF6DRh!ABpDJvVpP!sU2_@y(hUSpID52;pACd}e!Xvu+OxOQllYgYp ztm1H$oLNoC!^QIE4dE@3b@ycSdY@f#leISVYeucrh?Y!-VRx34!jM zL8it?E_{Zbm1VcFy$?e};jHg<5rxJ4fDjykTGMY=h@X)T8<^fWEJ)%1(xx8Rt#99XF1-TnOoWLm8Z-KxFFXuo>XnMveB(8n>? zot}X)1fpvQ^jJiU@kyt+qT$I&1gYG2C}IAipr=itkcHzdtyDSM#HgVFL*I@+M$rEk zUuPKnbMKu$Q`L2< ztGeoRotE?NckO4dHAmGQ?(+>{a!|N$Zxrj8Ou7%$L)uj)WU`GHK6o_Ia7Ha}=Qt-6 zs+XD_R_m66gqBAq(K|Atn=FEVAp+kJEW1OiW zeT~mD^5Xq$Q+$enpe5R;04H`^F@uA-YHj=U6k+i&Vv9{Kg4+S}MqeO-5aha@S_~|x`{KN(wWOwmoA9Szsu$6g4cuRbI;-?BHsDTVfJ>> z)3%Q9+eJWx5m{63@}8|DjPI@1Uf<#d%sDmsI*I=FAzn1?wcaodCH1qf6p9MjLzt1M z=yRjD?0h;^j&)G`fRmtgmI~i++wgB=*s{a)Y>U#-HmXQti!I#vp9TnWeBQ_`yMc-y z2Gcbj=`w7C{?bKUHY(Y8aWO-^cI0oB{Gr1n*^>-EjzKlm0YLeE#px0DRA%>QQNA^r+Klx@B)qofeU{VFzxnZ^R z8*HB*m0kzz)5vCH1^@7;&e3dpe#{N;Ohi4`a5w!v)jM`82 z|G*RQ9h@v=z6MwXjFiD~@ZQ7(@>1~ckbxCnN9B|oXnTIFGIq zpE#F7<>9NXQxoD}cM@MDIP-YEn|3@R`mU|Z=H#*ca{Zz^^1(vDkYec$+xOncA2Fg} zjQ%`NQmT~{YWA3db~~O6FY$6>e%q(FmydvJm&x{l&@z6Dt^9u5atc!NV?5>I1BMH! zexmor0XJ4CvDR-3PcUL1LWx?_HxartY1C!X91miJcAQt|f%#a#M2wi?eMefmm){vY z>(1!j{Dz0QTK8(fI{J;X18p5F3xg&WYd`Ybdj94#+Z7dhb`XH!zbdmehi9fePcL45 ziKorslh8e(5Nt_Cm8QiLW7ZRkz90Dt-1sK>31z+3*i{2+!wm5hoq)VSjfVN0TYY?$ zq-!+KD}HgvQ2!-AOA|f33u0 z8<@@PFpRN*VH6?Qh!`u++e?;zUQksl6f!csc^CeXrtr2i>_4#3e^fRgP~U0Ws$gFi zRTu8QBS1w}_2k|sHt{-iU=RM4;q!zwNE zCtSb>a<^C6!2bth-VrFYWbv`~vwq5`U9u+@DL>eK3WXUouz3(A37F#oKk)3h+e@Hq zKOsPTv~LqsHzL2aV@G}_4pn84d`+frjVLYJ)`*oFw`n~HFWzXWS3o&i6%B`&+nHFh zjO_a=C{z_~$8q?(OrxHiGPCmOHc%SdlEfLtRm>g4swW0jemw8U1R0xS#k#$+jjR29 zb)iVFA?I3yGSo5(mYyw3k)O%(Bc)@80w`dSW5(?iy~>(3Rl+Uw&1kU+Ib!WQ=+ORN zd-_lo$5-qmiUu1%oNlLxA#QzhtpLebhGKSg0<=R@&JaK;pp$pm#&!-udZY)j8D%#o z`McixY;8r<&=Z0g*{j7rEu*+v^YR+P4LD_6jtA&tzEyn~e2y!2lo?YAfgqc(vaW{rElX#>a~t<% zFFk)tw4d_XLW6BJ;=_q}r1wTl{el89n`<8%(=0pCkQR;o09mZ+D^A}_4X-6bagR4mn$(KLBY-r?#Wu}R89JLQ1pa!D~Hxs%NJQ?29GSTaq+|q93i5hb5cz^ zl1(1CivQ;R4pSDwdv6=~cY>rgqCHdiJmt2YBht)|2C>bx>9)!8px*U)>b%2Loceer?1J z2_fHDk)Z+jeF7qq!OB(3%lr4U`{6ZeFhfuFxu}&D1K+h1*EAv8ofe=}WkrKtM(C#u zdRSW+jlQqgRaGfIusTye#bfsjQr#BaSUb*%VObi>CluJ;xbHmf1gS#8UdOU zoRBuMC-A?Q=1>Q)N+2L}F+9vq1%#Ab%W7U?uqtgOov4Hg+V{`u3;2HioA6K+l8Z=# zUrSCm3TJ^CKT@C^4WV!xdvcfK6Gl8$@zZJ9`1$0IcM%K++r)=%;L^;TQSc1IYrF^s zwKDgH6Y+czNEzm-Ulbn_1>3JW46yxKWZRG0BB*@{XFCHzHnXLHp`61=ZwSFv=#}x`ifo{~h!7nzdeNv|(r4)(%choP&VCtI#`*p?j{? z`Pk!O_!`CDyi4L}F1xOgP0V^3K?1~r+_HqeSUJVU#vYfIL-a7R`4V}{u%6+0Lr@Aw z=al~OO2VJdd5@it8GSNBIFfh<}n(a?jXmYK>UR7*5J{dh>4|H(h7}od4 zi?DAQ@GXpy=KcVFy4Agn|fSA|)h-FafP6h~G zDu8+4ketxqo&Ipg`tADcu1FrfZc8If5d!=F)OA@J&J5;xjXN7jjl1xE3oL_X6b<5Q z5h*C+Gs?E7Tl||S#QT;C5_~%*HY_m;tj$LD_4BKHzZX%7@`Xez@r73;7nYsGU!{H* z%&V2_rRbC=umA~S2Ja{TwG&sxi$(1~-B8Bu6AO0YCnxY=C+#^+K+CHP=+4#Nb?ZF< z0ZRVZz4J!vGaKKJpH%vzG?>D*s$Fg0p}e^4#(+AQ2KotV6@xP;U{O9RZY8ZUtTE^J zXsaD_103R3gFobA4<9Y)>Pi~dt{MzNG4<3?@~mOqr5oBvK>ZL4Pa^QpHt>x)T6WiG z6G3_obdmAZMTz@@)Ygb@8AmE5H!sze-~_krGm1h;qLwh$1u1j%3E_o8$YX14$-WMo zzw)}Ave|0@h$<=*KBLxO34Y6#a4_UWTb2SU=IS7GwKyFnko}%FS}_JeW?^kjoLJD; z?a&JX)=2zrh@hqH)%fEQ+$)TjMRlhsJgK$HMeqth#&&R%us(f@t3>X<13;`_DFN@A zfLbK+Gjx+LeHWRl2mwuxALB^TMad9FgdW(|k{M-Aitg}T2}oOPgqMa8-;$P9##ckJ zl1q&Ez4{2x<|+t>97y5%Pi8s3ah)&+RAek(UZQkR=39qRQ8{V!XuW?RW-T-MCOU5t zAOzt8PucVcBG!iaVqLQ28 z*5ZqSmM%bt-@1qb)$+=<$&V5znzvVeC(tWlqfw3G1 z(8fEYAv*OaodS_w9H-YQ*z_dpwpDdN(zY6Qg|w?BBeEJE>qZbGDJh&@e>}<#fm)8h ze8{iGOayoCFnB;KzUJz7+dCVn4aDFt3T`QBbY zebh7SQVyFSwhQ6N?qX-eouC>tdp z0RvNQ&+shRW6Y>=d|{iMO4vTqYXwrX9e7TE&#LEu!4ptZgPV_+q*r79Q!-v z(kVs}Qe)bwz2v0mij|)xOsOx2Z)OG^b{y4gFHRY2Xy2cGD5)^#*b8#-#N=ZC;~|CF zy)EfzWsS6Hq8+iPC!rPW$;}jx1XLIdD=S~``3{paF2*=|Q3Wp%W*)fix;w;chFnaM zR3a&DnAY$xtSpZ(ukjrbNNQqU^{M%HS;8h?t(C_@;#fGQ+)kTLIf)Wkhm2tS!hqm2 zJ-eg2IUW<3{r8Qy!V{(}N{4nG?p(64ND$ElmUB++h+sc!-d3#37()%ZF&6>juwbx&>`2EW`Wut@dAqb0P;~7R zXV?W#vW(g(*XW1@MCe&pmnxtgNNm;hyD3;-yozoq{pp$O zg`1~Rh%fq1{8@==+jSdFvk|)-r}$hJN46XOnh36Nh9VV?k= z=|#;Sx!0-x+Rgvf&jFtRNd-=7v}xALK^;xCG+@!L@MtrKm$A(kD10N1zJW;~sWk6* zg7jUs7_T^uL=?Gwtf%LLmPoIjFDfW#M6d-Gu2Ec?7OQ!E8^chKoygjTnS8F(@>t?cS+LeOg6HW^fD$C>~oPCc{}Ke|hA<4Tpno-bCE zip!zK&Tjp{^e79=6Gy0xmdbkGWdsL37r~#zi>E)R@Nb-0FX>Nrk;oH9*z}WwMcxh< zR|f=>IG8{WJnYlrqWDxbi8lj?D5wsPx-7EqGCEi&D3Cc+jR>&a>#Q=oRQdw}V_P^? zxc^V}=j@a5ppZm9=im5U${nlT!iJu>B5xxqW}FK3Mf1K|kWL3TqBPqT+=4fJ!ZN@7 zbuvM8z57F1{5)_&4EOYoZ0JUq)?BsGGJHGo+5B!S(TpH|d(z*rxvSI965v2u3_G)A zi5V%174KM%+{@n$D(hVVZV)wg#)3pUIWnlJYQpk-4+Bc_GU;-MNaC>(k;hzi(b)pDT+w3gyJNYh=R05_c|e5a|ESDoD?@+B(0#iV;Ou481{wc!_oMlCJ(HqM^)f6bK%3I3yM?PjOfZ;e4K8v zpDt))@pg|GEd!>=PBeJrw=`QLUj$m*2e~&Cpi(wDTQ#B$$S{|bEGRH4r?o7Uf7?}z zK~r{>UMH(}8Y;cXWuV{u()kiJS1LOjgPC1S3IF4Bv9^J2_*kN;r?OB7%`3=|#PcIO zH1b}PlDO<3!c^@O`QfBZm0h{`|0|H|))1q0+AJ+ng6>Zq9x9PY-)sgL#li<3BtsH# z&)?FqQm0#3PVKO7(jqXnkAox5#=j^do;$({c1{&Ws9ccuD^J*k=5->2`!(#A4@~^d zDLm!)TCtm2akf6fySQlUX7A`~)*gF5hy&Rx6Oa$Co;Eaivyc1M`k>(OYFdq^CE?WB zQFw%cR}sav+0N7KWokbG)1eW-?TOAC`0m_bHjb9SPJDpAMJu&=2{eu(IbfLd(V&80 zZ%0z_yW=1xG?RomSDifyQWOTC3fiS<8r8Q|A~^I@cLwtlL9+pI=hooTP_s06a`2MJ#&SxL3b(Xx4ag zRlLb<;^)NU5AL9Mb9`AEAYV#yyp7MIVky(%a!jo*JRhOKYUX0DR&ZLGA}Kq4g@jA6 zWyc=qyY^G~$?K0-McA4XmnWX{Dx&ZpBV)HlZ1klVj|D~xM8{0>FO}Jh3M0EnlSEa5VfxxHCT0+7US0oU5`KP30Y83buEOwq1C)XqTEP~fE}3?q zRx;3EWBH6Ec3Z2h&8 z?KFZ7C*yb+L^xHM0fr8dbgD!99Yqrs99yi5K?FwjF}?QD`Lr_|B8Bp;rt%Zj4^Kke zDf`|Dg?X0aY<_aSGDJ$ODfJ5%Pg1R>m?w)k8HQtO^Ympkdkm|Y-ns_%AU*~)%^FJ; zk)jnUH3~h@tBa!NQi(ND3KD5_P5vN-kV|Muda~uJ;Grs#Onc6c=*?JAf2gG?ZuAD% zW3wl-!DK<)9~0WV?Ih17n2nyIh4Bt0|KgAa{K=j;*$Yf;2}||Lu2WgK!ek*0-UEAR z4*62Ul|CMJ5;e+eP9(lxHA_3E(5WA$I?R5`bbj!gCDRsYqnMsTEA_v!72FwM(Z8+> zEet^?osTbn?F`C5>~8slsk{BGuh3t@|8h$3*H7U=Z<3*XOc9vpYK}Cr-OR>qx*{yZ z3kxcC0fsd$GYunnNGs4bNdI`U_^e5L;>dl8@|$a{a(^pUlYD6bZJ`8Z#ap7F$ODfZ zYqHE@go!bFCH)<4p=-|cfmK&} zTGCe0Gy*w;Ttr#x&YVD3x3}*PlHo^yCr9-!bFZ6fM;`XUhBOA52W0wIY$yXYBIkU} z@l%7u#Zqq-Ds0wmH#y$Z30X1|p%@KzRr%DaGmhv{F(&n!K21m(EJKCX9}#WyPM~&`&>n?Bn~Ymcf@}}A-0-w&n8L5-dWTQ4 z{R=0I8A=x$^4dFxk4QN zU@BBF@mNgKr7baA-bA>%I;r6U&K)YyZWMnQH`XkbJ;;hhS&9;wFn>&Y(G#JAzj@Ie znISj8wmzTfQWEPk7moZjiJ!|bF%A6QDr9BK|;l7u(GMgx?et#Keb9&KqKI!{8 zZHn$u)?Zq~G5bcV#GC=JZIvHDLTv*D>~Ro;R}+3bZsm^Sx|Xk)ttTbhRdW0Kp**di z?+e8sEVooyibEje&JY~?r|j?VDRPRlT(KMI zk&%nyr_K~-LYU*t6S2$QP3`z{tg)YF(U3oQsc| z090!>`5dgeFvrge)O!xqo(roVF`1@qp4F1vw=2WCKMRl6)F)>Qk(=Lr)OdG?s;|gl z`P&&D*2$DbyU|RReq7m{{baI3i&@dHn!dQ-1*O5eTe1Ak*myq25A%sgTp%a+Sr}Z| z99vzCdNcb?sLJEaW&`#=CCEi)*}T0CTI$(PYaYVqz?3>SpHyNfi@#B$96>2IKpVM5 z0m@mp+RY(+1nyK1Zoy_hTJA(mF|({E5U4Ws3yrC1&8jrfnIQDs5aKX2=E>{lBcpDg z-QUOlql*xy+W)IqBF&Z8cvPJPaKIM}F(hkow+Z>6J);A|vIR#AwGYhnq3 zd>*YKsLyrRe|TI=l;TwYHZ8%&cs}m#`O;H2y!J6ip(|YVm{SN~n-7J1(?wb-KHr*{ z5z+Rw;fg+G;)Mb7UXbv`j&+EoXo|8z&ma701h&q0_4JfPRs)T zaVa7D*T?&ZTm8ETmjAkvUqhKXn7gB66o-S{rkevi4}!nYo+(e9=qo;+-?uAI*AJg( z|8p8nLH$Sgc8L7%GdOts+bbIU_l6O@fjOa1q!_=OS1&Ana{d?8M(8 z?3#$MQA}SPEPZ*wzjJ;1|DWpSVS>{i-|+ip#Nv+V1kNBIW$fqZr2qjsPsjGvFr&Qc za4%IR&5T5*f84b8|My(+lv?zdi5!teIo07#V#osW4ou76T^>v&J_~m$L#*5rSKJ(m z5~A4zgo4^6N#E86;juQLXz9x8N3~-hpPbf%3#6`aX27$cW#brwC81O9`l<~0ckvtN z|5)+%e}`uXUXC+LDk)aA*O2*oIxcXcceaHjt5hGRb%y-FTZ9%sExj50<*dTOj&Prq zl&Y)<9;<1NU+xDKi8BWn3z@#RGM>@OZ% zj^(nR+Uj*vdMqO+W_1wzv=SlqZ=)y3dO=PTdYwKV2h39s986*sWVG#HS?EL@e*7|l zZI;R{`bEmkrITxzX??rPKs>5<_PLIm3u1nXul<6QUCam){L|rEP@a5G)-_mlxLVU1 zDI1UyahylUsC`b+B{QCkaG-p7h^GfPcRf~5x$-hL>7h}yH&HhTR+b4nJhkq>PJ7md zj7p98hd+tNt(b&(&Az8}5cXxMhw_BQtM9-0lS-va>XN}@7q@d_w7=xdw$5|}v|DjA1ENLeuhA|h zC92IL6+S(3uW7v5mw|!4Zte5bS>O6{V|`Ir5nEnaUXEA<{XFsgZc1DkN)9W$YH$rF zxUgEf{HB(t54igvYx^>gf$zW?;5@=E$8qs( zHq)7o$aL-OC`EqpLSD>W1sTStM*rne?0@_`s8z@xWXT|1R@x?0dkwL*y{wSOK0E)h z9I0{Bv~~O7Iq3Efkvkyi2Kmjg#dy7ooQ0_?G%^R}q_p1wiX`A7vnUvmjb%qC7FL5if;m zRNLeM?~jYfX4t|NJ02C|jz_{81HWLJB*mi@&Kh3AEui}l4;3R8bn|gIk-rT_VAbM) z=j$o$_=G`%F2@xenlDa?*Pq?m+OzrZu?y-M!dl7uVHjrF!b;XzAxe1zuf9gvR>x#`bEW^0{ z`5ku?HwmyN;DOe(E70U2cZtW3d2$5L^IkdpnMF!Pg+jHcw!rIXmAg+F*wy`^KKk?Qoa4yh=ZEeHPe>as&!%^P+(?2(ND9CZF<yJ0>G!7k=1bxMLJI zuq<4X$2D|;vNp}tUfN|vLL()Iec2H3il!)Xq}*O^(hnHgUn6bY-wd|g!rjBc-%@NO zJM}YV8|e6;fuxe_PsnXw==oNG(K6}P2e`(>`vd#6l`|aT>QiuYH09LkDz`7AeHeg9 z=R&vUnGiDMR9M%7D0P1v!I0~tGMfKiQ2;gl(!HFf(AN7CDr-b@1_G zm>OqKL_F|2ATEG*FGDJ zj+#*r#~*ITJ+(1a=+$@ZpZykN4+72QUGnEg_8lxE{NfmTtl~~6gxc5p@L#KzPXaD5 z6wEm(O4l3(88tDq?s?1+%^BO^W!XdP+qcK}$JPzm44WsXwEQ5H?Cb8uf?Ni#7;(RQ zkRK3xS++v*_NgMN<0@wJ{gWmHEblnO4xytCk9dk(m!c#dkbF+|Tq(^;rX%)2y@BSZ zC$m)Y_!1N}yXtt=7Aaptx0S3LW0326ojM>0TdJGiGx^F~x_Qn0&?z>%e0Rzmn+q(Q z#Y#;;daNRN`Q8)lmB)*Fo50nYs!DNPTxH_;M4I-N;uNnMes`)&up({hKL#^b8|+zu zvj87o>?rZC_LcF%3#hwRcyzzy23%BK0bZ^f;xq$OjQYN;*tHo`hQmA`ik)>^w1E9YKOviU|DpG}?Ke`h&k{Xr;brdXfpn zN>4Che0J^E*(4xzkXp7`yYkLB&e-v~7v#gIqPiqUBgz84I|KxW{z3)RKBb{oQT?hD zJ7xF*gu;)F-?C2p9kOhG2Obw3tkDk{CDtgqY9@2-xG+(v0hyVz#}VX9@}xgj?;lRZ z_n9;xXHcT^Z~n!YEHNN>OX6{&YQw+WC3_-Du@fJ-fn} z8KhxBbI@A3*q3Nmv>~N36SG)^Wkf+~?g+8hVcELlC#=7NTt--X4(Wlt#7OKlz4Hsi z-~}*(Y^7*`6J;d*d0XnXPK z`||U=ZHMX%qqR$t`Z;*P@&5bJ2aXl+)RsvVy#GVXJMOdVXD8Y>mKv`Y%=g{*M+aV8 zvl#iQPulM*^yZbr9j8%sjr_N%w7n}_P}qXkzH)?8n`XTsvdL|Pw{avr49_3bZ@=#- zx+3H?{VaVNp}xtwnUBJgfbpVactkpd+L`8P32w{73jN*Ivo?!mn9g3;=mz>FIZnj< zRZ4l!P4KrHrhDliM9+w(h{LhLcGxm^!+8IKB9GldzSlC9EPBFteB;pDA0=CiyXIR{ zoR88)7(QxGaj4Ikv@3?0rV6pdB!+=8f_T&}ZrfTw3Ed-bHa1bwJwl!SIUrFRr!=Jj zKgl_5OvHv-AyLKOR6R?G(^jFsGQGXQcZV=UiL_fmwaNC%Fc1c!AXQDq?p|?`WhB0^ zb2Se=X2b63q$&@ChQHnpJ?_CrB3%alD5vO~8(rc#$X9F=?IRgTZe?3a z+?)XkWBh=Qu}x9khLX$Q2#g>Z5n@BAy|eg6xuj#M3RL&EOUq+tLG3t{4@M9fd>v-B1r2I;iYOGWCx z4Ya61h4_g{7~usEzEzCW8K*xbZ86l)Crp4_(b5{7ww)@&3)6-va7J2#-H09bICZRs zd#WFGk!QDtTC?@~M*d>)YlbQ(i5}jhe0jMQc*i9p;RrH1HK2wi?%8~^)DR#{((Jn0 z3GX4K5AKTNtB~^8C<%-z`yMp}c|a+$B$_Gz)J5XfdH?W{0^c!4P}*3ZWsu*9Vp!x8 zU&+P;Z$|(4B@T@QothR{Mabk+Jj;&Frdki_H5YKpZ*M-orS4c=4h!!IKCA2`W=)fqc1C_*F zGuj3D6QxWXVebjIMIVE$YKI*N&RBNq zc%y;Yp?JLI1kcef9{0AR$95knVP&84Urc6iYRuJ378S}%GC;UHbYQ?gMKiu&I}W<* zp2@G{FmtftOK|xDXU0h@d3zxlQ)T5h)>cGQZ1|M88ej=GF4*GZw_I(r*L2KxIUpzg z`c+7nJoE3U!e1S{A+auaY$ytY!C&CsRC&Z~6)B7Du_{ZX^^g6L`d{g;DtuCfHb++^ zFstIT3XPRNjELdCxVk0G@K^qpf&1f|RJxxjtluaE_k5`D=vj=wCKUL#E3V9EPGxW>go{dqkA6J2ssI zjth9(XV`Q9n&^vXT6Kx^_Sc7us=feOKF4VdnKx|nE&TDTfX0Dk>=waIGy#UH!tDYU zv?pn0Wy3JP18RCkI*1py=(q;m^{j|Zumve7Fajoi3ghKx*xn2q3x75R^${#s)_(%6 zOZ4ZXXsBh27z-w4?^FI&2zKwcZ0#QX1LVV#Bg#sbG1c?Wz&zhVcoQ_ZNZ*yHwqC}Z zm!r*Iy5i^wEea2UL>3EPpPM%RF1S!#VhL?c+|RBl)tbj6E$MgU`n0^)H{=V z0G~)a524BQeR~uvdj-SqqiAeWCxWbPV=JqKlv)!<_-o_e?*z^QvR)MTjUtFWn2Vmw zOy&^YGPHhzrt#~fskzlhC02nio6nytJomb!yB^Nb-vR|vL$ou`hBV@fFJ-E=M2O96 z|55G=`04CMyRp5pYgOcD*pCjswlNj#f|b=Bq5lVtsiHVKW2Z#y6eoH?UEabZPG3tX z;juvYvQ-9u)#{d0U7J&QP&eb!6B5nBoXoyq{#LLEFqtaGOfX6aO~M;VH!*hF28T8I z#e@^>D0lF3_UOTn+L@S!FDbf`ZKaK{I>R=q5~ z@W&4-pU*Hbq&a)F;msuLJ*%*a4C81$w+jzkVjjn!a`JCPJ*Y;9bdtHu*a>F^1A@p7 zBZ^&|G5fd>E#Qw;<^<$det306JB4cui(kqJEM<|zCDU3?3rVifI2-9+Qh1iAi<4(b z5@Wy3TOMDoE?@ecYlzDADcwI2zFn#D{6U)ldez}@hf6zki_+Yxxu@qsJc_p$ryn2G zc=LtO$;ilBbxwM32IVL6yow%K9$J4FwR$A}`Hc#}Gn*s5keJ=g`ep~Axk8d#!Oot^ z8FZAdUA5Uv(aoXI5Vr0I{C4YK^VkI5p~{^?OXA2v^S=hcd=ksYRGjTE2d^hR=_ej!q%zE%>o0G6Iei$Tvx6kCV|}?pjwb_Pnuc*nqJrm;?oi z(McRYZH%MN#m}@1ODMm1Wop`iKHURqprLyMYhKIsfDd@2D=S0VwhKItK+M%0=ntH8 zqB}8pc|4Gz|73A8YP*Yl`rfOAskhRiGj8Ma5nXHEg@`C?`?jqtV=k|pd6(k3gCWN> zT6-qayaS3KUg6R?6yiew_upfPA$weQcsIiQT0<;t-~EMSpL%h}od!UM%0NfONa%EK zi_5n4br$ftRfdGlFFM;O6%a1V)&idmNccib$!Q$I?**;KHH6b8EH-#moAw*<5I4sU zVfhRWG#HyMN#Qq);X!(t=G5&(l!u0&!y(%$>rINa&(^(rl<_FqvhZ|=qCF!aGCsw+ zEQ1|qd*3yCPg}Vd>C(8yY#UZIY*0drYmL3P_Vm)08K<+H;K+y`ioIO1l1+tVu6Y8@ z$172xzcNVOG<-YEdMNZW{3Q!9AZ7#~k?=)DXKL&yg-^c75HH+I*}TIb`VdT+l9(K( zHhS@$X#!Z+k>RUYP2wiJVUN$fw=&)hE=M-U+4bP#F~+OpMqKVFWDdwxZ5DZ;)q_Pe zk;it^=t=eq9)r-)mIr};*%w!RHcK9-C~)&4N7FYlzW$t^yDtMY#GG-1)Q{OigrbiP z67GX5g`589-HnPMBw0&63pSMbF^a>Z%whB$Pd)L6Z|+1@?Q0 zSASlM4LOAuBfbmfZU?%F8QYIIU05bC-wv7o9ihU+XX8SL@M(dmda=$BHjo^p+^Qr2;VI(If6I3Y< zjf8~LpPq@g0yuVqyRAOZ(7l@-X?LD#vNWmNSpU+KUq#MLs z!LqEfFq-Z1I(T9%#td<7BU!F&dCn5>8E_{asY!9M_hgu5puF9qIaAjQzD z%s2$7VeUXN_{*+G`{MS`Q4k+a`fQrJLHG;JcKSw-N&k)Q!_miQ6MVf76kZrVfT%66 zX#EFFP-29kU)*$W~`J$-n116u|z8ZiH3#sp{IS)!SgG#JFLo z8kpx;ifxis<_IXue9#;G`x&^wMl{J)?U;g5!%WFKi9Ixany_Bw-Ns``2yd|a1*KL= z`&AB@hqL~O=y;3VTigM}5s@1>nzQ%ZXuGLeyq_?{y^)aL{aH@_sFe_s!66*ksu#q? zfUh)p+%HrElm<9J^QF-;Zp+&?w7U^ep71jQSn-5jCmaC)^5$J)sY-|b*@z|a7ZV8w ztQ+QS0yju>P)wrFJHGII30NGxIP;%|g>te@ffDM12%gQdQd5y8(xX zhj)qG{$V{Hjlw@Bqa}!VEP4J?z!|E=hW3v=jMR7xTlm;K79;>t{(n?~MW4YWU2B15 z4i-8e9jv{+zXJQJnTN#O; zXN_7+Qx_2ymEx>H{BX>lmWg+N?12$!2o^EnO;m&JI)s;aFAa|lhI_i=*_n5SFve1!gvV2Q4=By4EkdiOI07mm{w_lDGS zH&QwY9D*E6U&g=5432`GaD2Z-$ZLd99(%~^jv`heIf;^-mTYhK)?MH+NM){=AbN_Q zOC}O8dX6!f82}Ui;H&Vts^Ger39UUKF=H_@ZxrV67|vAgB*rQSB2g@~MN)u;mB3wi zcjAOqBGoRa$C+MqFXzDEhUj?>VZgKo6}8kj$E;A;u`JkXc&qaX&Q%E(sA|J=^5b{A ztuGY>K$OaXL`VdL#eIL`xx5qmvSi-aoZ9!)6aKAbauw9!r6SNFA`%S$Rrj%T3H?G% z({n{+Xv1TPD-LB}z0nd5D}d-ArE>y5+H0Ucfw`%7>JOY%+fg06iztbe$Y6GJj8{X0 z24s4KVCtDi@3`V*=D2pehLY|N3fhe1v0o7a5+CEPpRpGUncys5>>t5CodC-mwqIgv z$=;VVLI}K`2p-lNK#~xk7tF_}G#Q)xmt%;(QpVY62!)k&*0TA1cH)>frp$|7w52&t z5Ov;jHTK~I@({%{J@dCHuLv~QBCXQs2+UQaqEi#nw2<@W=V^iCsGz^B2pBMSN{*+8 zI=5^R%0S!R){k}zH*1XWH1RD9%s)Yh207~!;kXPAh1@7*uX@;opK0ewVnDC znosJRf&03286^T>-giewPBxWF|_h8u#?LKNWAoRi>#N zn>9NPjBBI4i0A>j0mu<(?FD{7OxXH6$2hMruBI%;qkyR0CqvKT`O=@-qD8Bi4??yY z`3{hXiLcj>o`h$JL-Obt2M$rgbf_f?aS*nc`))kBR*_=-0b^3wZnatP*#IPXw1NT5 zt&UnJ2%`nwd~*ou>1e}5d;kgS4)mD`2!8&1SroI}aAoJ1cvFEFBX~HY# zOw5kLYG`KM0S-kN;Af=*TieREVvza`$Kj{8LUEgl9M2#4!u-!p6fN*JFNkZxHX%I^ zln8%xDD?FDG}2!Y{1s4mu?9!YV8=yXUE4FtQcR1^Srk7B6zf6eV;C_-JLdbIvmgYE z9Vy^W8q=}%qs_4|LAf7-sSD4YO^cD%_(?8f&|{Y=J%MII$yI{Kz^CV2b)cb-Cc^Dm ztu5wF7GUoF6P|ZC{duP8ce%mM6HhXN{E5IVC7c^hAFx%u&bZn?O9FWzKOFa|ik;*u zWygN>K}*tvj)X!EI%03`bZv;yED?w>#S*ZhvAdVkSB8{&#bmy|gT3 zSnS_6WyiC3<99mN5pzb4Rni3*JO!`t07_D$=nVZeGa0HEK@5f@y|_Hsp~5HRAs{Xp z0{Q$uBS8lM-U71N<{#!I4~Kob7Brz1fwDe{&}yc7>hZ}7;?0udyMKC*wkY=Q?8|Lo z2m?Nid>p*|ofd*y&4XSvZ$3*~yVJ~ytrSL^chsz(k?2`5s5#vdl5syW1g6i{oOnpM z9K_hQ4^9~8X8u0kqp1Zy^@&dAWRNqH@?Xy9C1phPstwXM~#O&7wH3dx|?13_k|sM7RZ>-)d=8M=cL zJxj66a)~d0T4Bi>Oc@^#hi{~wQEfm(A)H;3rc*5;4QVuerMK`~T-igavpZ)kJR-%Z z=-(l9_uY}rVL^VxgBcQ5y%2lkvPXuJ#mcU_NkaOdh)VoVv`t!MkZ-@FA7N%aehxiL z<27DA5+9&AeI?gB4nO_%t|((@JPWsCRkYOZ)Xxu9N~&yTDABZ$5_7Owl)y}QuYkH) z-GW-bm^9%|{9|Td<(qakR?#x8Cn2%4LN6OpH1{WfQVC2g9r}=na441L-A@v8@O-zy zcrwfFZdDs#N9J)Y>jz|3g$}dI*gMGUE0y>Rm-L~Y;o$T_yh_5IyB#D655?l52b{yp z`$T6NF1QyS;4FKyMm^&4`I1{O?q~YACWikNhPF zJCtxT?4X}s6KOz=zdL|Sw3PFeEgA?#(0?NA+;3k{xVeHYWjVG$^a19;~`ahEwXzOe4o2`R`pY1phLs~@>QAM zjb>kr_iq~=QPyVbq_sdCSxz$-jk3g6(0wGN67QG*P*)`^uI3N~yd;wKe*0H9eop5U zc~Ht#-CPYqmnS+lkYNxW3G>J$(Jr~~B?r@!3SK{{bp*`3M5MQEtB!)@K;6^di#hW6 zwd$~0V_Z$9EOEyK>ZGUAQ*|9ZOgBSMTJQ?4_ao8Orb0)Ma{kTX)(G3cpy~Gp$nIS{$_a+SbRiiw?cbe6Sur4LcdVMD_94#*wek+W3uFty{Qjwd4%sbi4RM8;kZP#_zHl4 zs&Kx-7GWk`v3wG-z>THY%MtjomyZF;P}b{71x-gQ`)?3@u#u>$6_JqCx1WxlrgsKg zgs+Zk2siJpl@CTko@y%RXOZ<|j`y-HTfJ74D$agrx50ouG>+=&g3@fqgMv@a+v-SH zecEx_8B;vuL&L67_}6Ger&U?W8WT>Ox})xm)QHN_PhSuGa^6^w%4BuP_X?hiJv@AD zcVe&t`%Z5N0cXz!IfuP}>#3t`0%K8&;x8nQMtK`Iw3rDlIO*RgQ(((Rb)a$Fa^ktE z)Q0G&II)VGXDmS$uoXupfB*}`sLAf7E=14`B5==Co@bh{n~}sUU3o{G}NEZ&U6Tw<01z+WQJscZ1(XP~U#-I1G+LhlGui%fvs#KST(H!l3q@GMZI=P2Ez$^p5z;@|ik9h@?j^SH3tk zRA^o7j74JmAflmwF7zlm!5(b_yyWKG-7gf(r_@2@$fDLYu2Y=>p}ZMZ}FwcuKx@lIKBA?1}RIdl{J7fmFHLw%E%n)3+xyHVvIJX~IM7Uq^=oNUPRbvoJw&x%BF@4Q z2(7%m$;qF8tH*A|=qs`#b53a_PQlORxQ>k#^$c=r8GqGsSpABkj?i$n;!_pe-zK;e zTQwE#7)q95i%(8&gk@XGG{%~ly=6gtc;cw_-8BZdu;;8*19klfvx!!H#y&-7mdrpB zPhN7PPc8ODd#3J591;x9`LXe#t`qaQ(Gqbn^yM8#d6S&wm>9BH=%iLMng z4}~5-COS!v^qYJ~i4`b2M$G?ap}3VX8&hl{j+0(>{*LO6@sAQ1bHUSxK)xCjjnt3*$F8?>{|JRMG+*5iRyaVRDPMe(+f|{_~Yy9!>7>?=7^0U!tc7aC7lcD$LdB%zCL33 z)k2El5}(UXeeSjVcNwm8i{nI4uJ7`ewA5yZG>E=`Zu_w~CJONSp7hZ)= zQfi2ZF_juc04=%8fd$Mhg!#uaY8vDEyLGhe83U956T6uz9HUufc{}iU6d8wRSeo&+im5)oJ#!mQ&v?*Hiobm`zq*v+x2&YnS0rl%Y0O{$!)UT)j zAKK3G4@Y?-RwQql{NyZK@^QNi4L(+VH8X7!T_@sgKG}q@IGH_kyAVMnKz+1NRI_rc zdZguU14ZY;4%dYIpR0M=1-5o5yZ?z{^-V&kB4b#AyBjAJ2`~iSVxeLyP`hGlYna4d z+wyK@MC&OKMcV`P&*xD6r(I8Vo#8(qtBBsUR0Dym(5*lw-6^s-RYLxMEV1F@_sjsd zA?_XcfBwctD8jI>UnGz{GgWUHqP;&e?d@CF3>#V8uCI(R+n|tjhCO``v-QS^EiWKH z2mJRw%-G(`WH#)=eId)Iv1&n0oRRPtxlcbIk+k_Yqvg&kgLk$^K);-^@jfGuoDXg; z&sh7p3K4NbIclI?$LDmr<4~74!ip0bRld$54}ZRX5XO%^?Zszuz9ds`r(h!fel_Yo zK;-)4$B)?|w9G(|ItJhBJSGO+h;!q6l$PtVnqnJjugrmWgl5Ls5iRiRh)g=E&Itfu z7fz;tS`RTGIMYppQQCpFf!+qq`$U4*OyJHAQyC8D%CPmx(pczbNp_Go%+ zbvjM(-cd4mZb0uMV+zY^^5UOoyRo4!;Qb9v8eN(f&x;Dpq=%NU5AKiEnzA*Vh0LS% z3gs(D1z}B5_`yW-Th88MMrSrnY2Jg{5bJ8CNpOuugZf(=T459}f*)EgPGmE>Rup%z zHMjlk@lQG5aw1dTs)U9=qWJJZ<;Z&Ci zsF}OVt=*AX+X?P~=oNV4A+A7u>&PrlZ}%74d;tuL$LUnPGa zxB`Jha_?nA#c8_#_&lMK-c*@dsgdW-=ezsE!r#RnZCJ!CS{OJj%HHA;+>u&6m4h&? zVE>zzzM3ZZ}0YB{z*&tD`Rj2PqKV9&VNb#3c$c zVzkH}l2SQLBwEpK%)9plU(NSo>4{^CvA3)P{-q5T_I#vl8+w|+uJbq}S5tnO6C4DJd-aV$4*`K-o?H)6*$Q&qRai=29E~fQ` z=VkQvC2DM5?+9<~NJBHz%Bi5%k1sbNbES!w zeYt@MGJMW(aBGr;`3b@7z3-=N*m0SBQCu1y%ihG-|U{rqypwg-%OO2HH@>2e0S>IFU-g<`=2`3RB^dQhiRX_MLn z+kDi3Gz_mb9?b8S*c@kuA;tAP25FOPBZDVpjr@#a>r#ketK~yr34+yA$IYWtWLH$7 ztS%iC5rg|($Pr^$WCuA&xMS1aE}oQQg?d^OnO-=)dB-MN=mQTk1C*b;Dkn0r6~o(i z1)4(niZgZpOj#tls9~O?9+AAak3`=Unx0Mw(@Uc!+z)S4gOXhQJbQnL&d1>Y^pKcV zLbB(Cq+cKhYV}ZK**LvC?0Q8btZ!}FeUuG=d)Wwlg0Jd4TQNkCds4!j+*%NQrlx4Z zCKd1RL3hSI;j0a2K%UV)hpXD>6>pXZI0KwPyCA$(jL1Y(xy15!2@s!x3SZxruhBzb zmN8O_D)yo{y`FnTZs`^Sjd7X3&n)1Y#*p+#z7sMS)!$A10kg{CaKhEjeRHBjjvCCP zYE0<`yut`KIaPGeRW%J@api5KozK+E#%m1s?KwI*oFab=$o|R>gy=p}<3Uc@LW>Jw zK_C#+%r4kLfOL|>=uk@D^34-ScoFQ>@rm9$FHDg;cxB%Y`U{l!6`w3xiMPGZNb~!r zf1}=uAhdm=+Lc>fsV;ov&^`xSs=*VLW3QE}N=gQUxe@YWM2tw0UeTAmTUld1bv-;H zFK>L&N2q8|HxKft1Iiet=a$krE0?b*8V;0^=2POf8c(D!p%Q-IO%TS&5Fq|lHE(3Y zOz8g&o)-!lzC4KzTK_*hfQyTy6bLc3P#V^qoZ zk%s!!|K9Vxq1{`%=)(+nK+STC8fac_O+zw(-rr+`J{g-0fC6ca=rmR87I?+bE^ch7 zIcpLJp9rA$nL#rvVGCMoC#-V6vVSK@h?fGNkgSp-B&L!@ko}Gz^w3CbEursj?uR$sn~@LcloVSb+h^NkajaE&r3G)+j!FaM zzpJ{k?@bic)F4%&56F5O#t8(&$wS{83oBa8WN1tkPNbs)|k zSIv%q{vX?F9`O7}L1__3s=CIJSG_jF?B@}>Oyczqod$<0Qy(hj_pdJY9<4L3mz}hH zcEsJ%_O~%EQ?39?!}6k!$~apBsxenzyrUI5s-J(%$hDw>!m*uLJIS47SgmfP!~9$0 zuO$9!rJJU^VksQj*1Ewfit{&;3q~H)_`WQqhyn!dG1LevT^f*EA}xO*cAR5#CQviW zm-wYXe5~X;m=2|WP0LGfNou-aQMSns`?lQ;EcjFJ^dr@!=a-(~U`IOZxy$RpBU8YE zB}K~|oKbfRH-;tcr=UXryj3;dNI= zCWSl!j+r934l5aH4d1#^Hgpw;D2k~xr@&=2RYm=P4<2qL=qpawou<*8MUE-xvP`a3|{pfVQGT{3? zE;7zkNU~_IrmtyJBROm_bAvaPKvJ^HGLt zZw`oT%{g&d3Oh`p&+AKCOexFr z&u0GU6aJV=MqWi=hH(1zK9*g6V(esF&2%=VKWredFZ<9+;L`WP_%x&c{?bDjsn?|m zZ|pqz^BwiS#rUQb5FpeN4i~3{j)KN)Bb+qqH6}mTd>o%;Gt^0$fG&4=Lasy}Q_o%$ zt3sB3wdjmAG9m+S=wS*fSR>XO{dN^R`^c+JthTEK6UVj+=HQ{^Fc$v!RA~Kv)xGyN zz!!$_Y(Kx#hF~>Z+R*K?_wc~7ot0J6e#ed<-nh5BjLcP7>Y}Dm+E2Q1P?QJjta>6S zHlN&OviF#9(q(=St5Ys~Gd9e&d_3edS_Mqcg!y5Owq(3D3byN>wtylv&rH%P%$C;3 zZirZewuo;mlusL$&|d)$6FXG7^i5zD!eGlR!1W}QDZkSJ_&IwzqYlgG#lOH+tBJYYc@d!Ex*X~Rg zTa5bNt3;$B=InIRBI#@_BtaE=yQ1;G!<};An%bQO|FLOlc9|d#XfhU~$>=-fsk&(Q zN_k>mYWCnmy^a-kKSH7lY{pfJ@(@CRJ-1Eey_KLb?!PXQZEk*`&D=5Y(8n>1SKbnP z=HJ1g#yJUy$|d%p`A|+oi~5uu@B9;DL-~wSIS_4mVHvtyJ4fE%j>~_05^qnLw&WeP zAQQ3?1Yy|zL%X=eW9TzAn!~cN2Oix(Do!ca>MbI9@q+b3LrClu;fR<$fE#M9f z%B5Eho#j{&T@P>>&#or|R_B-hf+@{Bc{V+!iS$nEixgRE->bqXX!u%M4)yA>?fu;e z+p5{dXJy_Ys%VDA)sUgH+1Yd#L#X<`kjHY27H~H@3EsQmnRQbP>ROI3U+=t#i|RvF zPoK6B-`pe!nwMfq8#>-}c1(cys=R-}M}Z$SsNZxl9d9LU4~Uo5acwpl@2#^%_h+l# z^f;pR8n7-Xvp{02u7Vyo2gKK`RIBlERtHcaypv|ey}U=}`!jjoP@IB;>$pTmL2B5d zu*KvRui!*Lmt&(#vnFNY#0Zo(Ouzg9S>;-^(!+~BFXZ+z?FiNx7!+l`(N(NIqV3xBJ%ZZH~)&F{Y*UF9vDxV?bcga98Lr=?(tG!uSx==qF#fS zHVB}#;3^E8W}(^7 z_y@#Oo-_@PyGX_M#kT!Tnhoa&uIKdz+0Ijd4e4$b>!Lt- zfsIte*JyhpGSP^|9m&NN{l1Yw1Wy*}_s@x`e8G$+GDTX6cB{Iwlzi8FZ{w7`^UUO8 zemz(o9Nn9N<+4?K$O=CF#s0Qd`m=hSTV2-21LvCmnZvYlJFINVb7ghQXi*4Qo0~uh z-Si;rDKq05&iTmwIR@QnOLo`dA6WX}YeaWH9^Ird+1e9vod>N+ ztww`GpYK6)iURP2m=lZL*YmKFN94d3_5}MX4{uu|wApilf?^@J+UA=u-P_2Lg`zr7^o=6W(}-8+s()-*vy{&2$fBLwk^I+}KJq z+8g6CDd_p1^C;K^(rY&QVQ*77dV5#N2y&=PDCoWE52U(lRgw&UUedT;N#Wh-84re~ z3CJy>{Z9f8%X+f?)o^6swHjSW}{mQH`hz(@Cc(Rc{aWXp{R5gI}VJop5ZQF1nmZGE58q1fUhaH zGc^3eT$I`OCM4;hcr~t;kUcl&6F$L6uJMQ!Zq_jj>en8&erd1G^jxB?@iAt7$Rk?c zhufbe1MT6v7vVRhS|8kTPL-XE`RUeJn|aQr#LRl>cQ9F=Fs|S zI4sp?+!#Vg1oE8R^n@9|)cJ-VKCBI)(C!I5y=6z<5oii84A&oXZB~cNcSBATkAu43 zzz#z~vW_M&tBJt^_8 zZ#Yfp_KdveLQYT#!14a@$>IqyzQGqAUt%X(h5kXWrU&Vo52%=%44%yh-u0Uk`_xI) zs0>j)pByO0JhTOHUMdWNcpm77-^E5<&&vD`m5yt)>3s@9mPg1CF3^0z|IGc{O(5De z@muYnGKYqFZ4*`m1DmQyJ6y{ripw(wInt^Jx+K3&gquhVM-%IEP1DW4?+(62nwcYx zi!qsqx3l1?qzF<>3;)6IQ5_=tERum(bUGW|XyF>&ue~;k9*yg52F6U`byg>(n4aHi>cD5EXw_MBvBy68o9md<_Fg zfJIsZRO;=WG!WoCOt12#z0gLcD>@mw5gtemeBf$7PYbSZ519xt;4e9rA1N=()jyaB zja5K;AmE#mdkWs3!>7ujGrhkWD_k*v>n!xMqQpipgEL4t*z-_w)-laYxAk6 zJpqTVSrwEXQud&1e@>DgzStddV?yDHe=0W*PvJ%R2(#n@5?bb}8^_YjO1sE(dZWg1 zyfBi}s|xe1{9Jwe93%IqRFdXP^woN5l*UpnlklA+A2O!_(H@s0*ng0itR5`p(T8S$ zIFFswnrB0v!0t$^HSRa#cyQQS=xLNb6XmVNsQhP8C7>#?P0L@`2qJl-MM&0|FtGE9 zr#&$s&KI3D8yWCWkp27Aa~6?Pm#f;F!qqX+%#0#o@CK(jgSY^!8nnK3YQBDAiT&y3 zIL|ybY973i-BI;rnZNnG3bi^_`X)|{377h{9TkK#+VgI3d4?s2vyn3-*oJO-P@8J& zL+{^|LXz49F_8^q9dg8-M2=@UV4&6*<`!u2bg}5vEyT*?cOT-OQo5(=Dgk=F z$$JtsrO9%FK}79oi9Jp%Qbz1C2LGLmoC9a`1R4jK{RC=rCC(+EmRWnRL%Uv?C^0{2 zGlc4Lg7_NJ=QDO~(5-onCGwz%XhloYu=lQS-~ByO*S%o?#9dOQ7*yrN z`J>?`!l0}pwy-swvp>o^Cztw8EjG=z5q8;}LcoZGDPqP2wWy2f5g~19gmY~sWUE&k z&q;7(im!$JW7#G;LGM@vRpL2Fn+tMglK zI}R8Oir(zy_;b(EbQ!EqmZ1$dzpB~ylFcr?`iu^8E+k(GTtdazkEN(Ci^&tst?+DQ zLAM4BzcUFFByQAnRc+?Q#~sN8@uG|~m?@+`u|(BHdh24euAE7nmoOj@@FFCHG&1nJ zfbfLPk*7m2dbT~#AE{BTO-lAJ&p16V2RgI{+7AVvu{iZ z;fr^*_KEVFgUwKn*{@ANYB#F9=dJ{d0(A`zH6lJJd??Fu%bJAr_9^)`CyDugtqnP2 zWqoN4$6is)*X=1o#+0|tGBMlcde^b9)3DCLSQMVeAHlP&!*1jggvcZ7S!nO%&@;?U%8vRtrb!iU0`Pimo+FmR;ob zr9|^pf$xe=e3x5BWn5%gBsRbGX9QvWQ(Uh#q~G^$DR&>T$b;b6r9Yd8n1dt$|I}l>`GXkMlRLQfVC^Q!7KL7B=UNOyyf6J^nYIp z8Xye#inPm1ZxDX8a>fqBnNS1i>deycwae|{)AfoHfMmTJ7Il8R!U9j~Z19e36}%vG z&}Z%OP4t?;#oYxjgD`uM7@t-l6lqo4>PId`QPCiw4>NR5Z{?l5`lf~6_LVc!N-=+vXdV}l?9z6`V8y=aeO~MY z=qX~lKkYGtF0niZnLD<<`=|@N(b6VLV>}`5vkG4p${biEb~y#j!bh0StN~eQxK}YP zlJ6n{GO-cspZ39Dg(ft6<9ywRJ6x;P+0#YI0`u`RA6{?-O*Z;pRFp2u0@Zd)%<3V0 zQ;@g*MudOZszjs7vNJ5f&bW#90HDQW<-n*+H)-n>WzltaLO#%5oghy0QNKnctKf{f ze-6bizD&;@wL_0{!zN@l#u%x~lp_}%kBG4o-S<^@%qgQsW=ZHDiAXwoa&R8Jat2ZF z-H8$FC?3$srf_;OC8UVpkQu%P5Q9ioF6^Abk4WM_zYY1t--sn4uR3YgQJR=_Dh?Zb z>yCBE;Wxzz?wOO5%pf29sw43&gW{=_UN`ss;ArQ)sMr{7?WAYlyiGnM z=hG1iMuv=;Jk1*5yd*q^`aE&wG=Sy4?HmlF4Zd(-Ul014)Is^|t!KHRLz_t%%m5wg z?|Vl-(Ejp;zd1*_KklRZ`SKPO=%g}vL%8@G`ADWTB%29m1c91ncVu(~|2r*dhqHk) ze*(p&wA98Q`s4^9HB4Vr)Y-VQ8yj3UkG`R$=tay}eg6kQDqDSut-NH|{TuNN_9g*> zsJZ?*R6)FDkoUxo2+ipAQ8#etchV7T+puBDM%x)u*EO-SUakb?>#6n-U2$}NM)(w5ZLe!#;Lw+Q9G3YVTOL7Y@roUaLEGO);eA@a*#PQCE(a?jX-?7*GXtVg zPxBNGsNAp|P>?VKQZcK5ZT})CdIR6JVj}o&^I;T1tGnYEttXQK!>8PxyNy^)1=~;{ za`dXnm55#1dPQ@&-Std#`z?cm_KbCpO+h;e-zqe*vTy3QaNN`seJU0$@c%{}`)MVf zPNY&hY0oJl9Dj7ezi9B7pA9H+WpQIrmN}JHS*B@Cckm-y0L9G4`iBfszH&?2g)Hf<{(HD#NJ(dt8fwb&d~ z_``MJGF+C}2PyT9J<-saQyUNHZid}zxnU$0Y}wJhJhzE11D<798PH0EX|YE0Lq*PA z?neU)__8u--Q>^YUm-S%2xpjFvRkHGdOKD5b}0}~qSqT=(w%wFFZ<+!&tL|AW4{sh zg(cwJEDDNejhvFi0HM3JlKi$A_;MFJ&~A0ed{uawx9>@wEipqx+ci`EL;$wJ^~x{; zg8O;3Z`kJv7^f>Z^lh%W4VI1=%~cF~KRodw5CvB5BGt}H7%sh86uw>uV9?)bp5!)F z`$1h&V-{Cxb*qWj+Fb)10sF=J=Ih9kAm6?pi30q`l;w93fB-jb+g6J?PUM~oV`;sc z^|A2sa;xB-vH+c_E;)zm7{?WLic3-e6P8@KKNk3hs_`EfVT&0ee~qAz&J3VWhU-%w zf1IEL5Tyn)K2eoy@8s)ab<)R?wl7c1K)wi-n_Aw<2io-GEu%AW_l_k?3^U^IulNP; z_LB2}nALJO4&k%{m;8vX1~u|%FZzdTzp=^2ZL0uWgBudps@{G!9Nhi~XCIP;z9GXT zoeim8@}U$W%Ehdfp)-a7zi|&BPRN zhHJ-sy35!j*ytm7gfxTd7Yf*gdQZ+SJN4liFcI<-tx&JB{4xpJ=V9*{7aQarG2t=@)_c5ICT0;=ueQ2Q{K%}>!__811 z0G-AGph;V-;7HLymxW_UGG_qr{CtD-i_v0K+93dxKrEQ=1}-;h0C-swV#)PFoVXgR zGTdKp*}*8I-6(c_(q)w0LVpN;$jR_L?XjbwwPRq*_}{b_Gu{%!r*qm$nmQ%D9e4c;ez;J=Lm zH%kSz&ET{{M=sXvDPC@AtW|{BUz&RHpQ?B6UV)&?aNdE-72B+0iJ^6Kb6lLCV4v7w$^<$Q?Uj7UO#U1TnK~5qLeF37fxz>riRP%xk2oclS z1|9mpw@WLWu7#3NavKP?hGrMq7A#qHma^lH&6t5nnI+8iYHDUk7M ztjzVpH@JHe{m(d?TjW7I=5vVXL_0WdN6uun&0KB?T%!9|?s4`xHl(yaW08@OZOU!g zOk=q*QDpNtB(eUX=DK=+>>>Qj^`&|U3pN(E=M#rhvLDGdm#d8?>unkpRd;R&A7~H3 zXTM>bP1;vqqOabTpT7k-8@j)veOV&?Gi$T;P$(xuvz(7BnT+me6AX?!pwh~LH7-ESm zz{jzz_e?aeO`l9rJ`y_f;!;AKv(5v{I5GhMe#nH$zK`@VK3XstsY1bj7*x0>+UKa= zS-TYBV4ih$qX=X>{gPS@rMbuuq%)8n=p#k?^Cv8^nj>dU$uy?JxCHng(4DFVqF2F{ zjeJv)?eNjw`plaT&X!9*-`BsMA zxP+fi@Seb;Rb#FY6|}L8^5Uj5PpJ-Uyd=Zv308)wkF>7k@4t4OM(A^&ga%pNjb=dbSnmVp^^F?o%q+s8~b{abHrd zCgLyZw=YZN-6?4Y?Q?-3J%Bh`5>a~$6mDs&BQ_CezGdc4Q4`4X@g5=_j?9)o5^Q3{ zwiyWwnD$nGkrnmhB0l9QPr9(dK6Om|Qzuq=)fH4sIN7b|=vk7$BOAE(>!ucE36Gnm z4=S-r>%42>qg8Z9I*(m&Wyd}8xL~4#W7%))?E$L-AvQ8d=^8zG$CX%%ionc`<@4Ev+9j@IihS|cXI1d&EC>r>ro3&Gu>ZG_XW=tg^|Au6S4N0x7tT?e*e>2`Z>M*~7 z6;W(kGx{1nwygH|d_)X-O7~tdDb}1lW`-lBF5ezEG+J1Fs!4L>^oG)%flH-bFuY-O z-QIT^moG=lB7=ynUyz0un5ENOnMMDllXO@ohvT_Xk_DCd{#fFblRY^r8s#dX)T0T2 z1mq#4gF2w@f^diMm79*yNiDBa9c@Hv!bIBp`dFtYaD0jAZNEm3xtSled}G+rb+-26 zBO%N0=hVVtWRROBMnrLA)VX4dxd=BEo}}rllRK45CKzyD6d7>DJBF{b2mktVaQ)I) zDp4dlojfngWx&u{(`bl)#`&LEejz79Q4|r`DEB-1dAx(2Q7#TO^YE;FcG+ZEw6E8F z4&ZZqsAlGyE{DzSuC(ec-O)Bh#{$5)DT)b1Vi`?F=7j-hGyBe*>zsuKH;?rfX+X5p z$_?jAbW4ICe+ztJ;3Y@#r!zJ#=kqJAv?X;$=l^MO62*n^*&RF25alP{GgIsQ=#SG4 z4#+1PFaM0kDzDZizLBd2P_O^!N`b}O55E(eE0HR_N{sF$#v@i7<*iALzxGis*MEVS zGTwy$eN6zPi8o?G_7ChTo5t|_H-AHIB}{l7>_#d?=HC2&_l*9-@TPY0|3i2FCyD4k zI#0$xm;W2X`Tv2MO%;w(FV!U9an2AAwn~P>HKZOK=3+2}HK89OA^y&tyI}Il88L_{ z@GsVv9C#pRJjeVm680ZG>c3y&QfNi&XZ3I#eA;X9r2SxiDl=KD0qkuEMmtePAHPZ1 zyIMG!jI8HYHd-jtKi8$o$O?Ris_XyBw2Ej3Com|Tvl(leycBodp9bAHo7>jOV7p^1 z$EWz(A$vk3F||X3&;m1tG62~@0sK5D`EfV&|HxneuV5{fwNo}EPF#VW;Ii!xUqw{0 z!75_n1NI$XLQhi_ruBgEZ~r;u;xFv{dreyhbLw6{I(kArR-jlWQtwUVZ7w-lcGx1A zoZi?Zsz*=l$P=&Ijr#vQ<(J5Oi39!kxSc-^2fHp@{P%Tamyn@R~M-uncwQq2nejf7zt7< z7g^SC7>P>LlY`cAN!IW;B`aaKFOWn=~5bGJ;zh$bw()D^qm#Yt*owmBjNnOAsQOy~JzPBQvWmI?ZmG^{>A9B;&9y-x3WjZR z3p>*|^u8rvHU0+ZJ`_N!d`?>9f2&ohBi^6gzukMjxprX%_@oLZL zgw)qiFw8AGT(`VYBr9v2%T|fV*0qobkV{lB&j}F?)w!+e{*aBXkz7NlGaT5H&>gV0Cqn+9Ty*{blF=@g@8{n>ioU@5 zX_R$d21ltk#tiMVnc*ZSM7O*HrxQ%6-I6#D{+g*!qV4%b!H3d1M?Ugi{>&(JAR1Pd zl`I1CWZK)PNH!DSi^SEf+p&9Tv+WmNf)fQr{nCVa0hC1Fi+`J~@Ja&mYy* z6}QA!BeE2peJ}EO(>yN{byARbKSe!ZkbyAI0yn&~6drBCrgwUlq8gzIsWw%V1^CgM zEs%JhgkOdd1LEV-@P8Jf^lYM%JuP`&MBfW2UIN?T$&X`e;uoU7MT$_CK;~=8R1dpY zLIwuxwlY!COehGRBwVsw^MBy91=*W3ZxLLJCMsDu^7E-MX`e7tUYZK~y`CML`DH@A z345cwIh=|JMeu;b5sf4z-pL*`kkvdD5DGUPH>RhSq89ciES@X0} zvB&FjPA(UTmG-bdwJgo&&aexMpIBKd^B&aj{;aZ_+3L-aavvglf4sB*kJ^S&bXv;j(L{~x| z7oIOy&Yu{_K$$It5I*&sAfQ0Kgfgq=)4oG9Zsw*K?qjPnE-hfCntVMJg)WAlC_xzq zMrD!b2X0>;D3jO67&3+cXDw=h@%vzjfYB{Y%7Z1tek4!d2mp=#1yA;#PutY?TWa_c zyQJW84@<3ICff(?3?%Z(Z#*^ z;G%fj6;YWZkmKpX_toU^GwHEt)yLD<27ymi9ds|AC9|m<|E8Nqm|5aBDLXaUqb;f< zoaZorsx80mic$W&9v<~z3?j=C|NF%J<#FHCm@6n3^r?5>^Z57spK$S&qd@SWwvXTM zh?A_EAgD`3UY&JYu9;j!$OTEc0wNj65|0V{L7{Xps>YwRFq^VjY{b zKhuz1;1n%xwXwGLPVwqpt-j<~Y^H&7*sl_%&qdUV#~e-}z-3VOj`td~e)cAE91c2T zK)k#gw|*r_HNQn{7{wH%7BYNB%JL zFX!hyH7pU~o%l|vWa+VEV|%Hv7OvH8)Y?Wzf>bp0(&EdEDFMaO8HVk@-PZ>ql7Lkp zz@r6Dife)sH4x}&Gp9`-+ltwi3$wZ{8D+<`d!Yx%m*1Jf@a{fe^KxCB!%)5C16z_rt5m4>hf(hDJS|3&<&wDf#Q}C{W?ETLd@EWDR(a`^&fB z#a@^BT3e^_qCY?$e?C_io{Dr0>vTY8MZ8HEm1`KwXMr^Svi+oJ?-Tb%CC!blcY;XiT4y{w^_yJw zp(IcgyA8N5&v14tL`A*tWsemZp17lBK}rzU;^0B^#E+fCngmCIdxSW5f{yNpDe ztQMfY@c2L%B1L!KLiMD#ZD2eLR1jvsDQuKO@R?=Tb{rR}wkYl>g`#G^NmVG%^_`@0 z8Q+##uT`?$^eO33-X0IhnsD^b#HL-un@!haM(^5lsgQn08o124pr5?Vk6F&azJ~Kh zntmjU{(5bXh)scT)XVZ6#r(?(EWngppnM#&v(Pp6stbh-_4$kXH?LQy$3AeU8oEXR zCy<(KLkRzfgd;^y`py#t3p~uXtv+}bVPOnLf}i#SyCvcw`!UB>&lQeC#3Lb>)V>Xh zPUrVsBit)FGBz%N=WZtRNAqP;fIj5}GX6KW^r4n+Iywi}R(N6lLW_i_m&$4BvPi1GIkGLz$%MZ5b)a7c2EBBDFdLG6ZSyDk*t zJO&<@0E)`c!O?r2DuNRutxFr1ft>C#K`e54dG}g>OKIvt_n1T9&eL{%G68z5y!WuS zvFY^noXF1bJzo{rrwClmy;-}$!RhtI?Da(sdxK03Cysy|j3!M52SW|5yig7T122V_ zhj4$?Qv3TzQ;))!SJWt8dFGY7zfmcVOPnETE!|E`eCQ%;z;vxWrIQTrOzOXw;+I`R zH8f8P=SY^XzGnx;Rbqg<_x-ZHg<#<7u*!7U&n;K;VU94O(?wVHtG5Hqdtu~_vD|9` zQ0{7)C;=DAS$6PYM&u@PF?c|Y5*t1=#!p`R;x3E$hPZhf)Mi8oA+_JK_dsl0yPRe` zS+faoHQV1jJVQamMdy!LAG#SIrV}s9o*C#YOps*by_a7H|Y}Hv-d= z9)7bQN#1Kq`}zCW(eN2$Prt0;d*?!V~N0R|J9UVSh(&bGt zM?P&h*Wm=rUc#d-B?NgvTN){|=9(1Ir7F~~1gMVin!QR9g$DJ+n{y+i`6jlmH=N!wvKXv)ptER^iP zu2c(tIx+{}R<^~wMStkKf=9M^o}NWt;M3Nr8P6cn+${-r>(vZ83QU9gBTIiyQx9{g z4n;{#EN4_Oes`-0Im6xMgp_~9_#@oM+5FK!)fwh5ccNkBufJLiG?Eq}3}jU$BOrm6 zTa;lR)aLDgPmyD|lcJ$*EwJ*DX-n7Rk~*k|@ZQaYl#zG+mTrnp@}wDIvA!>j%@561 zLtx~sS{%q3-^ZTcC_nUZ@(K?_CWv>}G#j_xd$M8hL{xclH}7nW^?`mEHWcLq8u8Xjkz%3E?ib7lJ&Zwmalst8_yJC2TFiVrY&1c_v^^H9X z(l;dvOWa9kFk}s)Q_5s1`6p=2%?&(Xh&CcFDDd9;LUx?1ceOsbMAXOEEP4{1nN3AS zw?)=z@0M?Fy}ffd6YHNDzvBDi{??bRigBLMHTl5d?fG#c*4bxS>g%0R##SE~g5bno zE}GWX4P-+%MAU(n8U$5Wg8vU+UlkQs*KGR{+zHya2G<6HLvRQd+}(q_ySq!{5CXw1 zxVtq@aCd^!xZeK$bH_Pn+=u(H>T!>~N3FGXRn0l8995=5*HopNzB<+WJB12?VbvCE z0uKzt_b?s&QX;O;3V;dMZBQfTHEv{IA&1StDndSBm`q%#x)L&yXRYR#o+!*7Hs_Wb zX+;+3V2-Hwb;T(8kwoek-E)=)8Kx}CcAi5ER2nB>j*iqQ_>~a__SEwedID?j3>(7j zV+N0zLB9|kiF*P}h8oe%%gr{ly|9VOjK1!!shQbF^t!tTqZ(Kp0?=?0@VB{MVAnFC z>m-BylMC#A?VmYu-+s6!CI`{?7J}#Ri%(C$QL1xzP%i^BvG44Mw3?`yn@ui*8PV*UquPh$2 ztSOI_nbI?)9mlN5?Nb@r#$?s}Ie`~T&jCYe&K7=ryrg{W+;w82!yn9cJ{9M3M<{r{ zNll61{{+un$%$=~IsjTEOw!fb9>fP7Ih=;(Hi#ZbG)4qBWLR=y-9D<$j-$|yUNfH~ zCWbqjeO%B2HDg|o+)F$QKCUJW{rz%GYIUOf!#XSB05K2BcaM8S2Q9`%O$ufb>elX} zkJ1#&!)f<1GJDv(A=MAUF&e8`H z&vbSkamh^wH7`p&ga>k(Z}Jf6a;$Cu9+nO zroPhTR{vD2vQWPs;{F~R-E>B}EPVPO0VbnfBekDZVY6Wo6aO?+4SrcTVQPt_ ze)0$CueHG1_Shbdnp+59vX3LVSO_RN)UR6SVHeSHVv+lOkNg@h1~<8|HuxOig~=nA zX-quw$SD$Q6w!|);{$UpFQAxZv+b?Hw2Je!t#5D_3pEq2GiV8JP$@_&4y+qdAq55hv%E3r zScO9qaoa#$@+7bQ?X}49QWlD2*nN6VJ*;s0E+}>lygIN1K9*duc4>>_IranjoDq5V zLXNWhKhhQp&9_2&Z&zayL%uPQ!U-CiJjhAV)yKLkQnqN3*skH^IBZJG-Z(A3;}|gr*-2S&P&)E zYln}=WdS;7)$)wYO})351Twa3%rVrGeuMpA!z}qZ&lK5Ahur&uYaEWFI}T&Av?5U~5n@XsC>|tQ9JN zc=TN1rQ8=edSh*hqSXRpA>p;%FRm`Hbzk?N)DHZ}e?faqutLqZ4PfTip<+jPZ%pD# zB@de`H$_C>Y^fwcuHpDJk5W^(pQ?fbck=ypZRCc6_Pt&62x{`+x|&0KHI-B#Taz`y z`ePxxb9^6tDIyHUicEDrOJKjOIRv;FGR?85`rgDMlLz$t!rLff=l-KoF%7j1r~i+23(;rmI_qjp+HXwadQN64bGi&>?Qjy zZ_J_71$XR6;cK1EiQ_-|TqJri zpj*jf_7LQsZ0V#@1-vahI}Qkca9Q10%ltmx(|f2fx}KLdUO!b9ufHybl;-uU3stAWZKsB%69tIVnj)^ zNjsH3i2{`b6He^2T2dYvGK)^Hr^VrBieag_ydJ4#S82v)k7DzbF4U! z;}#mmR>oA(h7XTFhuk>-`U2%iQWmZux8$11%)jrO+8Mi4+?5Zo>3i7~NbpF_n1=@}AUI|2;f zRx@~hj^Fy?kLaKA4HI&TkH(B5JE&8waZu&hzGZFn&wJt=yJJUanL0z;pOKET856*T zKy-alRkOdwLDFM13Lyc*#)@NX`TA129#xOHh@9s}xf!u`M;!tEn17(EyOblQUu^47 zjh0is!1;xV4b5@WxLSUT+g$UFYggj6##_g8dz9zUl&DI?ZQh$O+WIzGa~VaV=%01$ z3k{OTkwq$0+GPFKDV;4PBm;`|f=CW3$D4^>D{a3t$2t~V1AN*$pJz)>u(%8Ey|JPc4|OY%CYj5>5&e*us2_R z9*oLL3PXTgXo53Scn-0kMd5Yyfbkk5mviKUMa;R+aHhAld?j(j9NW`#PU4%vZ3oXp z-qHO|@+VwFY8&}!m(L%K{Bbd}MmIBiNb)Nk5nDFOHlEth_ALi_Mg_~P;Ceqx@w#y! zNznzf)9Cd>QvjZcvi_)k#Kf7-Mn}d2!#)z9>!gz&cup<2L;KIz<|eqIEB%bT31D-C zzzb1pf1(fi@<#hO3Cn51IWtQMtA9uaui>t2dDea_T-L^Meg3(ra`3UGU%hsoKYnd; znH0U5`}m)ig!ADl#)m_#^GrI^>ee|xZxjh#fbnsi zuq_eMBuMDb3bK8Q1)F+ba=3tQGdCwaKJQch*NJw0HeFiH5xdAK0wb3g^nll}@J{d* z+2c?bo{&b*13k^*jNQX!DmPz<&Rsq5D>08KnY%p4VY6EEe6_L!cHpJ2ik13^gYrZ0 zlK&2?P2$`FmH5?=sO>xieU=rhGd#1+Ht>s4Bk$&=wG^AjnDS~8y;Lx$a^orLT{|Z! z`Wv*AwAf9l9CTgv58`4pW-?vzbucWq4{hTGe!iMjCD{QTT)=`LNBoS+`2GuJNPJCj zKsE=&qFtq+ag#`)JUw2o^hZv@*3%rvJ{%#@PKOcx3!EIAkO+;H_fbM8>tZi~Jmtzh z5>@mfQ-|5Br^PFx3}*8n`P((aO{~0;Nl}EyJG4PWjmV##39ydZh5$TNuts4d93iLW zeFe9o5p=Z0FxKW;`GHnvl0JXMm%TnHhol)%xE4)bMOy@xUjxQUvs&rV{u@ZzOCM?q zJIpIb_hl+cdlp5*Y8CCFvzt+m_M1ezTVU<~tg|y*3|^J4KM0<{`)7Yk=!FE}k$W~6 z)*GeIapZ_AFV1=SD^aNsY!g&}b(%v-5N|E7#6+`VHZ**n_@deXpPypkZ}nDIIuFM3KTESExWdL4h%O^524Bo@ z1gqkbzJ2bv+VitZOL$0$FecDOqqLU65Q!Pi2zW6n1yf5~6bfK^x3zh$lv&X;v&b8H zdaf=ytDBRJ4yicc3qN06h%Sm`aZN9(nUPWC{EGM?Y)!xSJMjR$wv8(s$r9Fcts*!z z%}e_7ZKmPqAbE_EkF^nVQf!kO4d+AM%A&0$6i_Ru2r0rC4BYTNhYJrsXx>xmvxz9} z{W$Qa8dG9|LdxcvkfauEI5RQHi^x-n8cQEF`fTA-en=NYGB)Kb9?!5p|Gg+Ebx8J3 zeWCT-cZnE4eKuHvW|TPYbyRt3A_*Vj+JsuIlTURCv%Gi)Oi1k|_ynzUHHxaZkv}&t zzhqUR;Y^fGzeC9MWNIuE<}hd=GB<+J_nXhLRckc?(~>>e16zS6@B8&$f@r_P|A3zN ze6?Up+Y#XZEk#Gyv&zqD_eMB^cUL1m|cwwDw!bduKq6_A7M{S$EN7$>2XcJ1TV#A;R@!RWIyUIG-ap5KB zjr{$Y`>THa0LFaHt|tuldh{8myjzM5g7u|^VO?h@~;g**!B1ZM=5!d!ixAth3P4I)vbq@3r!Gx?hRLujt~oaB~y>a3AA?nw#d~ zhW%)AEm2RMoi?5?gSx~H(A6cybQcN4^#*O;PHL8~N4N)KipgEOiKxttxFLibEtfcT$T4`)iD9{k`2bU?SmoceO%N)qaD ziKiRhEPHSz-Hz9}V216wZxHlTm&+R-tZtSI-2n5gQaXv+HzdB!`oCm_(5Vx2_nw%- zGgsp{)A3v0eWRHh)6hY~YK9j1y$}7EbyLxLs)w0Oz2oM2wHFNX@yFCZjcsjm;|mlI zWIu5po#bg4D235SIYxBZ(GNWU9i>+jm6v4x1{S}i`Xhv&D+3HouGd32@$pYrVO5YZ z)55|42hk(07~uyQOA$gU$|9_p*1acps&_A*cT42q_B^9c6^V(rucQ8(HkpBDlD}r@ z$p^Wg{Tw^=5hzDbeLZMxZ@@{5917)*Oe5`ok@GWsnHvtX(e#)1h%QJ67s3{jWC@mE z&{!hb7gGkS^H&w)Yi#kn7CT0syvA-BHt`rC^fjnZliG|1(u+@mr}VbKm;Gr4zZ+~m zA3H@|XhTAlw(iN+`msBzqCX(6a$qxurKd*eaK{NkU#7-nP`94wwdS8AWE@e9UqVTb z=um*BIQe#Dw1-{{_|*j~vI)>QXe`bTvHpUczGq{LnPB8#xdh7WneY22V~&63DHD9( z-F;=wQszj+SC`?~cf>0%uTW@b7O}KOP%J7rYbPI+63!|QIv#S5WV0NILwh+Uh!j47 zv5~_8r2J;doh&d<9zM`!CKBJ1l{0H%YN~DGkD31>Kr+oSJb2^nP81?fB_d`K^_c zz&g}oU^FdQwu`=hg&z zV<+bKmg-CKF&0g~jL3c`e^qfXg;CVW?n&Gm?inE3$e5K0(U7{cB;+fkE3n>!cVMFf z5EJ&xEF!1jMDNb#;eAl;_Pm1yT)}uF`L7`$YnSq!AfPd)KDxL|Dz^vf`{yQ&wX^@Z zmzZiotY_l9t(~hAHCaa@dptHyh$n8>Pq{sdcUg7?fbOp%R*;bR(3z4gt6-msNw{h| zS=B$rv|%}ZBW^PzJkZMiPTWWLglqwrYZ?=MVQ?YgxBr!CX@($uAxCcuS^}IX&VvwL zvWbiTDo_lU9nXC7^IT8mlIQSmY_9p&KB5+}0BvgPCA_!ItG zMvpehK5UBDi0nUo-+_8y#meTsTar&~JJLmzC9v&oF&_U~_|ox>3G%Spa$pgXZ5~pr zHZnSe;K}P*R}J&y@}z_kh939Ll8fkS56aBro*wO-q>E5w z`w^^-i+E;cBGA?+TCc`pIlM%kUwYDqn1-8vpi{3YRBYC0wZ=S_Gs@g-Q*Fw-z9UdC zWAu(R?)TDJcH&88YZN)Z=EBn1K!xq_(j86tv*ohX-=4V>_S>%bR&)?S$ke6?Lig5O zE$y)t>2!ZsD9UW=r;!1GHJf2Qu#TBuv?Gb=5twGxU&R+QtvBzJM7bk)J! z7t6eJH0bqtKkeOra(SScR|ef9cs7Dl3eKF^Uy59y35g^P;xbj2##JHgu`iA<3#l?! z!IO7BS`3at%aJ`ijtT}C9h%4#<1mfKczWio*{Bk!8KjVkXP(2H&ai)5vstR`|MSef zm4YoSpoKs#XQP#Pd=L-gxl-sU(>RK)GPz1s?cGpHv5=nVu}mhcZ0?{}+^GP(kn~0> z!^}*1?&Ql6?7y@%>0D@u$IWfc*!Br|y!@c*iQDZ~88XT(@uAKU7x}Q$xXkn)SXCcA zuWyZ4wcpZ``ecsUrI`%7^`&~<40B>@)Zg^!9EV3y5_Abc&4E7t_z%~=FmzdCT`{OH zMM*=)Hmu5jrFaFm3hOy9Sk{!5l<>2Apo{yFLoO2upLU5{nWv0X{V0UO2aL?SCQhCB zWRo0(OW`s2+hlBrhD|(>1#?F0D6I*z|Mng_)0QzYRO^|{@SYp;BFowBKixC&{9Vny zl;vv-zv#Evzrg#AJJk2L<)iG>hw31Y=_yl8B!+IW)b;DY!?ccxMJwcBkOuGZ->q#I zDU0fYMtY2e)29PRbfblUKkWpmnxf`p`)*JZc8%YM#3%Ka;}1HAwaoP=6?wLr0&izB zN;f}tMTfp^0q*H;^*A~B+)OPU+6l2iZ(?9VEhDzrej$m5hQ`u9u1p=X$`KmK6)&b( zrA}C>t<7s2OIAj>X+o1C#8K9(P7Av{R)i|-OY8Z zhDxn?>!b>bPibD1s_pAA%dCb-$e`{zbo0v6cB;LG?nkkY8l!g$h7c`$X1hTay z^EkeqJ@8(IG*^A-jioHjnxrj$YWgkFL}xY(ZfMtw)aG7Qj|CBgcBS1q_e4ni)Uzv+ zaS$SpiILM%=1WYDyT$7zsbMK&e-<4(e{u)a-Dke42nm;0PHn0vB8`7Yv->r#w@6c= zg>9SeRi>p~k`7l)`O7|lUW9IbOz?v$tEL+Bz+V)G5Mq;9Jpy>DyGFOB4rHEjOqW+3 zkqe39g)YCY4}=onhp)DLyA9&x^oe4>^fExK${(FhOoi(q59P;6C*hGwL?A}pM8=vz zs>WAMd6@j6AIyp5_JoVPDfSZ+eXATojz87M zyQZ=nc1dwdDrI+@Rg%Q7O1ykgm3_Ny~ru2vC z6E4^W{obL?=rRXn86nXt8-Kw0#^e~@FB>TAA z*Kf=tWK3}EBzO$ko!9ao>buM#=oCvL{6TDalnjnGn!ZY_v^2jP1o=nS%7B0R&&Lk5 z{K_lGJB;@oQ1VswpZfbZJ~Rg za(^lp8uoQgbjU+F)tdHKQUUhch*fg=7kC52cg5QXN9apiPmXFOT`J`Og>pha?W=kwYuU2IOl0 zb};_WQuaquJ5V+tfEp;V8%kIn{LfK;DgZio{MSmj7XNRQ?h(}20W;`}XcYD$UQ3Ip zNi}>^j@DsEj#vOCsT)%L`;Zz;MhLV;@_!b+2;6^vO*5|4C4z_$Ho#OXFb|HREh=~s4Sdn*c9Ra_xUnc9k}mW6T{t1`hD-(eIxv2ZwefkZ?H_iwq>=G?%7bh zzC(A&zufwN5zO3gpk{&pTGEe{|C4-&?M;5Y3`k`@$8r<)6EOtQrBoWZTM(fNeteGR z*ng%>sW!0>O1PLEN=7=Y>oGJ>XbdN8_3lbN48blR~c zkUNJvb`t&{5C6Yj-e=i^`oALP7lVKBT9!c~|Cq)e&{bVT%-@f#6{gDgS`t1_ShZoz zo-*Ty(EVqyJem`<>y+o%XpIG4h?`PU#%Am~`KNCfiXP}YJ3C8}3EdIp=Y;zm>n7-P zx#}{qYJ1ynKbXxa3(GGM+6~W?zhsh-2XEkeU@qr7u$mHrtsmEq#)_ z*a-S##>W^o)3}{&ZIrdB>P~b@7j(0lv2bncwez5iGFhqI6D=nXYCc2nf zJeIzBn&IWDKYA|oQ(98)+ieq@=XsK)wJuwc=zLRLGOI4d$D4|%^M|(}J8<)8Hg)o{ zM8=xJEG%@0&KVaNztU48m9<2wFnc|yr;B!eXD2t^d+Kcc4G>BL$wVfIt9*r_4HIbY zCH*deDP8Jbp5q?QBE~)v* zFy{Ly&BH`}Lbjc2EwH*QcNlbi2HpSv7sf|@R5si2C8)fACwt#_!4W*PtvW}N9xJ?$ z2#BfCcL-{)51!Q}W4~-oaHt9J*DGdHMQRj?uI(^rGNJu=N5%Spt-}}n_*YB!D5yIH z|LrM>th~g%)u(5Lag6%(O0!c{W_(iGeasDz#ZO&ktkT+JBh?fge&YyO_MxI=A$~0G z#dU#D&935WgGx((#;rt2?)PoV%heNL@JSmRFpCwBYx3sKzPy@|jcU3@v-!W@cSDPS zhxfKGl|=`6Y&Sv|CZZkCT0_k?q`+Fvf6qomP%b_&SCg0Q(30}HLqL#qW0;Bo;kr>0 zcS8u%X7S73{=rsq1UgCefr%_AFi{|UER~&P{hcp4ug1odP%4|Of2fD3Ihl-Fcpfo+ z<0If5|2p(~PO=KDOVVrodVkq`K_<0KU*=aqk!Kx#TN)67DL-iv%qC^({LhUZ6~}w{ zSdeX8jMe=vZ`xYlXRukaGL1fx)OuzcehA42=ZS=yn<3=;7|+!FgqIFMiHOi5r?=9D zzC_ceZU7JKClj5KoCZ`gkz1#~8=TH}svGzQERa0_YeJtu_ahrGXrVf%L}Ez%MbfHWEX>W=L;#q~VNl~wpyLU)ps z*UR9Gjz5OI;Z11nJ-0k-3PiUnb|pg7$oL|LPP;V{!!hV}@OK=d;CKv<)ku8!WZpfN zGJj#FOy&t&@Q)~#>cO8oZ)u#hjlv=JZ`lmF4$a^c(@I)=@;6A$mTNaCw_ea7PC%Js z1UxEzUG?R3Mj+~mL-I_ORljd;0LwG4EpS-di=L5T7)kTCFgv(VKH%lzeK8=gfBkD^ zIT>*olGjJ~2Zw-XCK|4!w##e5YJsdi{)f-bBivW@5yGdz$?O#eN@WHIN&FL}9)MMN z>X1Dik#3}0w(z=go%5f*ztuCKAdasJxi2>QZs+qyZLYSTJdN^#@vFl2ju^3D&QrK@ z>Vcv%L#UC>x#F{U!r?yols#MGR&XU^#d=?8^Lj`P>;1pL)sqQ@##B?DYoG_U#<0Yv z^{(&0u?`Ckgq$22neRk3!GB!PXrY&FpF}x-q2s6p&JX`NC9w5ItB6UlVvG&xT?`O& zJWq6H+<*S^Khd~KH@$iH*YP1LbtehC-7$h-+>0-aC2MAH95BTVmO9Bz+UKJA$Fa{l+k z!fs~#JF?yuqZ*hRA2+RK4NC8-THq968;o@&O>zvpjEE&#$Q)+RYS>ekSu1&|D<&m# zO~mp1uP<$}>a$B;DL|$Ar6|bf^cL@B0wVVej=Bbnw<;~@uTQ!5!|}LTo_zRY5)3#B zml#VSqyIYa^YzofzofclCmb^mPFk&aDA&=-MyJT%H!0PHtSG0u$Dh>C_vwm`7^uXm zFKLkpOHz$5DuHoSUI1%PL=;)EdA5sT>o%eF6?hYjw&qg@k%J0b>Eg{5VTD6}dgU~l2rnkPP) zJ7Lr6DhW4gZ$R9Q=X@iA9uY4~A+`LuBWDfv0gHVh_q z0irva3W_@;?8w9m5m`o)K1(R5a>FA3o(Dy;fH!9O!@WPG9dG6~#prlVq3p7o!}{aj z6Op~7#2+GRcs0#mELzBfLn9_)wDL}ZL*il17t!k=_|o5v9oGP@`keA*;`J9Wr*jMa z85i##lgzV$HBa$~%#%Mu+G*+Tvz2oeMM7Qf~~gL+e3(0$#ebH%}tCd8;JW> z@giYASnD#)8)$n|dZ?Ewe#X>nzM_jkeu1C=cLatcQ&p0n2It)juS7MB(yEOXZ6pBmUaTC`l`D zOi)FqiQoGGk$ZbG9t@F7+MEK*7L*n*dXQ9Zgu<|>ciC?E>T~+%bI4|#r=H6rS^&i1 zof_jMPHFw&~DVr&H^ssh$?noDA4d5VCTnF-@O#R zwqk7Aq?AOS@uZ(B;FyoHu_?i>c&wP|h+b|;)^hOaTv_teCd3B&Jkpdh((`l zd-Gv;lK$z|VykJz`O=;XJ^FU?QYs+FigF}pmu8}BCK8)~D&WM1^3=Go9x;}rC`{XI zQwY|D6F4=35VYvRE)4~?sXMtS{~@3-x?(Q6UKz~|E1t>~SBw<_Poy17+m;v(6$kJT@=SX7g1-?6 zH$!UW&tp>84}Sucnxe;A8fvf5hpn?=d2_3&{w0#eyAF|V z_DNnbIQmBIonOGR#CS147n zB4H3(eyBQDc2W*mN+91fhbN@{d>Bi;ivhw<7STJMkn_B^IlE5=cVtbqa~x@MzzSIy z6Lc1;R1m}@zQB4|B@G;g{RvhT1ujOoRMTM@a>~E$0CDv{M+`nn12Xf5xR6=P=E_5o zyq?j{jH}ARe$C#Nb`=}sxDXEA88|NT2JVppmBI_hWB|uLMK<=9z3NO58adCS3#5GF zRzP+RLIe|4SqDj(752w?i*A$NngK&%INhDe7J%Igw^ieL zPBYng=U81A0OX-ZJmVGS$mdOBeI|c_p|Z@-ifVd@N8{*46jHT|~ghMF3Fj1s|52z-!WRBnQpP=_F zh8NyULRs$|PF$Td4REkD?|{>gj!oKR3iNCuCDR#Bn&q#`lqJHJqfvsSthX4s!D$pG za14|8G5qjrQ7-uvE0-?)*`MtuefyI9owGx=yjK?+I_eCKjTmPQY}>o$$|j~S?|7~} zzMx6jG}_U)%$n0UGdOr-f%_>ZI7tDZGhD(U!Ws2!IZ=4wg36f#1D9>H{neP#CtU2atg1@}yE5D1EWBYo!?Dyo{S_F}!0Xhw73yk1g-EMP6kQy{dj} zO*$o#?<1hE{)6VIIg@o7AK)zwdu+FNF=Z$^-k-v|hbwyxVKK|o3KUCDFVUwd`Ki(| zf)rYDl}6{5#@J+3e0 zj%XGeA0G`;)$WQQb>#k#QorIEUU2$qSfQ_$^(s|eCA!NV(Y!i7Dk`k0nVSp8ItWI! z3g_2R-jY^+lIm^3hXPYqj9XZotz@Y`DNKsfZr#Bg&c@n!Xq5Acu*yn^Jvh~3UuJn$ zo5?YW50^KI6J4L8`<%Y4qK2UUox~+1nuQ&8pWIpQ;cd^2t=N0ocPIP-9iwiBu$BMb zf{2-ine?iKPM1=F7k%GcXZquV7O)Sy#U!# z;lBUbpQU*3Mb6capnC!1%PKu$@V>hI?Eo0M?dPIn>*~YakogfLR@;tZPWSc?@HQuV(2ER!oFhO>B&f1b6 z90D5J^z_g6#=rIBvM}q3Rp6ht^S0U7E zrSEFq4K1;4EPLxL)yvtjy}{UcJ2H7vS)!F>g$hEe^HM=8Cbg z@F_Su#q6G=+cqgfRqzSmVrsjv4@&b|&`cyH{s&eiA=jc@WJgx7o_sIn=nov#~6!5^&X zpmG+5^X8+Ze?jO|;_K~&0NWm;^-wII5|gkaTCz1A?@VxsXhU_U2$`Ws74`qhy{=8; zK*J*)OW_=;674-tVhHIngR}=7pI9xszbwv;3z%)3&Z6eb%zd#qY(rL_#<~cFUEnDI z40$6T`yQEWw=|6nvRLXr(9RciKT^tf3(FAwW@DdFRZ|)0W6haeiwJ$X6}{Zs z!c^~*>HnZ^x)!%+OWw?2fR2ZL*l)F2m(gLtB(7U8(lsp*))WP0*xYSbCkQiFn+V2i3^*aJEmdJ!Dvr76*N|MaqN<44j%KG5KFOn8qxT8YK zH^q(2^SIx(JB8SdyhVd(<{XLg9EouhhbN)bLIc1g((vOlYN|N4wPi~%Te{T4}#k-uwZ(vM&E zDU0xn;+P$P{1w-`>2Ri%-qbvAvbS@D+(;sg#ARJ_dX`%P;wWMw6yLX_LY94ZV}$cT zmikd;V~c03gBzJZn+I3uue?I86WtHIRT0cOUM<*^exHwqeh!v`A+p&wH44R6Cq{Ua%LQdmH_kKy4pi3bAmb@d`%%1n?O+*)c*710C>{@H&bnM9S+T#XZ<(?V13lQ9lx<^Z?HO(Oi)aSI68HZ#A$#KIEO1#OvYR_W|3)a4ztJNaf(p>aqrTb`UXo5X?qp!v ziThE<9(1-{dUafLC2)oX{=YhbeVZovrxT#VZzj~Xh^lE|Bj`;FS=LYl&`) z=O9V>o&*MT`iYxm2YV~<8&aTV;A%w7=RMxid1G`z321mYC&YdF;7nNNFY!DPBPVqh513)xN7s#cBtyfd2&}y!-;zSR(}2F)sb(qY&C z1~N%CLusMhIf%QRS-+NOXNa(K@PzJ{3?VX(3&E@FQg;L~uJGETcaBlz6mh(SE2#Fp z>&w{EXtqfzYcRsyAL9*4HWJ;?Y&g$qMZU+K&V*giKo%r^v{<>K`83LJ?VX}oV&9bz zd0wE(%_}fuxyp%~^A`RH$-IVf&q;Mi_Tq;UcP*jSoZy29;fGz305lsP$(70YrWV(3 zfS7uA@hQk-jSl8VgW#oSjFxtasrnM!AsZ%TmAbizW&4&Z7#k$+vejI=+fvOI4Jk76 zpd_vGBG|@$1dQ%2!3*04S^dU}2!JT@elJ;TN`V!85xX=|i6mw<+?M|yvqJV=uEFk- z{|k|V>=Z|*9k?To;|77>Y4DWOw`Efz=`%7NowOh&UYEl;h%Q2_MdmJLS(7YOcgT}+ zWO4fPQn1TAfZR4G2lrS&Yo|e^s{*i?kmglVi_B(XXlkwnvJF}H*Dt=GvK?u^y<2Eb zf&%vVIUMYvC&$FaCM<9Q?ge_$8#^}aO{jgihRQGo*%x6EWgN*m3-C}xe$^~5^q$21 z8Ds1F3`KUl9+j9*!6#-hNTGcAHU9Ni(7h{GMKPKek@l{rB9J*&slY-kcIHsPeB*|z z)t`(vG-soV+imbgZmb5(N=e-VXo6Cc$r(o$zPa_|SRB^((k%`KMN8y3H_$FhGD!&8 zhkjcNQ+>vyXwslO0ho0d=ge}5o2))GXL#+s#hF%?bn|5TV6;32G>i$5o#dRu;;Bj}V_m3e{1ur|H&`h#*NL|;Bz)W!rHBh zsPKBtK8#F;vf<$(Zx;sB*1F9WasmcXc;V+lPY@T$C) zrlBXF{1`hMnnnek*c88?ivQEPSwB8v{wvlsEXa@%zbW6ly=RpUGC<#b9(mt2+dG)e zQB1NHIojlOTOpl!E2xGn7B)Ze6_?^I6+!Tv$6nAC;ENsly6`b`NrQR8 ze1q38Fb6t4Rqw0Ro-8L^>3j;1uU_H6E*?auPZZJp=Kmn_ef`S&j%QrZIW6BGL0^G1 z_4fQljPoFGcR-oC*rP0|%SH@Wa;cY8#dGcWK=x)M|fOnjw4MyreaAp6pIj3PfI-$+BUDu1E>N=R$p_+qV zT_-R?`JRqxjldZ_#9&)Dr`B3b>`_KDc}bn7=#pocB^&JE$yNrv-@Higdlu%H(Dt2w zRSFz-VhJGQ(0!}*G4`HJa(P6`PB)4qg(acz=V4@1>qIH2qJy=CbUh@o(!LUf7K_{p zzNX^w8wSouyocMeKigz6$8P3G9WQh!MNQWV17yzzP!%`GA&%(kf{Vvo<{74T+4SeB z33}^Fh!NFfRAOx3yq3hhl9VZh1=YdoScG9g+O{pb5G|x8TV7qUindE@r`dxykVSAY zuPF>pgPOOE^;Q9qx*sS5@Miy<0hK<$XiBJPQs7MPWS#l9NTizVm;)VbKRjxl84;zI z*$#|Q=&8iMUyB3~cAQh6DZcsA=m2rpAcDmO41zij*TcSn5VrE%SvF z7Z(uB$M>}a(dpt)e3}Lz&~$?As$|cNKApz8LM1n3pfma3W_>gJG~NWCv!7R?AY&Q2 zyJ0|>(f&Wv*LbXCdEB4knsMnP)P8h?`KEwVs-nI*P9R@&KsdlP=3??hqJPcEq}f9$ zFsuM&dCglpvvcV}u`^FT%b6HJwmT$$t?XQT5%bgA1zK*)Ft>}`I@zhgl zsT({XRRl}Q6vwpm+a9{#9=IFq^@Q4%nqe)?J+?A1rY?S|GeTR`i*tN3Mm>nA zFfMZ=A)LTDZ4~cn3SJ52oWAOioOBt5vTi@W$L@KMlX+Ap-|eF?p7ZZAIg1#XZG0Iu zC*k35_+d$ASsbqLE}H`Mt2eL<7O~Eh3ZY9<0o~(><${U7m#;jOTN)S;DOz=4>gUV2 zDxmb7j0MK!inO%|=yq&M9#oaijq0-ADD4@cc zJG!}wzGl|v4M5MREP~U)16hu|z4}W!>yNE+*!b49q4~ShvkwmW;1r``w+52ELy=%e z-M!P=2@(GgK^>Kz#UN3L9x!5$llC%_-eh>s*2k5M*1v3zO)Rl`>zIX2%K*G`_03NF zfMvXPJ}HRWkYvEv#YPP?36;ly5^?}ld3+DF3DYO`(vp5fWZ%=ms}bo)HK{#i<>IRP zCPGDVyCCU~)_Kc6W#+~lFA!#|v;V}DAy-%1L%mAn);p#<-7FXevjGHAO6m@oFCh+x z(4~vD^uXkg_8>qv6B6FcVY zuEtpHcXV2uE9gZUI&Rwq8FH{bS=e`x3M_irwYI?`< zw~{Az{Z)Cc`!~Zy)41TZ?zAC>w18?(S6?MTRN|!sv_Z^^5op-UAM*)OL3v_X2b#p| zc)E6fy7oRu^gp2Ye-8TCXFo`Br^uCq9{Ulr*w>Z(pbx!19^u!7pOMnL7MET%B~ZSv z(8-SC7f~Gxf~#J!2wV`~47yq>)+YH^&B>@~zVEyi*qjBQH19ewjeO*f_y2Xe{-pD1 z|7<7QjEqx*tn>`|uKPz+Y&-){wG*68y;yTzL{IYhcmKXkGZry%cy`&uk!KMj)CG=( zIK5<(j{Jn7?Zxs2mu|sI-_WFFOuzqrXXx`|YcRhJPN43nDGh0E3ZHq3IK8Dh`cAWB za?#g6iO<9Nmy*ibKEn$*3TMwpm~1nrAn5hE_J_yZm<)P{kp7nMHA(wx%Mt)Cwe z(OJ%3Q5@q|6my2UM2JMx=>m3^e4soF*clb#rOe^ zlVTN{NyDiX%&41z#0O1zVW6V3s5Ix&+!tvJB8ea)Cd5QWwIN_y2JHO?nr^UAZm6P8 zCMl_hvn|s?kouDN;oAT9?*1Rv-ZHAKuHF7_ad&qsS{#Z)aVTEAxI>ZPF2yPCkm62( z;_ktM1gAxdYjHwx`KR}N9y#ZE&-wIzV2q5x&d%C2t;(`aBV`V%j-{ie$m zGoHqB!S$?|K;WOkSLYSt+u>BuvnMmE8*2mH6cXKO&J;j0Y3xWBg0o zEEQ(&dWmM`-OMa|RfV8oQR#fDZ~gpp)TAGb3HRVQi1#E7l)88Xs1cvn#Q5A~$o`Qh z`I>36m8KICqA#LRbKXTNTBY8O`*S;^{On3OvJYRW^PKZgP5K27Z|B|oy+KV2Jto&Y zk&PZIqP5FATsN90g~^MBtY6()n&artIzuTJe)0Ke*ByyeFhGUbbeE8zFoG|4el|rh zd>`<&|HxNY_?E1-f84T-ZVuC_d!pB$(4)1DLJYstF->I9)BcwT*OXSiKUq~&;RV?n zqeWKg@upWtjdv5`?)*PYLt3P;@QKISITz%Ph4EHNqR|KsQnh{rziuXc6Ljp&-ROAc zNJMIVm!&c6khiF&!^M&`)|+=C*&ieMzAmL9Zu%hi1K(9F;0@mJ+Oe$ktB&K4K64C+ z(unK(*hXCoXSrS{HO8HSl5%GYYV?>2?gIbcQgoY1k9PD{3K|B>7g-K@0yFJ(#unFt z%Sr&3LVOQO{6vT4i54rDPJI5!I|1LvD*6IXgSt4A2o>l0F-~45Mv)FG17Vnurj9=zEgnhMYSbc zSlMCZQ1&0O={RvOGM@1itvTG^VIFK$b#GAGg|31#@S)6yc_Q_8)OaUJ1NlH?dW(Z6oGn&B1 zSw%Y%q!rq@YPbX@XN`DYH;k`s_Y}6hOikX2e#bVwyj<5td4P5+qDB8~Cxm1Zo~dr6 z#xd0E_WJ-}}iN@1C(`JT`Hu z=gmuTm%^kS&k^4DR=EiDlyUpHIv6i&MFqm5%c8eF=)I4}-O1P^9Ioa29#cqp$lvRv#j zL}lSLh+R2!$T$GR!6)N3egvaxFFh>&AgbiBGWbQD12u1glm=K}tW(9h{T(i43f9CO zabhMcnClfuUVd##v%o>b775YqJ!N#LpBT-ST z9!STG}T;&r8}D3v8i+Ecmb$OR>`k;0ha3!A{Kl zmm^QW|H8ADl%sY0HZ_HnB5}vgrD&w5LkL__@DQ+~&1RcII=0th7mEJSz{3A04UDrv z2DSPiBpl8oYVbjNsER-X-&|+a2fJ#s3yJorE+Qca2JSwWge3(1cKD0o4G&&W`KgT_9u;j%B zDV8o?SN##lsx$uqmH&6p7Z2vj#H3kp%R|J4 zO8oMSs2~LvIWN?3rq(A#{_J}dS{u2Km3c7J-E{o2^KY^2o*cyBi)%If-P5LgR}AZ3 zn~x?Rlg#XlZ@qF1ZWN!5SUBasK~idhJGf$QO9-2GOa`_-u^GO4PPRy!3^;J@Km-&M z3QS~zmL+iU*ZP!4tt_8+ZQhLD9zEcRRR2;VCq>u>&=s;5w4iywE`!L_bBnApwoTUI zc`O>y@C=CXBPoT4=7Y|YX`+RX9WZoh#z}z{9_o?S2^RrPo;e8aa9$RVUT0S^8J;sOu0ANPE!r(8osT;sse- ziNCvGOo{3xbhK74b`7ioW9TA~e!b^($eIZIvmDvQ6Fv1%^M z?neBI(txfsO5O8s(+8f+<@F$!s_%YE zLJH~**UC1=+-i;-u*Ptf2K6EbdcSND9bXTsfomvst!3OREUCiFcD!8;@y65rdFirV zE6{Gzv|=wA4_rk<$ngv<3Wd+krZBTO{ZtkI>deOX{77HG&*FKcmQl{C5k2sJzQ5MP zneNs@dSM*SIjtdxnVn@-aN8YUbO+#p0*eZ-YKE_p2&6~RAaM$n{=#Va476B}yXmxk z4XE+|_AS5Rg4RF#Xkn)_v^w9%uqjE=#{i~4Ba(OivFY|8I}0xsV_-8XqbXSP%yi_^ z8p{G={kYZXoSk|YF2LZn!-Ja)U$x;&Pd#f$TkI;n^zI#3Gy7WBnTFT%8;UB3DLCE5 zWKr9tCr3*82_D z!08(B+p)jR76`acQ-n65u$5BtGoyOv6| z)`JP#P>lmQ;dKY%E!ogg%*LtYC+sE64t7oNcHW9O`Y3JS29gma(Vwm zrfdbDhPkFsUbbX{o8zO&%I#5`%xbN2dy)){JH9GmrP+GkY?HjDSQQ=5(iEPb2VVma zSad_z>$xZKOdg)p1T&UOXfyCE+y)Q;tsgo#3;vsiZt7Cx}7~8Q;p%34tM# zg>6AP)2+#4+#)N`4->c45fsvd^Jb=aQPZy&vnok!t0k`o==`3GIw@hII)fy-=Lj)F z4slTODCURuso2?cEaoF(^Kg-9@<894o4jYFp1V;b%GqdRHJ%Y3M#dom>_G-mhFf4i z4+B8y^z^qo+8rWEImcV8Yl6i>jLuaGJu2R}E}*$e@KdU*hB3g#jeHPH5yTC z68P)a9?{-q#-F0Nxi3Z1Ta--_BoggF{gqiJ4OYIplwueb@00j172yB@L%$HJ7l3^W zBNXvf5ct;6N%bEKWe$ziW))p{*eQ64iHT8tKez`UzQ}2%Thi4uXBatod=5=kwgw_F zFcO)^_T2t@=~atmHS0OEc7O{IB+b zI_?`OV;KU0F}J+TZ0z!WZbEo@TBdT$5&k}8YO~b!hkHLRkG#LMu~LNXff8JV+fXZh zv#y$Aa?3!QvGbs>7^_dxRB7(tuH3Gp zJN*jW|FY!J{zok{crpv0%HLAhTu#uB9-Td+JG{2(!rEc1>Tx|$Rs*vWDz20Gp%b$d z&!J@{YCb<{PqmnAY@8zH{Te!?u4Nqg%4%MC*NgjhytCpPD>U6_i&ndtgNP;T5KQ`|X`&Vrr>MoPRKG>icwAYWq()|d0IXS0a$r+i3pkZ~@=PLD z;zS7TD$ISb`bRB4dLM$_Aq+z;Xl;gPbI?yTtL}MecjS?j4aN-Bqo9Yfk*S-c#V}b# z?-Y-TYV9%Bk1;T8nZ)_F?u z)>;j_KrTC9q<%(dnew(QubQOEc8G{er=9r%Hi6|T;B%hc6u63zjvh0Y5!c-(MS@F? z^|FuUT{Pg4?uI=MgUxSk;L#xmO`tQV14I3NX6)$hH0FlT%KO;6Qfo_V>rH)5M4ZoYFM`y%g6V)o;3%i;2j#3xt!gf04#O>4#`!~Rr8 zzjV`A`@-CO%q9PbYK;Lpfd1QA#3`avJop{ZPa$OdS#))Atn2P0PV{Mm+=j*!chUMRp@o{g5B`WL%7hJcKY zu5lkW*LG-tqjKTaW~#aSnFuM7!i)U-B-*;ET^%iyB-73D(cgGqG5kc*zEPRwu&`d6 zU{w$`1Nu_1szC9N5PBAeLOJ|)W73(Ghmz3ov0Pa!QjFR^ zWc>ziE?I8dlOg6<(4s0K%oi&?qH-hOK7K}$Lo?+?PzCxRgPIT!+hx?9y88|K+f&F3 zRnp`BIG*s#nQ)(iI@py(D(S*mGq`kIlV1Hw2a`k5>&- zk@LrNXCrYv2i@p_kJDxdD=PAYcByFKLudAjH?D3CF4s#e3$2D=0)2Hp(O53gCpP;D7E0wyJ+l!yld?p0fNj|T-4C*n7 zCLy?vpi$jYf&dcSvfDYx!wT(4IrLyt`@_hyWyN7{XUulFE9MiU0n0=Bqxpux-q)I6 zQ!MJ)DepZTrzPl@Qhj(>?hdJ81=~o5ysv_LPQmurmdFpw2*8x^9uCs0(u;YIas69X}`(p<)<(Qh8f6Bk# zaffuar2d6BA`H9&ooCYW7&|XSptkg2>_+@h@byQ$dIy|O!~GQMxsjRj&8$}V<&fN) zsLqV&qa!~QwQ?!2g~Y?tW6iqssGsZ@O4tLH;q^s?X0Mef?Rl;*XXh+xpe4Toi$~0sAT!$^ z$Xa*`Vs$@Lsmj|FRQN&D-tPKSR74NW%TrGC7O6%IbFb!ptIu)B_A+fwdC4IpCkA|Z z(|>Q$%Os3QINqOG)fUt9uuGXO=!S^R>vqm{fr0VuNL{?~ohpksYcjnlU@N*9;vo7i zHn`}CdxeF%cWH?XPfWa*I(~7(`W;6*6AT}o=p8Ia-u6910U7I{v>RZZ$PnXke%PqV zJEYxJWVsXaXUG+Qk{>5eGX9!&_P zX-2X)#WSrA+S+;;=nwPEyj+6VmH(|y?qYPRr47bSwctv%c{F;NN3cM?-^yA2F5d$kWY!-AXTH3DeaSpvf(PVZ|r)K!iU+ZQlfD-qZYh#v6x+j*C~>uj10xa$^>Bo#)GHz|V5&9;ZLwSg*P`4*c+>-AH}o ze=3knKF)ek*oouafx;f1;RV|;+2Iabr0O3xpK&(FPfCi3Lcny1U$A$kqIXcSAyli$ z`2<`GcwNQHhtB(y)YHb;2Nj++@*$5PW18X{S$QBlRMH*7HJ4`PT%=Twy=Ci{>4&G7 zt(Pa4?}eG;219~YO1*tK$R;AEyDc~a#yvZ?$*>Oc#@z)^O_nrzUX4Q6ZfslbHCTckZwkxTD4 zj;FQn%~=e6Yq}xaNd*G?*X}9ZZfiE99GUW;++jA2(hyJkB#UG%PriiZLZ6SQD%U^j z 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 KrAj0W{r(S#bgy>+ literal 0 HcmV?d00001 diff --git a/docs/core/versions/remove-runtime-sdk-versions.md b/docs/core/versions/remove-runtime-sdk-versions.md new file mode 100644 index 0000000000000..f8f45e736ee29 --- /dev/null +++ b/docs/core/versions/remove-runtime-sdk-versions.md @@ -0,0 +1,73 @@ +--- +title: How to remove .NET runtime and SDK +description: Instructions for removing the .NET Core Runtime and SDK components on Windows, Mac, and Linx +ms.date: 07/28/2018 +author: billwagner +ms.author: wiwagn +--- +# How to remove the .NET Core Runtime and SDK + +Over time, as you install updated versions of the .NET Core runtime and SDK, you may want to remove outdated versions of .NET Core. Removing older versions of the runtime may change the runtime chosen to run shared framework applications, as detailed in the article on [.NET Core version selection](selection.md). Removing an SDK removes the associated runtime as well. + +The .NET CLI has options you can use to list the versions of the SDK and runtime that are installed on your machine. Use [`dotnet --list-sdks`](../tools/dotnet.md#options) to see the list of SDKs installed on your machine. Use [`dotnet --list-runtimes`](../tools/dotnet.md#options) to see the list of runtimes installed on your machine. The following text shows typical output for Windows or unix: + +# [Windows](#tab/windows) + +```console +C:\> dotnet --list-sdks +2.1.200-preview-007474 [C:\Program Files\dotnet\sdk] +2.1.200-preview-007480 [C:\Program Files\dotnet\sdk] +2.1.200-preview-007509 [C:\Program Files\dotnet\sdk] +2.1.200-preview-007570 [C:\Program Files\dotnet\sdk] +2.1.200-preview-007576 [C:\Program Files\dotnet\sdk] +2.1.200-preview-007587 [C:\Program Files\dotnet\sdk] +2.1.200-preview-007589 [C:\Program Files\dotnet\sdk] +2.1.200 [C:\Program Files\dotnet\sdk] +2.1.201 [C:\Program Files\dotnet\sdk] +2.1.202 [C:\Program Files\dotnet\sdk] +2.1.300-preview2-008533 [C:\Program Files\dotnet\sdk] +2.1.300 [C:\Program Files\dotnet\sdk] +2.1.400-preview-009063 [C:\Program Files\dotnet\sdk] +2.1.400-preview-009088 [C:\Program Files\dotnet\sdk] +2.1.400-preview-009171 [C:\Program Files\dotnet\sdk] + +C:\> dotnet --list-runtimes +Microsoft.AspNetCore.All 2.1.0-preview2-final [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All] +Microsoft.AspNetCore.All 2.1.0 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All] +Microsoft.AspNetCore.All 2.1.1 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All] +Microsoft.AspNetCore.All 2.1.2 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.All] +Microsoft.AspNetCore.App 2.1.0-preview2-final [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] +Microsoft.AspNetCore.App 2.1.0 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] +Microsoft.AspNetCore.App 2.1.1 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] +Microsoft.AspNetCore.App 2.1.2 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App] +Microsoft.NETCore.App 2.0.6 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] +Microsoft.NETCore.App 2.0.7 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] +Microsoft.NETCore.App 2.0.9 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] +Microsoft.NETCore.App 2.1.0-preview2-26406-04 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] +Microsoft.NETCore.App 2.1.0 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] +Microsoft.NETCore.App 2.1.1 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] +Microsoft.NETCore.App 2.1.2 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] +``` + +# [Linux](#tab/linux) +# [MacOS](#tab/MacOS) + +<< Add this on my mac>> + +*** + +<< Add this on my mac>> + +*** + +## On Windows + +.NET Core uses the Windows **Add/Remove Programs** dialog to remove versions of the .NET Core runtime and SDK. The following figure shows the **Add/Remove Programs** dialog with several versions of the .NET runtime and SDK installed. + +![Add / Remove programs to remove .NET Core](./media/remove-runtime-sdk-versions/programs-and-features.png) + +Select any versions you want to remove from your machine and click **Uninstall**. + +## On MacOS and Linux + +<< Add this on my Mac >> \ No newline at end of file diff --git a/docs/core/versions/version-history.md b/docs/core/versions/version-history.md index b3749826ac312..9484e91e93ef6 100644 --- a/docs/core/versions/version-history.md +++ b/docs/core/versions/version-history.md @@ -20,36 +20,32 @@ The first two digits of the version numbers realign with the 2.1.0 version of th Evaluating [releases.json](https://github.com/dotnet/core/blob/master/release-notes/releases.json) yields the following. -<< this table should include LTS. Check with Lee Coward >> -.. Footnote for VB versions aligning to Visuals Studio - - -| Date | .NET Core SDK(4) | .NET Core Runtimes | Contains C# | Contains VB | Notes | -|------------|------------------|--------------------|-------------|-------------|-------| -| 2017-03-07 | 1.0.1 | 1.0.4,1.1.1 | 7.0 | 15.0 | | -| 2017-05-09 | 1.0.4 | 1.0.5, 1.1.2 | 7.0 | 15.0 | | -| 2017-09-21 | 1.1.4 | 1.0.7, 1.1.4 | 7.0 | 15.0 | | -| 2017-11-14 | 1.1.7 | 1.0.8, 1.1.5 | 7.0 | 15.0 | | -| 2017-11-14 | 1.1.7 | 1.0.9, 1.1.6 | 7.0 | 15.0 | | -| 2018-03-13 | 1.1.8 | 1.0.10, 1.1.7 | 7.0 | 15.0 | | -| 2018-04-17 | 1.1.9 | 1.0.11, 1.1.8 (*) | 7.0 | 15.0 | | -| 2017-08-14 | 2.0.0 | 2.0.0 | 7.1 | 15.3 | | -| 2017-11-14 | 2.0.3 | 2.0.3 | 7.1 | 15.3 | | -| 2017-12-04 | 2.1.2 | 2.0.3 | 7.1 | 15.3 | (1) | -| 2018-01-09 | 2.1.4 | 2.0.5 | 7.1 | 15.3 | (1) | -| 2018-03-13 | 2.1.100 | 2.0.5 | 7.2 | 15.5 | (1,2) | -| 2018-03-13 | 2.1.101 | 2.0.6 | 7.2 | 15.5 | (1,2) | -| 2018-03-19 | 2.1.102 | 2.0.6 | 7.2 | 15.5 | (1,2) | -| 2018-03-22 | 2.1.103 | 2.0.6 | 7.2 | 15.5 | (1,2) | -| 2018-04-04 | 2.1.104 | 2.0.6 | 7.2 | 15.5 | (1,2) | -| 2018-04-27 | 2.1.105 | 2.0.7 | 7.2 | 15.5 | (1,2) | -| 2018-05-08 | 2.1.200 | 2.0.8 | 7.2 | 15.5 | (1,2) | -| 2018-05-21 | 2.1.201 | 2.0.8 (*) | 7.2 | 15.5 | (1,2) | -| 2018-05-30 | 2.1.300 | 2.1.0 | 7.3 | 15.5 | (3) | -| 2018-06-10 | 2.1.301 | 2.1.1 | 7.3 | 15.5 | (3) | -| 2018-06-10 | 2.1.302 | 2.1.2 | 7.3 | 15.5 | (3) | - -(*) Indicates LTS (Long-Term Support). + +| Date | .NET Core SDK(4) | .NET Core Runtimes | C# Version | VB Version | F# Version | Notes | +|------------|------------------|--------------------|-------------|-------------|------------|-------| +| 2017-03-07 | 1.0.1 | 1.0.4,1.1.1 | 7.0 | 15.0 | 4.1 | | +| 2017-05-09 | 1.0.4 | 1.0.5, 1.1.2 | 7.0 | 15.0 | 4.1 | | +| 2017-09-21 | 1.1.4 | 1.0.7, 1.1.4 | 7.0 | 15.0 | 4.1 | | +| 2017-11-14 | 1.1.7 | 1.0.8, 1.1.5 | 7.0 | 15.0 | 4.1 | | +| 2017-11-14 | 1.1.7 | 1.0.9, 1.1.6 | 7.0 | 15.0 | 4.1 | | +| 2018-03-13 | 1.1.8 | 1.0.10, 1.1.7 | 7.0 | 15.0 | 4.1 | | +| 2018-04-17 | 1.1.9 | 1.0.11, 1.1.8 | 7.0 | 15.0 | 4.1 | | +| 2017-08-14 | 2.0.0 | 2.0.0 | 7.1 | 15.3 | 4.1 | | +| 2017-11-14 | 2.0.3 | 2.0.3 | 7.1 | 15.3 | 4.1 | | +| 2017-12-04 | 2.1.2 | 2.0.3 | 7.1 | 15.3 | 4.1 | (1) | +| 2018-01-09 | 2.1.4 | 2.0.5 | 7.1 | 15.3 | 4.1 | (1) | +| 2018-03-13 | 2.1.100 | 2.0.5 | 7.2 | 15.5 | 4.1 | (1,2) | +| 2018-03-13 | 2.1.101 | 2.0.6 | 7.2 | 15.5 | 4.1 | (1,2) | +| 2018-03-19 | 2.1.102 | 2.0.6 | 7.2 | 15.5 | 4.1 | (1,2) | +| 2018-03-22 | 2.1.103 | 2.0.6 | 7.2 | 15.5 | 4.1 | (1,2) | +| 2018-04-04 | 2.1.104 | 2.0.6 | 7.2 | 15.5 | 4.1 | (1,2) | +| 2018-04-27 | 2.1.105 | 2.0.7 | 7.2 | 15.5 | 4.1 | (1,2) | +| 2018-05-08 | 2.1.200 | 2.0.8 | 7.2 | 15.5 | 4.1 | (1,2) | +| 2018-05-21 | 2.1.201 | 2.0.8 | 7.2 | 15.5 | 4.1 | (1,2) | +| 2018-05-30 | 2.1.300 | 2.1.0 | 7.3 | 15.5 | 4.1 | (3) | +| 2018-06-10 | 2.1.301 | 2.1.1 | 7.3 | 15.5 | 4.1 | (3) | +| 2018-06-10 | 2.1.302 | 2.1.2 | 7.3 | 15.5 | 4.1 | (3) | + (1) These versions of .NET Core SDK 2.1.x cannot build apps targeting .NET Core Runtime 2.1.x. (2) The new version number scheme was decided at the start of 2018. However, there were two feature level releases before .NET Core Runtime 2.10 released. Thus, 2.1.10x and 2.20x represent a transition period. (3) The .NET Core 2.1 release represents unification of version numbers on the new scheme. @@ -57,3 +53,5 @@ Evaluating [releases.json](https://github.com/dotnet/core/blob/master/release-no > [!NOTE] > Visual Basic language versions typically match the version of Visual Studio when that language version first shipped. + +Detailed support information can be found in the article describing the official [.NET Support Policy](https://www.microsoft.com/net/Support/Policy). \ No newline at end of file diff --git a/docs/toc.md b/docs/toc.md index 608c505ca4226..73d2bab6fb147 100644 --- a/docs/toc.md +++ b/docs/toc.md @@ -121,9 +121,9 @@ ### [Unit Testing Published Output](core/testing/unit-testing-published-output.md) ### [Live unit testing .NET Core projects with Visual Studio](/visualstudio/test/live-unit-testing-start) ## [Versioning](core/versions/index.md) -## [.NET Core Version History](core/versions/version-history.md) +### [.NET Core Version History](core/versions/version-history.md) ### [.NET Core version selection](core/versions/selection.md) -### [.NET LTS guidance](core/version/lts-current.md) +### [Removing outdated Runtimes and SDKs](core/versions/remove-runtime-sdk-versions.md) ## [Runtime IDentifier catalog](core/rid-catalog.md) ## [.NET Core SDK Overview](core/sdk.md) ## [.NET Core CLI Tools](core/tools/index.md) From 598c42105d446bf5d74d4414c9dd202b076d8166 Mon Sep 17 00:00:00 2001 From: Bill Wagner Date: Fri, 27 Jul 2018 11:51:29 -0400 Subject: [PATCH 06/17] Add unix and linux uinstall instructions. --- .../versions/remove-runtime-sdk-versions.md | 96 +++++++++++++++++-- 1 file changed, 88 insertions(+), 8 deletions(-) diff --git a/docs/core/versions/remove-runtime-sdk-versions.md b/docs/core/versions/remove-runtime-sdk-versions.md index f8f45e736ee29..3196e8164df7e 100644 --- a/docs/core/versions/remove-runtime-sdk-versions.md +++ b/docs/core/versions/remove-runtime-sdk-versions.md @@ -7,7 +7,7 @@ ms.author: wiwagn --- # How to remove the .NET Core Runtime and SDK -Over time, as you install updated versions of the .NET Core runtime and SDK, you may want to remove outdated versions of .NET Core. Removing older versions of the runtime may change the runtime chosen to run shared framework applications, as detailed in the article on [.NET Core version selection](selection.md). Removing an SDK removes the associated runtime as well. +Over time, as you install updated versions of the .NET Core runtime and SDK, you may want to remove outdated versions of .NET Core. Removing older versions of the runtime may change the runtime chosen to run shared framework applications, as detailed in the article on [.NET Core version selection](selection.md). The .NET CLI has options you can use to list the versions of the SDK and runtime that are installed on your machine. Use [`dotnet --list-sdks`](../tools/dotnet.md#options) to see the list of SDKs installed on your machine. Use [`dotnet --list-runtimes`](../tools/dotnet.md#options) to see the list of runtimes installed on your machine. The following text shows typical output for Windows or unix: @@ -50,17 +50,78 @@ Microsoft.NETCore.App 2.1.2 [C:\Program Files\dotnet\shared\Microsoft.NETCore.Ap ``` # [Linux](#tab/linux) -# [MacOS](#tab/MacOS) -<< Add this on my mac>> +```console +$ dotnet --list-sdks +1.0.1 [/usr/local/share/dotnet/sdk] +1.0.4 [/usr/local/share/dotnet/sdk] +2.0.0-preview1-005977 [/usr/local/share/dotnet/sdk] +2.0.0-preview2-006497 [/usr/local/share/dotnet/sdk] +2.0.0 [/usr/local/share/dotnet/sdk] +2.1.4 [/usr/local/share/dotnet/sdk] +2.1.300-preview2-008530 [/usr/local/share/dotnet/sdk] +2.1.300 [/usr/local/share/dotnet/sdk] +2.1.301 [/usr/local/share/dotnet/sdk] + +$ dotnet --list-runtimes +Microsoft.AspNetCore.All 2.1.0-preview2-final [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All] +Microsoft.AspNetCore.All 2.1.0 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All] +Microsoft.AspNetCore.All 2.1.1 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All] +Microsoft.AspNetCore.App 2.1.0-preview2-final [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App] +Microsoft.AspNetCore.App 2.1.0 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App] +Microsoft.AspNetCore.App 2.1.1 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App] +Microsoft.NETCore.App 1.0.4 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] +Microsoft.NETCore.App 1.0.5 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] +Microsoft.NETCore.App 1.1.1 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] +Microsoft.NETCore.App 1.1.2 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] +Microsoft.NETCore.App 2.0.0-preview1-002111-00 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] +Microsoft.NETCore.App 2.0.0-preview2-25407-01 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] +Microsoft.NETCore.App 2.0.0 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] +Microsoft.NETCore.App 2.0.5 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] +Microsoft.NETCore.App 2.1.0-preview2-26406-04 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] +Microsoft.NETCore.App 2.1.0 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] +Microsoft.NETCore.App 2.1.1 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] +``` -*** +# [MacOS](#tab/MacOS) -<< Add this on my mac>> +```console +$ dotnet --list-sdks +1.0.1 [/usr/local/share/dotnet/sdk] +1.0.4 [/usr/local/share/dotnet/sdk] +2.0.0-preview1-005977 [/usr/local/share/dotnet/sdk] +2.0.0-preview2-006497 [/usr/local/share/dotnet/sdk] +2.0.0 [/usr/local/share/dotnet/sdk] +2.1.4 [/usr/local/share/dotnet/sdk] +2.1.300-preview2-008530 [/usr/local/share/dotnet/sdk] +2.1.300 [/usr/local/share/dotnet/sdk] +2.1.301 [/usr/local/share/dotnet/sdk] + +$ dotnet --list-runtimes +Microsoft.AspNetCore.All 2.1.0-preview2-final [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All] +Microsoft.AspNetCore.All 2.1.0 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All] +Microsoft.AspNetCore.All 2.1.1 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All] +Microsoft.AspNetCore.App 2.1.0-preview2-final [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App] +Microsoft.AspNetCore.App 2.1.0 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App] +Microsoft.AspNetCore.App 2.1.1 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App] +Microsoft.NETCore.App 1.0.4 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] +Microsoft.NETCore.App 1.0.5 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] +Microsoft.NETCore.App 1.1.1 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] +Microsoft.NETCore.App 1.1.2 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] +Microsoft.NETCore.App 2.0.0-preview1-002111-00 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] +Microsoft.NETCore.App 2.0.0-preview2-25407-01 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] +Microsoft.NETCore.App 2.0.0 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] +Microsoft.NETCore.App 2.0.5 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] +Microsoft.NETCore.App 2.1.0-preview2-26406-04 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] +Microsoft.NETCore.App 2.1.0 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] +Microsoft.NETCore.App 2.1.1 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] +``` *** -## On Windows +## Uninstalling .NET Core + +# [Windows](#tab/Windows) .NET Core uses the Windows **Add/Remove Programs** dialog to remove versions of the .NET Core runtime and SDK. The following figure shows the **Add/Remove Programs** dialog with several versions of the .NET runtime and SDK installed. @@ -68,6 +129,25 @@ Microsoft.NETCore.App 2.1.2 [C:\Program Files\dotnet\shared\Microsoft.NETCore.Ap Select any versions you want to remove from your machine and click **Uninstall**. -## On MacOS and Linux +# [MacOS](#tab/MacOS) + +On Mac, you must remove the SDKs and runtimes separately, by removing the directory that contains that version. For example, to remove the 1.0.4 SDK and runtime, you would use hte following bash commands: -<< Add this on my Mac >> \ No newline at end of file +```bash +sudo rm -rf /usr/local/share/dotnet/sdk/1.0.1 +sudo rm -rf /usr/local/share/dotnet/shared/Microsoft.NETCore.App/1.0.1 +``` + +The directories are listed in the output from the `dotnet --list-sdks` and `dotnet --list-runtimes` command, as shown in the earlier table. + +# [Linux](#tab/Linux) + +On linux, use the `apt-get` package manager to remove any older versions of the .NET Core SDK. For example, to uninstall the 1.0.1 SDK, use the following command: + +```bash +sudo apt-get remove dotnet-dev-1.0.1 +``` + +The Linux SDK installers automatically remove older versions of the SDK when upgrading. For example, upgrading from 2.1.300 to 2.1.301 will remove version 2.1.300 when the installation has finished. + +*** From 9fac0585fba631f7f11fc3e3f8afddcaebc04cb1 Mon Sep 17 00:00:00 2001 From: Bill Wagner Date: Fri, 27 Jul 2018 11:52:00 -0400 Subject: [PATCH 07/17] proofread --- docs/core/versions/remove-runtime-sdk-versions.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/core/versions/remove-runtime-sdk-versions.md b/docs/core/versions/remove-runtime-sdk-versions.md index 3196e8164df7e..de1cb02fd5256 100644 --- a/docs/core/versions/remove-runtime-sdk-versions.md +++ b/docs/core/versions/remove-runtime-sdk-versions.md @@ -131,7 +131,7 @@ Select any versions you want to remove from your machine and click **Uninstall** # [MacOS](#tab/MacOS) -On Mac, you must remove the SDKs and runtimes separately, by removing the directory that contains that version. For example, to remove the 1.0.4 SDK and runtime, you would use hte following bash commands: +On Mac, you must remove the SDKs and runtimes separately, by removing the directory that contains that version. For example, to remove the 1.0.4 SDK and runtime, you would use the following bash commands: ```bash sudo rm -rf /usr/local/share/dotnet/sdk/1.0.1 From 7ed62e788ef89ed964670747ee24a93f0a1bfa91 Mon Sep 17 00:00:00 2001 From: Bill Wagner Date: Fri, 27 Jul 2018 12:45:47 -0400 Subject: [PATCH 08/17] fix a tab error --- .../versions/remove-runtime-sdk-versions.md | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/docs/core/versions/remove-runtime-sdk-versions.md b/docs/core/versions/remove-runtime-sdk-versions.md index de1cb02fd5256..0311dc9751496 100644 --- a/docs/core/versions/remove-runtime-sdk-versions.md +++ b/docs/core/versions/remove-runtime-sdk-versions.md @@ -11,7 +11,7 @@ Over time, as you install updated versions of the .NET Core runtime and SDK, you The .NET CLI has options you can use to list the versions of the SDK and runtime that are installed on your machine. Use [`dotnet --list-sdks`](../tools/dotnet.md#options) to see the list of SDKs installed on your machine. Use [`dotnet --list-runtimes`](../tools/dotnet.md#options) to see the list of runtimes installed on your machine. The following text shows typical output for Windows or unix: -# [Windows](#tab/windows) +# [Windows](#tab/Windows) ```console C:\> dotnet --list-sdks @@ -49,7 +49,7 @@ Microsoft.NETCore.App 2.1.1 [C:\Program Files\dotnet\shared\Microsoft.NETCore.Ap Microsoft.NETCore.App 2.1.2 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App] ``` -# [Linux](#tab/linux) +# [Linux](#tab/Linux) ```console $ dotnet --list-sdks @@ -129,25 +129,25 @@ Microsoft.NETCore.App 2.1.1 [/usr/local/share/dotnet/shared/Microsoft.NETCore.Ap Select any versions you want to remove from your machine and click **Uninstall**. -# [MacOS](#tab/MacOS) +# [Linux](#tab/Linux) -On Mac, you must remove the SDKs and runtimes separately, by removing the directory that contains that version. For example, to remove the 1.0.4 SDK and runtime, you would use the following bash commands: +On linux, use the `apt-get` package manager to remove any older versions of the .NET Core SDK. For example, to uninstall the 1.0.1 SDK, use the following command: ```bash -sudo rm -rf /usr/local/share/dotnet/sdk/1.0.1 -sudo rm -rf /usr/local/share/dotnet/shared/Microsoft.NETCore.App/1.0.1 +sudo apt-get remove dotnet-dev-1.0.1 ``` -The directories are listed in the output from the `dotnet --list-sdks` and `dotnet --list-runtimes` command, as shown in the earlier table. +The Linux SDK installers automatically remove older versions of the SDK when upgrading. For example, upgrading from 2.1.300 to 2.1.301 will remove version 2.1.300 when the installation has finished. -# [Linux](#tab/Linux) +# [MacOS](#tab/MacOS) -On linux, use the `apt-get` package manager to remove any older versions of the .NET Core SDK. For example, to uninstall the 1.0.1 SDK, use the following command: +On Mac, you must remove the SDKs and runtimes separately, by removing the directory that contains that version. For example, to remove the 1.0.4 SDK and runtime, you would use the following bash commands: ```bash -sudo apt-get remove dotnet-dev-1.0.1 +sudo rm -rf /usr/local/share/dotnet/sdk/1.0.1 +sudo rm -rf /usr/local/share/dotnet/shared/Microsoft.NETCore.App/1.0.1 ``` -The Linux SDK installers automatically remove older versions of the SDK when upgrading. For example, upgrading from 2.1.300 to 2.1.301 will remove version 2.1.300 when the installation has finished. +The directories are listed in the output from the `dotnet --list-sdks` and `dotnet --list-runtimes` command, as shown in the earlier table. *** From e49242b9fef8ecc76aee82b1d5c5a13bf9c2e2f5 Mon Sep 17 00:00:00 2001 From: Bill Wagner Date: Tue, 31 Jul 2018 12:08:07 -0400 Subject: [PATCH 09/17] update Linux uninstall instructions --- .../versions/remove-runtime-sdk-versions.md | 47 ++++++++++++++++--- 1 file changed, 40 insertions(+), 7 deletions(-) diff --git a/docs/core/versions/remove-runtime-sdk-versions.md b/docs/core/versions/remove-runtime-sdk-versions.md index 0311dc9751496..ec6bb2f50b567 100644 --- a/docs/core/versions/remove-runtime-sdk-versions.md +++ b/docs/core/versions/remove-runtime-sdk-versions.md @@ -131,23 +131,56 @@ Select any versions you want to remove from your machine and click **Uninstall** # [Linux](#tab/Linux) -On linux, use the `apt-get` package manager to remove any older versions of the .NET Core SDK. For example, to uninstall the 1.0.1 SDK, use the following command: +There are more options to uninstall .NET Core (either SDK or runtime) on Linux. The best way for you to uninstall .NET Core is to mirror the action you used to install .NET Core. The specifics depend on your chosen distribution and the installation method. + +> [!IMPORTANT] +> For Red Hat installations, consult the [Red Hat Getting Started Guide](https://access.redhat.com/documentation/en-us/net_core/2.0/html/getting_started_guide/gs_install_dotnet#install_register_rehel) for information on installing and uninstalling .NET Core. + +Starting with .NET Core 2.1, there is no need to uninstall the .NET Core SDK when upgrading it using a package manager. The package manager installations will automatically remove the older version upon the successful installation of a newer version. + +If you installed .NET Core using a package manager, you use that same package manager to uninstall .NET SDK or runtime. .NET Core installations support most popular package managers. Consult the documentation for your distribution's package manager for the precise syntax on your environment: + +- [apt-get](https://wiki.debian.org/apt-get) is used by Debian based systems, including Ubuntu. +- [yum](http://yum.baseurl.org/wiki/YumCommands) is used on Fedora, SUSE Linux Enterprise System (SLES), CentOS, and Oracle Linux. +- [zypper](https://www.suse.com/documentation/opensuse114/book_opensuse_reference/data/sec_zypper.html) is used on openSUSE. +- [dnf](https://docs.fedoraproject.org/f27/system-administrators-guide/package-management/DNF.html) is used on Fedora. + +In almost all cases, the command to remove a package is `remove`. + +The package name for the .NET Core SDK installation for most package managers is `dotnet-sdk`, followed by the version number. For example, the .NET Core SDK version 2.1 is the package `dotnet-sdk-2.1`. + +For machines that have installed only the runtime, and not the SDK, the package name is `dotnet-runtime-` for the .NET Core runtime, and `aspnetcore-runtime-` for the entire runtime stack. + +.NET Core installations prior to 2.0 did not uninstall the host application when the SDK was uninstalled using the package manager. Using `apt-get`, the command is: ```bash -sudo apt-get remove dotnet-dev-1.0.1 +apt-get remove dotnet-host ``` -The Linux SDK installers automatically remove older versions of the SDK when upgrading. For example, upgrading from 2.1.300 to 2.1.301 will remove version 2.1.300 when the installation has finished. +Note that there is no version attached to `dotnet-host` + +If you installed using a tarball, you must remove .NET Core using the manual method: + +You remove the SDKs and runtimes separately, by removing the directory that contains that version. For example, to remove the 1.0.1 SDK and runtime, you would use the following bash commands: + +```bash +sudo rm -rf /usr/share/dotnet/sdk/1.0.1 +sudo rm -rf /usr/share/dotnet/shared/Microsoft.NETCore.App/1.0.1 +sudo rm -rf /usr/share/dotnet/shared/Microsoft.AspNetCore.App/1.0.1 +sudo rm -rf /usr/share/dotnet/host/fxr/1.0.1 +``` + +The parent directories for the SDK and runtime are listed in the output from the `dotnet --list-sdks` and `dotnet --list-runtimes` command, as shown in the earlier table. # [MacOS](#tab/MacOS) -On Mac, you must remove the SDKs and runtimes separately, by removing the directory that contains that version. For example, to remove the 1.0.4 SDK and runtime, you would use the following bash commands: +On Mac, you must remove the SDKs and runtimes separately, by removing the directory that contains that version. For example, to remove the 1.0.1 SDK and runtime, you would use the following bash commands: ```bash sudo rm -rf /usr/local/share/dotnet/sdk/1.0.1 sudo rm -rf /usr/local/share/dotnet/shared/Microsoft.NETCore.App/1.0.1 +sudo rm -rf /usr/local/share/dotnet/shared/Microsoft.AspNetCore.App/1.0.1 +sudo rm -rf /usr/local/share/dotnet/host/fxr/1.0.1 ``` -The directories are listed in the output from the `dotnet --list-sdks` and `dotnet --list-runtimes` command, as shown in the earlier table. - -*** +The parent directories for the SDK and runtime are listed in the output from the `dotnet --list-sdks` and `dotnet --list-runtimes` command, as shown in the earlier table. From 4cd46c25f65a885bffc77419d87dde5f74d1c11a Mon Sep 17 00:00:00 2001 From: Bill Wagner Date: Tue, 31 Jul 2018 15:15:14 -0400 Subject: [PATCH 10/17] respond to feedback on Linux uninstall --- .../versions/remove-runtime-sdk-versions.md | 62 +++++++++---------- 1 file changed, 31 insertions(+), 31 deletions(-) diff --git a/docs/core/versions/remove-runtime-sdk-versions.md b/docs/core/versions/remove-runtime-sdk-versions.md index ec6bb2f50b567..ca8338e5d1144 100644 --- a/docs/core/versions/remove-runtime-sdk-versions.md +++ b/docs/core/versions/remove-runtime-sdk-versions.md @@ -53,34 +53,34 @@ Microsoft.NETCore.App 2.1.2 [C:\Program Files\dotnet\shared\Microsoft.NETCore.Ap ```console $ dotnet --list-sdks -1.0.1 [/usr/local/share/dotnet/sdk] -1.0.4 [/usr/local/share/dotnet/sdk] -2.0.0-preview1-005977 [/usr/local/share/dotnet/sdk] -2.0.0-preview2-006497 [/usr/local/share/dotnet/sdk] -2.0.0 [/usr/local/share/dotnet/sdk] -2.1.4 [/usr/local/share/dotnet/sdk] -2.1.300-preview2-008530 [/usr/local/share/dotnet/sdk] -2.1.300 [/usr/local/share/dotnet/sdk] -2.1.301 [/usr/local/share/dotnet/sdk] +1.0.1 [/usr/share/dotnet/sdk] +1.0.4 [/usr/share/dotnet/sdk] +2.0.0-preview1-005977 [/usr/share/dotnet/sdk] +2.0.0-preview2-006497 [/usr/share/dotnet/sdk] +2.0.0 [/usr/share/dotnet/sdk] +2.1.4 [/usr/share/dotnet/sdk] +2.1.300-preview2-008530 [/usr/share/dotnet/sdk] +2.1.300 [/usr/share/dotnet/sdk] +2.1.301 [/usr/share/dotnet/sdk] $ dotnet --list-runtimes -Microsoft.AspNetCore.All 2.1.0-preview2-final [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All] -Microsoft.AspNetCore.All 2.1.0 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All] -Microsoft.AspNetCore.All 2.1.1 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.All] -Microsoft.AspNetCore.App 2.1.0-preview2-final [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App] -Microsoft.AspNetCore.App 2.1.0 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App] -Microsoft.AspNetCore.App 2.1.1 [/usr/local/share/dotnet/shared/Microsoft.AspNetCore.App] -Microsoft.NETCore.App 1.0.4 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] -Microsoft.NETCore.App 1.0.5 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] -Microsoft.NETCore.App 1.1.1 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] -Microsoft.NETCore.App 1.1.2 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] -Microsoft.NETCore.App 2.0.0-preview1-002111-00 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] -Microsoft.NETCore.App 2.0.0-preview2-25407-01 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] -Microsoft.NETCore.App 2.0.0 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] -Microsoft.NETCore.App 2.0.5 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] -Microsoft.NETCore.App 2.1.0-preview2-26406-04 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] -Microsoft.NETCore.App 2.1.0 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] -Microsoft.NETCore.App 2.1.1 [/usr/local/share/dotnet/shared/Microsoft.NETCore.App] +Microsoft.AspNetCore.All 2.1.0-preview2-final [/usr/share/dotnet/shared/Microsoft.AspNetCore.All] +Microsoft.AspNetCore.All 2.1.0 [/usr/share/dotnet/shared/Microsoft.AspNetCore.All] +Microsoft.AspNetCore.All 2.1.1 [/usr/share/dotnet/shared/Microsoft.AspNetCore.All] +Microsoft.AspNetCore.App 2.1.0-preview2-final [/usr/share/dotnet/shared/Microsoft.AspNetCore.App] +Microsoft.AspNetCore.App 2.1.0 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App] +Microsoft.AspNetCore.App 2.1.1 [/usr/share/dotnet/shared/Microsoft.AspNetCore.App] +Microsoft.NETCore.App 1.0.4 [/usr/share/dotnet/shared/Microsoft.NETCore.App] +Microsoft.NETCore.App 1.0.5 [/usr/share/dotnet/shared/Microsoft.NETCore.App] +Microsoft.NETCore.App 1.1.1 [/usr/share/dotnet/shared/Microsoft.NETCore.App] +Microsoft.NETCore.App 1.1.2 [/usr/share/dotnet/shared/Microsoft.NETCore.App] +Microsoft.NETCore.App 2.0.0-preview1-002111-00 [/usr/share/dotnet/shared/Microsoft.NETCore.App] +Microsoft.NETCore.App 2.0.0-preview2-25407-01 [/usr/share/dotnet/shared/Microsoft.NETCore.App] +Microsoft.NETCore.App 2.0.0 [/usr/share/dotnet/shared/Microsoft.NETCore.App] +Microsoft.NETCore.App 2.0.5 [/usr/share/dotnet/shared/Microsoft.NETCore.App] +Microsoft.NETCore.App 2.1.0-preview2-26406-04 [/usr/share/dotnet/shared/Microsoft.NETCore.App] +Microsoft.NETCore.App 2.1.0 [/usr/share/dotnet/shared/Microsoft.NETCore.App] +Microsoft.NETCore.App 2.1.1 [/usr/share/dotnet/shared/Microsoft.NETCore.App] ``` # [MacOS](#tab/MacOS) @@ -140,14 +140,14 @@ Starting with .NET Core 2.1, there is no need to uninstall the .NET Core SDK whe If you installed .NET Core using a package manager, you use that same package manager to uninstall .NET SDK or runtime. .NET Core installations support most popular package managers. Consult the documentation for your distribution's package manager for the precise syntax on your environment: -- [apt-get](https://wiki.debian.org/apt-get) is used by Debian based systems, including Ubuntu. -- [yum](http://yum.baseurl.org/wiki/YumCommands) is used on Fedora, SUSE Linux Enterprise System (SLES), CentOS, and Oracle Linux. -- [zypper](https://www.suse.com/documentation/opensuse114/book_opensuse_reference/data/sec_zypper.html) is used on openSUSE. -- [dnf](https://docs.fedoraproject.org/f27/system-administrators-guide/package-management/DNF.html) is used on Fedora. +- [apt-get(8)](https://linux.die.net/man/8/apt-get) is used by Debian based systems, including Ubuntu. +- [yum(8)](https://linux.die.net/man/8/yum) is used on Fedora, CentOS, and Oracle Linux. +- [zypper(8)](https://en.opensuse.org/SDB:Zypper_manual_(plain)) is used on openSUSE and SUSE Linux Enterprise System (SLES). +- [dnf(8)](https://dnf.readthedocs.io/latest/command_ref.html) is used on Fedora. In almost all cases, the command to remove a package is `remove`. -The package name for the .NET Core SDK installation for most package managers is `dotnet-sdk`, followed by the version number. For example, the .NET Core SDK version 2.1 is the package `dotnet-sdk-2.1`. +The package name for the .NET Core SDK installation for most package managers is `dotnet-sdk`, followed by the version number. Starting with the version 2.1.300 of the .NET Core SDK and version `2.1` of the runtime, only the major and minor version numbers are necessary: for example, the .NET Core SDK version 2.1.300 can be referenced as the package `dotnet-sdk-2.1`. Prior versions require the entire version string: for example, `dotnet-sdk-21.200` would be required for version 2.1.200 of the .NET Core SDK. For machines that have installed only the runtime, and not the SDK, the package name is `dotnet-runtime-` for the .NET Core runtime, and `aspnetcore-runtime-` for the entire runtime stack. From cf480684fb4d10ea9fc038f262ff4c576e9d8150 Mon Sep 17 00:00:00 2001 From: Bill Wagner Date: Tue, 31 Jul 2018 21:38:15 -0400 Subject: [PATCH 11/17] respond to content feedback. --- docs/core/versions/remove-runtime-sdk-versions.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/core/versions/remove-runtime-sdk-versions.md b/docs/core/versions/remove-runtime-sdk-versions.md index ca8338e5d1144..9e2a6372205e2 100644 --- a/docs/core/versions/remove-runtime-sdk-versions.md +++ b/docs/core/versions/remove-runtime-sdk-versions.md @@ -1,6 +1,6 @@ --- title: How to remove .NET runtime and SDK -description: Instructions for removing the .NET Core Runtime and SDK components on Windows, Mac, and Linx +description: Instructions for removing the .NET Core Runtime and SDK components on Windows, Mac, and Linux ms.date: 07/28/2018 author: billwagner ms.author: wiwagn @@ -9,7 +9,7 @@ ms.author: wiwagn Over time, as you install updated versions of the .NET Core runtime and SDK, you may want to remove outdated versions of .NET Core. Removing older versions of the runtime may change the runtime chosen to run shared framework applications, as detailed in the article on [.NET Core version selection](selection.md). -The .NET CLI has options you can use to list the versions of the SDK and runtime that are installed on your machine. Use [`dotnet --list-sdks`](../tools/dotnet.md#options) to see the list of SDKs installed on your machine. Use [`dotnet --list-runtimes`](../tools/dotnet.md#options) to see the list of runtimes installed on your machine. The following text shows typical output for Windows or unix: +The .NET CLI has options you can use to list the versions of the SDK and runtime that are installed on your machine. Use [`dotnet --list-sdks`](../tools/dotnet.md#options) to see the list of SDKs installed on your machine. Use [`dotnet --list-runtimes`](../tools/dotnet.md#options) to see the list of runtimes installed on your machine. The following text shows typical output for Windows, MacOS, or Linix: # [Windows](#tab/Windows) @@ -147,7 +147,7 @@ If you installed .NET Core using a package manager, you use that same package ma In almost all cases, the command to remove a package is `remove`. -The package name for the .NET Core SDK installation for most package managers is `dotnet-sdk`, followed by the version number. Starting with the version 2.1.300 of the .NET Core SDK and version `2.1` of the runtime, only the major and minor version numbers are necessary: for example, the .NET Core SDK version 2.1.300 can be referenced as the package `dotnet-sdk-2.1`. Prior versions require the entire version string: for example, `dotnet-sdk-21.200` would be required for version 2.1.200 of the .NET Core SDK. +The package name for the .NET Core SDK installation for most package managers is `dotnet-sdk`, followed by the version number. Starting with the version 2.1.300 of the .NET Core SDK and version `2.1` of the runtime, only the major and minor version numbers are necessary: for example, the .NET Core SDK version 2.1.300 can be referenced as the package `dotnet-sdk-2.1`. Prior versions require the entire version string: for example, `dotnet-sdk-2.1.200` would be required for version 2.1.200 of the .NET Core SDK. For machines that have installed only the runtime, and not the SDK, the package name is `dotnet-runtime-` for the .NET Core runtime, and `aspnetcore-runtime-` for the entire runtime stack. From f559e35413319b53c67b6d6ab0451a8509ad91cb Mon Sep 17 00:00:00 2001 From: Bill Wagner Date: Wed, 1 Aug 2018 10:10:40 -0400 Subject: [PATCH 12/17] typo --- docs/core/versions/remove-runtime-sdk-versions.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/core/versions/remove-runtime-sdk-versions.md b/docs/core/versions/remove-runtime-sdk-versions.md index 9e2a6372205e2..f490565793eb8 100644 --- a/docs/core/versions/remove-runtime-sdk-versions.md +++ b/docs/core/versions/remove-runtime-sdk-versions.md @@ -9,7 +9,7 @@ ms.author: wiwagn Over time, as you install updated versions of the .NET Core runtime and SDK, you may want to remove outdated versions of .NET Core. Removing older versions of the runtime may change the runtime chosen to run shared framework applications, as detailed in the article on [.NET Core version selection](selection.md). -The .NET CLI has options you can use to list the versions of the SDK and runtime that are installed on your machine. Use [`dotnet --list-sdks`](../tools/dotnet.md#options) to see the list of SDKs installed on your machine. Use [`dotnet --list-runtimes`](../tools/dotnet.md#options) to see the list of runtimes installed on your machine. The following text shows typical output for Windows, MacOS, or Linix: +The .NET CLI has options you can use to list the versions of the SDK and runtime that are installed on your machine. Use [`dotnet --list-sdks`](../tools/dotnet.md#options) to see the list of SDKs installed on your machine. Use [`dotnet --list-runtimes`](../tools/dotnet.md#options) to see the list of runtimes installed on your machine. The following text shows typical output for Windows, MacOS, or Linux: # [Windows](#tab/Windows) From fadb4ce02390c7f0377d94e92328e3b89adfdf6d Mon Sep 17 00:00:00 2001 From: Bill Wagner Date: Wed, 1 Aug 2018 10:56:51 -0400 Subject: [PATCH 13/17] branding: macOS is the official capitalization --- docs/core/versions/remove-runtime-sdk-versions.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/core/versions/remove-runtime-sdk-versions.md b/docs/core/versions/remove-runtime-sdk-versions.md index f490565793eb8..6d240a8803872 100644 --- a/docs/core/versions/remove-runtime-sdk-versions.md +++ b/docs/core/versions/remove-runtime-sdk-versions.md @@ -9,7 +9,7 @@ ms.author: wiwagn Over time, as you install updated versions of the .NET Core runtime and SDK, you may want to remove outdated versions of .NET Core. Removing older versions of the runtime may change the runtime chosen to run shared framework applications, as detailed in the article on [.NET Core version selection](selection.md). -The .NET CLI has options you can use to list the versions of the SDK and runtime that are installed on your machine. Use [`dotnet --list-sdks`](../tools/dotnet.md#options) to see the list of SDKs installed on your machine. Use [`dotnet --list-runtimes`](../tools/dotnet.md#options) to see the list of runtimes installed on your machine. The following text shows typical output for Windows, MacOS, or Linux: +The .NET CLI has options you can use to list the versions of the SDK and runtime that are installed on your machine. Use [`dotnet --list-sdks`](../tools/dotnet.md#options) to see the list of SDKs installed on your machine. Use [`dotnet --list-runtimes`](../tools/dotnet.md#options) to see the list of runtimes installed on your machine. The following text shows typical output for Windows, macOS, or Linux: # [Windows](#tab/Windows) @@ -83,7 +83,7 @@ Microsoft.NETCore.App 2.1.0 [/usr/share/dotnet/shared/Microsoft.NETCore.App] Microsoft.NETCore.App 2.1.1 [/usr/share/dotnet/shared/Microsoft.NETCore.App] ``` -# [MacOS](#tab/MacOS) +# [macOS](#tab/macOS) ```console $ dotnet --list-sdks @@ -172,7 +172,7 @@ sudo rm -rf /usr/share/dotnet/host/fxr/1.0.1 The parent directories for the SDK and runtime are listed in the output from the `dotnet --list-sdks` and `dotnet --list-runtimes` command, as shown in the earlier table. -# [MacOS](#tab/MacOS) +# [macOS](#tab/macOS) On Mac, you must remove the SDKs and runtimes separately, by removing the directory that contains that version. For example, to remove the 1.0.1 SDK and runtime, you would use the following bash commands: From 6b44203215c12022afae1f2584f26499db833f8a Mon Sep 17 00:00:00 2001 From: Bill Wagner Date: Wed, 1 Aug 2018 10:59:38 -0400 Subject: [PATCH 14/17] final proofread --- docs/core/versions/remove-runtime-sdk-versions.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/core/versions/remove-runtime-sdk-versions.md b/docs/core/versions/remove-runtime-sdk-versions.md index 6d240a8803872..fcf7f031f71bf 100644 --- a/docs/core/versions/remove-runtime-sdk-versions.md +++ b/docs/core/versions/remove-runtime-sdk-versions.md @@ -136,7 +136,7 @@ There are more options to uninstall .NET Core (either SDK or runtime) on Linux. > [!IMPORTANT] > For Red Hat installations, consult the [Red Hat Getting Started Guide](https://access.redhat.com/documentation/en-us/net_core/2.0/html/getting_started_guide/gs_install_dotnet#install_register_rehel) for information on installing and uninstalling .NET Core. -Starting with .NET Core 2.1, there is no need to uninstall the .NET Core SDK when upgrading it using a package manager. The package manager installations will automatically remove the older version upon the successful installation of a newer version. +Starting with .NET Core 2.1, there is no need to uninstall the .NET Core SDK when upgrading it using a package manager. The package manager `update` or `refresh` commands will automatically remove the older version upon the successful installation of a newer version. If you installed .NET Core using a package manager, you use that same package manager to uninstall .NET SDK or runtime. .NET Core installations support most popular package managers. Consult the documentation for your distribution's package manager for the precise syntax on your environment: @@ -184,3 +184,5 @@ sudo rm -rf /usr/local/share/dotnet/host/fxr/1.0.1 ``` The parent directories for the SDK and runtime are listed in the output from the `dotnet --list-sdks` and `dotnet --list-runtimes` command, as shown in the earlier table. + +Starting with .NET Core 2.1, there is no need to uninstall the .NET Core SDK when upgrading it using a package manager. The package manager `update` or `refresh` commands will automatically remove the older version upon the successful installation of a newer version. From ebb824a8e8982d9d363b820669f5e27d59ed70dc Mon Sep 17 00:00:00 2001 From: Bill Wagner Date: Fri, 3 Aug 2018 11:08:37 -0400 Subject: [PATCH 15/17] Final updates There are three updates in this commit: 1. Remove the metapackages.md file. It should have been removed earlier. 2. Remove the version history table, and link to the .NET Core downloads page. This page has been updated to include all the relevant information, and is updated with each release. Also, add a link to the archive page for information on older releases. 3. Update the net-standard-table to use Framework 4.7.2 for .NET Standard, and link to the download page for .NET Core 2.0 tooling for Visual Studio 2015. --- docs/core/tutorials/metapackages.md | 14 ---------- docs/core/versions/version-history.md | 38 +-------------------------- includes/net-standard-table.md | 4 +-- 3 files changed, 3 insertions(+), 53 deletions(-) delete mode 100644 docs/core/tutorials/metapackages.md diff --git a/docs/core/tutorials/metapackages.md b/docs/core/tutorials/metapackages.md deleted file mode 100644 index 5bd04fd3a1270..0000000000000 --- a/docs/core/tutorials/metapackages.md +++ /dev/null @@ -1,14 +0,0 @@ - -### Shipping a patch release - -After shipping a major or minor release of .NET Core, such as version 2.0.0, patch-level changes are made to .NET Core libraries to fix bugs and improve performance and reliability. That means that no new APIs are introduced. The various metapackages are updated to reference the updated .NET Core library packages. The metapackages are versioned as patch updates (`MAJOR.MINOR.PATCH`). Target frameworks are never updated as part of patch releases. A new .NET Core distribution is released with a version number that matches that of the `Microsoft.NETCore.App` metapackage. - -### Shipping a minor release - -After shipping a .NET Core version with an incremented `MAJOR` version number, new APIs are added to .NET Core libraries to enable new scenarios. The various metapackages are updated to reference the updated .NET Core library packages. The metapackages are versioned as patch updates with `MAJOR` and `MINOR` version numbers matching the new framework version. New target framework names with the new `MAJOR.MINOR` version are added to describe the new APIs (for example, `netcoreapp2.1`). A new .NET Core distribution is released with a matching version number to the `Microsoft.NETCore.App` metapackage. - -### Shipping a major release - -Every time a new major version of .NET Core ships, the `MAJOR` version number gets incremented, and the `MINOR` version number gets reset to zero. The new major version contains at least all the APIs that were added by minor releases after the previous major version. A new major version should enable important new scenarios, and it may also drop support for an older platform. - -The various metapackages are updated to reference the updated .NET Core library packages. The [`Microsoft.NETCore.App`](https://www.nuget.org/packages/Microsoft.NETCore.App) metapackage and the `netcore` target framework are versioned as a major update matching the `MAJOR` version number of the new release. diff --git a/docs/core/versions/version-history.md b/docs/core/versions/version-history.md index 9484e91e93ef6..57a5fff919c1a 100644 --- a/docs/core/versions/version-history.md +++ b/docs/core/versions/version-history.md @@ -18,40 +18,4 @@ Because of the timing of the decision to abandon semantic versioning, there were The first two digits of the version numbers realign with the 2.1.0 version of the .NET Core Runtime and the 2.1.300 version of the .NET Core SDK. -Evaluating [releases.json](https://github.com/dotnet/core/blob/master/release-notes/releases.json) yields the following. - - -| Date | .NET Core SDK(4) | .NET Core Runtimes | C# Version | VB Version | F# Version | Notes | -|------------|------------------|--------------------|-------------|-------------|------------|-------| -| 2017-03-07 | 1.0.1 | 1.0.4,1.1.1 | 7.0 | 15.0 | 4.1 | | -| 2017-05-09 | 1.0.4 | 1.0.5, 1.1.2 | 7.0 | 15.0 | 4.1 | | -| 2017-09-21 | 1.1.4 | 1.0.7, 1.1.4 | 7.0 | 15.0 | 4.1 | | -| 2017-11-14 | 1.1.7 | 1.0.8, 1.1.5 | 7.0 | 15.0 | 4.1 | | -| 2017-11-14 | 1.1.7 | 1.0.9, 1.1.6 | 7.0 | 15.0 | 4.1 | | -| 2018-03-13 | 1.1.8 | 1.0.10, 1.1.7 | 7.0 | 15.0 | 4.1 | | -| 2018-04-17 | 1.1.9 | 1.0.11, 1.1.8 | 7.0 | 15.0 | 4.1 | | -| 2017-08-14 | 2.0.0 | 2.0.0 | 7.1 | 15.3 | 4.1 | | -| 2017-11-14 | 2.0.3 | 2.0.3 | 7.1 | 15.3 | 4.1 | | -| 2017-12-04 | 2.1.2 | 2.0.3 | 7.1 | 15.3 | 4.1 | (1) | -| 2018-01-09 | 2.1.4 | 2.0.5 | 7.1 | 15.3 | 4.1 | (1) | -| 2018-03-13 | 2.1.100 | 2.0.5 | 7.2 | 15.5 | 4.1 | (1,2) | -| 2018-03-13 | 2.1.101 | 2.0.6 | 7.2 | 15.5 | 4.1 | (1,2) | -| 2018-03-19 | 2.1.102 | 2.0.6 | 7.2 | 15.5 | 4.1 | (1,2) | -| 2018-03-22 | 2.1.103 | 2.0.6 | 7.2 | 15.5 | 4.1 | (1,2) | -| 2018-04-04 | 2.1.104 | 2.0.6 | 7.2 | 15.5 | 4.1 | (1,2) | -| 2018-04-27 | 2.1.105 | 2.0.7 | 7.2 | 15.5 | 4.1 | (1,2) | -| 2018-05-08 | 2.1.200 | 2.0.8 | 7.2 | 15.5 | 4.1 | (1,2) | -| 2018-05-21 | 2.1.201 | 2.0.8 | 7.2 | 15.5 | 4.1 | (1,2) | -| 2018-05-30 | 2.1.300 | 2.1.0 | 7.3 | 15.5 | 4.1 | (3) | -| 2018-06-10 | 2.1.301 | 2.1.1 | 7.3 | 15.5 | 4.1 | (3) | -| 2018-06-10 | 2.1.302 | 2.1.2 | 7.3 | 15.5 | 4.1 | (3) | - -(1) These versions of .NET Core SDK 2.1.x cannot build apps targeting .NET Core Runtime 2.1.x. -(2) The new version number scheme was decided at the start of 2018. However, there were two feature level releases before .NET Core Runtime 2.10 released. Thus, 2.1.10x and 2.20x represent a transition period. -(3) The .NET Core 2.1 release represents unification of version numbers on the new scheme. -(4) A nightly build of the .NET Core SDK appeared with the version number starting with 15. This build must be manually removed from the machine. - -> [!NOTE] -> Visual Basic language versions typically match the version of Visual Studio when that language version first shipped. - -Detailed support information can be found in the article describing the official [.NET Support Policy](https://www.microsoft.com/net/Support/Policy). \ No newline at end of file +Detailed information about the versions of individual components, including framework and language compiler versions, can be found on the [.NET Core downloads page](https://www.microsoft.com/net/download/dotnet-core/current). For detailed information about previous versions, select the requested version from the [.NET Core download archives page](https://www.microsoft.com/net/download/archives). Detailed support information can be found in the article describing the official [.NET Support Policy](https://www.microsoft.com/net/Support/Policy). \ No newline at end of file diff --git a/includes/net-standard-table.md b/includes/net-standard-table.md index f147ba5ece439..8a2038ccf71f3 100644 --- a/includes/net-standard-table.md +++ b/includes/net-standard-table.md @@ -1,7 +1,7 @@ | .NET Standard | [1.0] | [1.1] | [1.2] | [1.3] | [1.4] | [1.5] | [1.6] | [2.0] | |----------------------------|-------|--------|-------|-------|-------|------------|------------|------------| | .NET Core | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 2.0 | -| .NET Framework 1| 4.5 | 4.5 | 4.5.1 | 4.6 | 4.6.1 | 4.6.1 | 4.6.1 | 4.6.1 | +| .NET Framework 1| 4.5 | 4.5 | 4.5.1 | 4.6 | 4.6.1 | 4.6.1 | 4.6.1 | 4.7.2 | | Mono | 4.6 | 4.6 | 4.6 | 4.6 | 4.6 | 4.6 | 4.6 | 5.4 | | Xamarin.iOS | 10.0 | 10.0 | 10.0 | 10.0 | 10.0 | 10.0 | 10.0 | 10.14 | | Xamarin.Mac | 3.0 | 3.0 | 3.0 | 3.0 | 3.0 | 3.0 | 3.0 | 3.8 | @@ -11,7 +11,7 @@ | Windows Phone | 8.1 | 8.1 | 8.1 | | | | | | | Windows Phone Silverlight | 8.0 | | | | | | | | -1 The versions listed for .NET Framework apply to .NET Core SDK 2.0 and later versions of the tooling. Older versions used a different mapping for .NET Standard 1.5 and higher. +1 The versions listed for .NET Framework apply to .NET Core SDK 2.0 and later versions of the tooling. Older versions used a different mapping for .NET Standard 1.5 and higher. You can [download tooling for .NET Core tools for Visual Studio 2015](https://github.com/dotnet/core/blob/master/release-notes/download-archive.md) if you cannot upgrade to Visual Studio 2017. - The columns represent .NET Standard versions. Each header cell is a link to a document that shows which APIs got added in that version of .NET Standard. - The rows represent the different .NET implementations. From fb86771b818fdc13f3a2646abf6e9a24156fd9e8 Mon Sep 17 00:00:00 2001 From: Bill Wagner Date: Sat, 4 Aug 2018 14:17:45 -0400 Subject: [PATCH 16/17] respond to feedback --- docs/core/versions/index.md | 18 +++++++++--------- .../versions/remove-runtime-sdk-versions.md | 10 ++++++---- docs/core/versions/version-history.md | 2 +- docs/toc.md | 4 ++-- 4 files changed, 18 insertions(+), 16 deletions(-) diff --git a/docs/core/versions/index.md b/docs/core/versions/index.md index 1f36cd8d5c431..cc74205f0099b 100644 --- a/docs/core/versions/index.md +++ b/docs/core/versions/index.md @@ -7,7 +7,7 @@ ms.date: 07/26/2018 --- # .NET Core versioning -.NET Core refers to the .NET Core Runtime and the .NET Core SDK that contains the tools you need to develop applications. .NET Core SDKs are designed to work with any previous version of the .NET Core Runtime. This article explains the runtime and the SDK version strategy. An explanation of version numbers for .NET Standard can be found in the article introducing [.NET Standard](../../standard/net-standard.md#net-implementation-support). +.NET Core refers to the .NET Core Runtime and the .NET Core SDK, which contains the tools you need to develop applications. .NET Core SDKs are designed to work with any previous version of the .NET Core Runtime. This article explains the runtime and the SDK version strategy. An explanation of version numbers for .NET Standard can be found in the article introducing [.NET Standard](../../standard/net-standard.md#net-implementation-support). The .NET Core Runtime and .NET Core SDK add new features at a different rate - in general the .NET Core SDK provides updated tools more quickly than the .NET Core Runtime changes the runtime you use in production. Unfortunately, this problem has resulted in several versioning strategies over the last few years. You can learn about the history in the article on [.NET Core versioning](version-history.md). @@ -15,9 +15,9 @@ The .NET Core Runtime and .NET Core SDK add new features at a different rate - i ".NET Core 2.1" refers to the .NET Core Runtime version number. The .NET Core Runtime has a major/minor/patch approach to versioning that follows [semantic versioning](#semantic-versioning). -The .NET Core SDK does not follow semantic versioning. The .NET Core SDK releases faster and its versions, must communicate both the aligned runtime and the SDK's own minor and patch releases. The first two positions of the .NET Core SDK version are locked to the .NET Core Runtime it released with. Each version of the SDK can create applications for this runtime or any lower version. +The .NET Core SDK doesn't follow semantic versioning. The .NET Core SDK releases faster and its versions must communicate both the aligned runtime and the SDK's own minor and patch releases. The first two positions of the .NET Core SDK version are locked to the .NET Core Runtime it released with. Each version of the SDK can create applications for this runtime or any lower version. -The third position of the SDK version number communicates both the minor and patch number. The minor version is multiplied by 100 (starting at 100). The final two digits represent the patch number. For example, the release of .NET Core 2.2 may create releases like the following table: +The third position of the SDK version number communicates both the minor and patch number. The minor version is multiplied by 100. Minor version 1, patch version 2 would be represented as 102. The final two digits represent the patch number. For example, the release of .NET Core 2.2 may create releases like the following table: | Change | .NET Core Runtime | .NET Core SDK (*) | |-----------------------|-------------------|-------------------| @@ -26,12 +26,12 @@ The third position of the SDK version number communicates both the minor and pat | Runtime and SDK Patch | 2.2.1 | 2.2.102 | | SDK Feature change | 2.2.1 | 2.2.200 | -(*) This chart uses a future 2.2 .NET Core Runtime as the example because a historic artifact meant the first SDK for .NET Core 2.1 is 2.1.300. For more information, See the [history of .NET Core versioning](version-history.md). +(\*) This chart uses a future 2.2 .NET Core Runtime as the example because a historic artifact meant the first SDK for .NET Core 2.1 is 2.1.300. For more information, See the [history of .NET Core versioning](version-history.md). NOTES: -* If the SDK has 10 feature updates before a runtime feature update, version numbers roll into the 1000 series with numbers like 2.2.1000 as the feature release following 2.2.900. This situation is not expected to occur. -* 99 patch releases without a feature release will not occur. If a release approaches this number, it forces a feature release. +* If the SDK has 10 feature updates before a runtime feature update, version numbers roll into the 1000 series with numbers like 2.2.1000 as the feature release following 2.2.900. This situation isn't expected to occur. +* 99 patch releases without a feature release won't occur. If a release approaches this number, it forces a feature release. You can see more details in the initial proposal at the [dotnet/designs](https://github.com/dotnet/designs/pull/29) repository. @@ -50,7 +50,7 @@ The optional `PRERELEASE` and `BUILDNUMBER` parts are never part of supported re `MAJOR` is incremented when: * Significant changes occur to the product, or a new product direction. -* Breaking changes were taken. There is a high bar to accepting breaking changes. +* Breaking changes were taken. There's a high bar to accepting breaking changes. * An old version is no longer supported. * A newer `MAJOR` version of an existing dependency is adopted. @@ -84,9 +84,9 @@ After a release goes out, the release branches generally stop producing daily bu ## Relationship to .NET Standard versions -.NET Standard consists of a .net reference assembly. There are multiple implementations specific to each platform. The reference assembly contains the definition of .NET Standard. Each implementation fulfills the .NET Standard contract on the specific platform. .NET Standard usually refers to the reference library. +.NET Standard consists of a .NET reference assembly. There are multiple implementations specific to each platform. The reference assembly contains the definition of .NET all the versions of .NET Standard. Each implementation fulfills the .NET Standard contract on the specific platform. .NET Standard usually refers to the reference library. You can learn more about .NET Standard in the article on [.NET Standard](../../standard/net-standard.md) in the .NET Guide. -The .NET Standard reference implementation uses a `MAJOR.MINOR` versioning scheme. `PATCH` level isn't useful for .NET Standard because if exposes only an API (no implementation) and by definition any change to the API would represent a change in the feature set, and thus a new minor version. +The .NET Standard reference implementation uses a `MAJOR.MINOR` versioning scheme. `PATCH` level isn't useful for .NET Standard because if exposes only an API (no implementation) and by definition any change to the API would represent a change in the feature set, and thus a new `MINOR` version. The implementations on each runtime may be updated, typically as part of the runtime release, and thus not evident to the programmers using .NET Standard on that platform. diff --git a/docs/core/versions/remove-runtime-sdk-versions.md b/docs/core/versions/remove-runtime-sdk-versions.md index fcf7f031f71bf..cda56bd8a284f 100644 --- a/docs/core/versions/remove-runtime-sdk-versions.md +++ b/docs/core/versions/remove-runtime-sdk-versions.md @@ -7,9 +7,9 @@ ms.author: wiwagn --- # How to remove the .NET Core Runtime and SDK -Over time, as you install updated versions of the .NET Core runtime and SDK, you may want to remove outdated versions of .NET Core. Removing older versions of the runtime may change the runtime chosen to run shared framework applications, as detailed in the article on [.NET Core version selection](selection.md). +Over time, as you install updated versions of the .NET Core runtime and SDK, you may want to remove outdated versions of .NET Core from your machine. Removing older versions of the runtime may change the runtime chosen to run shared framework applications, as detailed in the article on [.NET Core version selection](selection.md). -The .NET CLI has options you can use to list the versions of the SDK and runtime that are installed on your machine. Use [`dotnet --list-sdks`](../tools/dotnet.md#options) to see the list of SDKs installed on your machine. Use [`dotnet --list-runtimes`](../tools/dotnet.md#options) to see the list of runtimes installed on your machine. The following text shows typical output for Windows, macOS, or Linux: +Starting with .NET Core 2.1, the .NET CLI has options you can use to list the versions of the SDK and runtime that are installed on your machine. Use [`dotnet --list-sdks`](../tools/dotnet.md#options) to see the list of SDKs installed on your machine. Use [`dotnet --list-runtimes`](../tools/dotnet.md#options) to see the list of runtimes installed on your machine. The following text shows typical output for Windows, macOS, or Linux: # [Windows](#tab/Windows) @@ -157,9 +157,9 @@ For machines that have installed only the runtime, and not the SDK, the package apt-get remove dotnet-host ``` -Note that there is no version attached to `dotnet-host` +Note that there is no version attached to `dotnet-host`. -If you installed using a tarball, you must remove .NET Core using the manual method: +If you installed using a tarball, you must remove .NET Core using the manual method. You remove the SDKs and runtimes separately, by removing the directory that contains that version. For example, to remove the 1.0.1 SDK and runtime, you would use the following bash commands: @@ -186,3 +186,5 @@ sudo rm -rf /usr/local/share/dotnet/host/fxr/1.0.1 The parent directories for the SDK and runtime are listed in the output from the `dotnet --list-sdks` and `dotnet --list-runtimes` command, as shown in the earlier table. Starting with .NET Core 2.1, there is no need to uninstall the .NET Core SDK when upgrading it using a package manager. The package manager `update` or `refresh` commands will automatically remove the older version upon the successful installation of a newer version. + +--- diff --git a/docs/core/versions/version-history.md b/docs/core/versions/version-history.md index 57a5fff919c1a..7c2c8a110d705 100644 --- a/docs/core/versions/version-history.md +++ b/docs/core/versions/version-history.md @@ -6,7 +6,7 @@ ms.date: 07/26/2018 # NET Core version history -Version numbers for .NET Core are challenging because .NET Core SDK and .NET Core Runtime release on different cadences. The different cadences means a choice to do only two of the following three things: +Version numbers for .NET Core are challenging because .NET Core SDK and .NET Core Runtime release on different cadences. The different cadences mean the team was forced to do only two of the following three things: 1. Release independently, specifically allowing tools, C# and VB to advance faster than the .NET Core Runtime. 2. Maintain alignment in version numbers between .NET Core SDK and .NET Core Runtime. diff --git a/docs/toc.md b/docs/toc.md index 73d2bab6fb147..b16f80483eebb 100644 --- a/docs/toc.md +++ b/docs/toc.md @@ -121,9 +121,9 @@ ### [Unit Testing Published Output](core/testing/unit-testing-published-output.md) ### [Live unit testing .NET Core projects with Visual Studio](/visualstudio/test/live-unit-testing-start) ## [Versioning](core/versions/index.md) -### [.NET Core Version History](core/versions/version-history.md) +### [.NET Core version history](core/versions/version-history.md) ### [.NET Core version selection](core/versions/selection.md) -### [Removing outdated Runtimes and SDKs](core/versions/remove-runtime-sdk-versions.md) +### [Removing outdated runtimes and SDKs](core/versions/remove-runtime-sdk-versions.md) ## [Runtime IDentifier catalog](core/rid-catalog.md) ## [.NET Core SDK Overview](core/sdk.md) ## [.NET Core CLI Tools](core/tools/index.md) From 5fbfc14e5760dd8e9a00293be5da28f4a9450aab Mon Sep 17 00:00:00 2001 From: Bill Wagner Date: Tue, 7 Aug 2018 09:14:26 -0400 Subject: [PATCH 17/17] revert framework cell for .NET standard 2.0 --- includes/net-standard-table.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/includes/net-standard-table.md b/includes/net-standard-table.md index 8a2038ccf71f3..d05316daad6b8 100644 --- a/includes/net-standard-table.md +++ b/includes/net-standard-table.md @@ -1,7 +1,7 @@ | .NET Standard | [1.0] | [1.1] | [1.2] | [1.3] | [1.4] | [1.5] | [1.6] | [2.0] | |----------------------------|-------|--------|-------|-------|-------|------------|------------|------------| | .NET Core | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 1.0 | 2.0 | -| .NET Framework 1| 4.5 | 4.5 | 4.5.1 | 4.6 | 4.6.1 | 4.6.1 | 4.6.1 | 4.7.2 | +| .NET Framework 1| 4.5 | 4.5 | 4.5.1 | 4.6 | 4.6.1 | 4.6.1 | 4.6.1 | 4.6.1 | | Mono | 4.6 | 4.6 | 4.6 | 4.6 | 4.6 | 4.6 | 4.6 | 5.4 | | Xamarin.iOS | 10.0 | 10.0 | 10.0 | 10.0 | 10.0 | 10.0 | 10.0 | 10.14 | | Xamarin.Mac | 3.0 | 3.0 | 3.0 | 3.0 | 3.0 | 3.0 | 3.0 | 3.8 |