1
0
mirror of https://github.com/Sonarr/Sonarr.git synced 2024-12-02 09:11:54 +02:00

Log page now uses EF for faster runtime queries.

This commit is contained in:
kay.one 2011-11-22 21:58:26 -08:00
parent a984060533
commit c6716f2425
49 changed files with 14898 additions and 555 deletions

View File

@ -4,13 +4,4 @@
<!-- Supported values: nunit, xunit and mstest -->
<add key="FluentAssertions.TestFramework" value="nunit"/>
</appSettings>
<system.data>
<DbProviderFactories>
<remove invariant="System.Data.SQLite" />
<add name="Microsoft SQL Server Compact Data Provider 4.0"
invariant="System.Data.SqlServerCe.4.0"
description=".NET Framework Data Provider for Microsoft SQL Server Compact"
type="System.Data.SqlServerCe.SqlCeProviderFactory, System.Data.SqlServerCe, Version=4.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" />
</DbProviderFactories>
</system.data>
</configuration>

View File

@ -1,11 +1,9 @@
using System;
// ReSharper disable InconsistentNaming
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using FluentAssertions;
using NLog;
using NUnit.Framework;
using NzbDrone.Common;
using NzbDrone.Core.Providers;
using NzbDrone.Core.Providers.Indexer;
using NzbDrone.Core.Providers.Jobs;
@ -15,7 +13,6 @@
namespace NzbDrone.Core.Test
{
[TestFixture]
// ReSharper disable InconsistentNaming
class CentralDispatchFixture : CoreTest
{
readonly IList<Type> indexers = typeof(CentralDispatch).Assembly.GetTypes().Where(t => t.IsSubclassOf(typeof(IndexerBase))).ToList();

View File

@ -32,7 +32,7 @@ static CoreTest()
Directory.Delete(appData, true);
}
MockLib.CreateDataBaseTemplate();
TestDbHelper.CreateDataBaseTemplate();
}
protected StandardKernel LiveKernel = null;
@ -57,7 +57,7 @@ protected override void WithStrictMocker()
protected void WithRealDb()
{
Db = MockLib.GetEmptyDatabase();
Db = TestDbHelper.GetEmptyDatabase();
Mocker.SetConstant(Db);
}

View File

@ -1,25 +0,0 @@
using System.IO;
// ReSharper disable CheckNamespace
using NUnit.Framework;
using NzbDrone.Core.Test.Framework;
using NzbDrone.Test.Common;
//[SetUpFixture]
//public class Fixtures : LoggingFixtures
//{
// //[SetUp]
// //public void SetUp()
// //{
// // var oldDbFiles = Directory.GetFiles(Directory.GetCurrentDirectory(), "*.sdf", SearchOption.AllDirectories);
// // foreach (var file in oldDbFiles)
// // {
// // try
// // {
// // File.Delete(file);
// // }
// // catch { }
// // }
// // MockLib.CreateDataBaseTemplate();
// //}
//}

View File

@ -12,9 +12,11 @@
namespace NzbDrone.Core.Test.Framework
{
internal static class MockLib
internal static class TestDbHelper
{
private const string DbTemplateName = "_dbtemplate.sdf";
private const string DB_TEMPLATE_NAME = "_dbtemplate.sdf";
public static string ConnectionString { get; private set; }
public static IDatabase GetEmptyDatabase(bool enableLogging = false, string fileName = "")
{
@ -26,11 +28,11 @@ public static IDatabase GetEmptyDatabase(bool enableLogging = false, string file
fileName = Guid.NewGuid() + ".sdf";
}
File.Copy(DbTemplateName, fileName);
File.Copy(DB_TEMPLATE_NAME, fileName);
var connectionString = Connection.GetConnectionString(fileName);
ConnectionString = Connection.GetConnectionString(fileName);
var database = Connection.GetPetaPocoDb(connectionString);
var database = Connection.GetPetaPocoDb(ConnectionString);
Console.WriteLine("====================DataBase====================");
Console.WriteLine();
@ -42,7 +44,7 @@ public static IDatabase GetEmptyDatabase(bool enableLogging = false, string file
public static void CreateDataBaseTemplate()
{
Console.WriteLine("Creating an empty PetaPoco database");
var connectionString = Connection.GetConnectionString(DbTemplateName);
var connectionString = Connection.GetConnectionString(DB_TEMPLATE_NAME);
var database = Connection.GetPetaPocoDb(connectionString);
database.Dispose();
}

View File

@ -36,6 +36,9 @@
<Reference Include="Accessibility">
<EmbedInteropTypes>True</EmbedInteropTypes>
</Reference>
<Reference Include="EntityFramework, Version=4.2.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL">
<HintPath>..\packages\EntityFramework.4.2.0.0\lib\net40\EntityFramework.dll</HintPath>
</Reference>
<Reference Include="FizzWare.NBuilder, Version=3.0.1.0, Culture=neutral, PublicKeyToken=5651b03e12e42c12, processorArchitecture=MSIL">
<HintPath>..\packages\NBuilder.3.0.1.1\lib\FizzWare.NBuilder.dll</HintPath>
</Reference>
@ -66,19 +69,29 @@
<HintPath>..\packages\Prowlin 0.9.4163.39219\Prowlin.dll</HintPath>
</Reference>
<Reference Include="System" />
<Reference Include="System.ComponentModel.DataAnnotations" />
<Reference Include="System.Configuration" />
<Reference Include="System.Data" />
<Reference Include="System.Data.Entity" />
<Reference Include="System.Data.SqlServerCe, Version=4.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL">
<Private>True</Private>
<HintPath>..\packages\SqlServerCompact.4.0.8482.1\lib\System.Data.SqlServerCe.dll</HintPath>
</Reference>
<Reference Include="System.Data.SqlServerCe.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\packages\EntityFramework.SqlServerCompact.4.1.8482.2\lib\System.Data.SqlServerCe.Entity.dll</HintPath>
</Reference>
<Reference Include="System.Drawing" />
<Reference Include="System.ServiceModel" />
<Reference Include="System.Transactions" />
<Reference Include="System.Xml" />
<Reference Include="TvdbLib, Version=0.8.8.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\Libraries\TvdbLib.dll</HintPath>
</Reference>
<Reference Include="WebActivator, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\WebActivator.1.0.0.0\lib\WebActivator.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
<Compile Include="JobTests\BacklogSearchJobTest.cs" />
@ -112,7 +125,7 @@
<Compile Include="ProviderTests\EpisodeProviderTest_GetEpisodesByParseResult.cs" />
<Compile Include="ProviderTests\DiskScanProviderTest_ImportFile.cs" />
<Compile Include="FluentTest.cs" />
<Compile Include="ProviderTests\LogProviderTest.cs" />
<Compile Include="ProviderTests\LogProviderTests\LogProviderFixture.cs" />
<Compile Include="ProviderTests\UpcomingEpisodesProviderTest.cs" />
<Compile Include="ProviderTests\MediaFileProvider_GetNewFilenameTest.cs" />
<Compile Include="dbBenchmark.cs" />
@ -132,8 +145,7 @@
<Compile Include="ProviderTests\MediaFileProviderTests.cs" />
<Compile Include="ProviderTests\ConfigProviderTest.cs" />
<Compile Include="ProviderTests\EpisodeProviderTest.cs" />
<Compile Include="Framework\Fixtures.cs" />
<Compile Include="Framework\MockLib.cs" />
<Compile Include="Framework\TestDbHelper.cs" />
<Compile Include="ParserTest.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<Compile Include="QualityProfileTest.cs" />

View File

@ -24,7 +24,7 @@ public void Add_new_value_to_database()
const string value = "MY_VALUE";
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
//Act
@ -41,7 +41,7 @@ public void Get_value_from_database()
const string value = "MY_VALUE";
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
db.Insert(new Config { Key = key, Value = value });
@ -62,7 +62,7 @@ public void Get_value_should_return_default_when_no_value()
const string value = "MY_VALUE";
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
@ -81,7 +81,7 @@ public void New_value_should_update_old_value_new_value()
const string newValue = "NEW_VALUE";
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
db.Insert(new Config { Key = key, Value = originalValue });
@ -103,7 +103,7 @@ public void New_value_should_update_old_value_same_value()
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
//Act
@ -122,7 +122,7 @@ public void config_properties_should_write_and_read_using_same_key()
{
var mocker = new AutoMoqer(MockBehavior.Strict);
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var configProvider = mocker.Resolve<ConfigProvider>();

View File

@ -28,7 +28,7 @@ public class EpisodeProviderTest : CoreTest
public void GetEpisodes_exists()
{
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeSeries = Builder<Series>.CreateNew().Build();
@ -50,7 +50,7 @@ public void GetEpisodes_exists()
public void GetEpisodes_by_season_episode_exists()
{
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeSeries = Builder<Series>.CreateNew()
@ -77,7 +77,7 @@ public void GetEpisodes_by_season_episode_exists()
public void GetEpisodes_by_season_episode_doesnt_exists()
{
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
@ -93,7 +93,7 @@ public void GetEpisodes_by_season_episode_doesnt_exists()
public void GetEpisode_with_EpisodeFile()
{
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeSeries = Builder<Series>.CreateNew().Build();
@ -119,7 +119,7 @@ public void GetEpisode_with_EpisodeFile()
public void GetEpisodes_invalid_series()
{
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
mocker.Resolve<SeriesProvider>();
@ -210,7 +210,7 @@ public void AttachSeries_single_success()
public void AttachSeries_single_invalid_series()
{
var mocker = new AutoMoqer();
mocker.SetConstant(MockLib.GetEmptyDatabase());
mocker.SetConstant(TestDbHelper.GetEmptyDatabase());
mocker.Resolve<SeriesProvider>();
var fakeEpisodes = Builder<Episode>.CreateNew().With(e => e.SeriesId = 12).Build();
@ -230,7 +230,7 @@ public void GetEpisodesBySeason_success()
.TheFirst(5).With(c => c.SeasonNumber = 1)
.Build();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer();
mocker.SetConstant(db);
@ -265,7 +265,7 @@ public void RefreshEpisodeInfo_emptyRepo()
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
db.Insert(fakeSeries);
@ -304,7 +304,7 @@ public void RefreshEpisodeInfo_should_set_older_than_1900_to_null()
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
db.Insert(fakeSeries);
@ -348,7 +348,7 @@ public void RefreshEpisodeInfo_ignore_episode_zero()
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
db.Insert(fakeSeries);
@ -382,7 +382,7 @@ public void new_episodes_only_calls_Insert()
var currentEpisodes = new List<Episode>();
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
mocker.GetMock<TvDbProvider>(MockBehavior.Strict)
@ -560,7 +560,7 @@ public void existing_episodes_keep_their_episodeId_file_id()
[Test]
public void IsSeasonIgnored_should_return_true_if_all_episodes_ignored()
{
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer(MockBehavior.Strict);
mocker.SetConstant(db);
@ -583,7 +583,7 @@ public void IsSeasonIgnored_should_return_true_if_all_episodes_ignored()
[Test]
public void IsSeasonIgnored_should_return_false_if_none_of_episodes_are_ignored()
{
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer(MockBehavior.Strict);
mocker.SetConstant(db);
@ -606,7 +606,7 @@ public void IsSeasonIgnored_should_return_false_if_none_of_episodes_are_ignored(
[Test]
public void IsSeasonIgnored_should_return_false_if_some_of_episodes_are_ignored()
{
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer(MockBehavior.Strict);
mocker.SetConstant(db);
@ -632,7 +632,7 @@ public void IsSeasonIgnored_should_return_false_if_some_of_episodes_are_ignored(
[Test]
public void IsSeasonIgnored_should_return_false_if_zero_episodes_in_db_for_season()
{
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer(MockBehavior.Strict);
mocker.SetConstant(db);
@ -655,7 +655,7 @@ public void IsSeasonIgnored_should_return_false_if_zero_episodes_in_db_for_seaso
[Test]
public void IsSeasonIgnored_should_return_true_if_zero_episodes_in_db_for_season_and_previous_is_ignored()
{
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer(MockBehavior.Strict);
mocker.SetConstant(db);
@ -678,7 +678,7 @@ public void IsSeasonIgnored_should_return_true_if_zero_episodes_in_db_for_season
[Test]
public void IsSeasonIgnored_should_return_false_if_zero_episodes_in_db_for_season_and_previous_is_not_ignored()
{
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer(MockBehavior.Strict);
mocker.SetConstant(db);
@ -701,7 +701,7 @@ public void IsSeasonIgnored_should_return_false_if_zero_episodes_in_db_for_seaso
[Test]
public void IsSeasonIgnored_should_return_false_if_zero_episodes_in_db_for_season_one()
{
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer(MockBehavior.Strict);
mocker.SetConstant(db);
@ -715,7 +715,7 @@ public void IsSeasonIgnored_should_return_false_if_zero_episodes_in_db_for_seaso
[Test]
public void IsSeasonIgnored_should_return_true_if_zero_episodes_in_db_for_season_zero()
{
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer(MockBehavior.Strict);
mocker.SetConstant(db);
@ -729,7 +729,7 @@ public void IsSeasonIgnored_should_return_true_if_zero_episodes_in_db_for_season
[Test]
public void IsSeasonIgnored_should_return_false_if_season_zero_is_not_ignored()
{
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer(MockBehavior.Strict);
mocker.SetConstant(db);
@ -754,7 +754,7 @@ public void IsSeasonIgnored_should_return_false_if_season_zero_is_not_ignored()
public void Add_daily_show_episodes()
{
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
mocker.Resolve<TvDbProvider>();
@ -782,7 +782,7 @@ public void Add_daily_show_episodes()
public void GetEpisode_by_Season_Episode_none_existing()
{
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
@ -797,7 +797,7 @@ public void GetEpisode_by_Season_Episode_none_existing()
public void GetEpisode_by_Season_Episode_with_EpisodeFile()
{
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeSeries = Builder<Series>.CreateNew().Build();
@ -822,7 +822,7 @@ public void GetEpisode_by_Season_Episode_with_EpisodeFile()
public void GetEpisode_by_Season_Episode_without_EpisodeFile()
{
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeSeries = Builder<Series>.CreateNew().Build();
@ -845,7 +845,7 @@ public void GetEpisode_by_Season_Episode_without_EpisodeFile()
public void GetEpisode_by_AirDate_with_EpisodeFile()
{
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeSeries = Builder<Series>.CreateNew().Build();
@ -870,7 +870,7 @@ public void GetEpisode_by_AirDate_with_EpisodeFile()
public void GetEpisode_by_AirDate_without_EpisodeFile()
{
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeSeries = Builder<Series>.CreateNew().Build();
@ -893,7 +893,7 @@ public void GetEpisode_by_AirDate_without_EpisodeFile()
public void MarkEpisodeAsFetched()
{
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeEpisodes = Builder<Episode>.CreateListOfSize(5)
@ -916,7 +916,7 @@ public void MarkEpisodeAsFetched()
[Test]
public void AddEpisode_episode_is_ignored_when_full_season_is_ignored()
{
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer();
mocker.SetConstant(db);
@ -952,7 +952,7 @@ public void AddEpisode_episode_is_ignored_when_full_season_is_ignored()
[Test]
public void AddEpisode_episode_is_not_ignored_when_full_season_is_not_ignored()
{
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer();
mocker.SetConstant(db);
@ -988,7 +988,7 @@ public void AddEpisode_episode_is_not_ignored_when_full_season_is_not_ignored()
[Test]
public void AddEpisode_episode_is_not_ignored_when_not_full_season_is_not_ignored()
{
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer();
mocker.SetConstant(db);
@ -1026,7 +1026,7 @@ public void AddEpisode_episode_is_not_ignored_when_not_full_season_is_not_ignore
[Test]
public void IgnoreEpisode_Ignore()
{
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer();
mocker.SetConstant(db);
@ -1054,7 +1054,7 @@ public void IgnoreEpisode_Ignore()
[Test]
public void IgnoreEpisode_RemoveIgnore()
{
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer();
mocker.SetConstant(db);
@ -1082,7 +1082,7 @@ public void IgnoreEpisode_RemoveIgnore()
[Test]
public void IgnoreSeason_Ignore()
{
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer();
mocker.SetConstant(db);
@ -1110,7 +1110,7 @@ public void IgnoreSeason_Ignore()
[Test]
public void IgnoreSeason_RemoveIgnore()
{
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer();
mocker.SetConstant(db);
@ -1138,7 +1138,7 @@ public void IgnoreSeason_RemoveIgnore()
[Test]
public void IgnoreSeason_Ignore_Half()
{
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer();
mocker.SetConstant(db);
@ -1168,7 +1168,7 @@ public void IgnoreSeason_Ignore_Half()
[Test]
public void EpisodesWithoutFiles_no_specials()
{
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer();
mocker.SetConstant(db);
@ -1215,7 +1215,7 @@ public void EpisodesWithoutFiles_no_specials()
[Test]
public void EpisodesWithoutFiles_with_specials()
{
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer();
mocker.SetConstant(db);
@ -1263,7 +1263,7 @@ public void EpisodesWithoutFiles_with_specials()
[Test]
public void EpisodesWithFiles_success()
{
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer();
mocker.SetConstant(db);
@ -1309,7 +1309,7 @@ public void EpisodesWithFiles_success()
[Test]
public void EpisodesWithFiles_no_files()
{
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer();
mocker.SetConstant(db);
@ -1341,7 +1341,7 @@ public void EpisodesWithFiles_no_files()
[Test]
public void GetEpisodesByFileId_multi_episodes()
{
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer();
mocker.SetConstant(db);
@ -1370,7 +1370,7 @@ public void GetEpisodesByFileId_multi_episodes()
[Test]
public void GetEpisodesByFileId_single_episode()
{
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer();
mocker.SetConstant(db);
@ -1399,7 +1399,7 @@ public void GetEpisodesByFileId_single_episode()
[Test]
public void IsFirstOrLastEpisodeInSeason_false()
{
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer();
mocker.SetConstant(db);
@ -1421,7 +1421,7 @@ public void IsFirstOrLastEpisodeInSeason_false()
[Test]
public void IsFirstOrLastEpisodeInSeason_true_first()
{
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer();
mocker.SetConstant(db);
@ -1443,7 +1443,7 @@ public void IsFirstOrLastEpisodeInSeason_true_first()
[Test]
public void IsFirstOrLastEpisodeInSeason_true_last()
{
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer();
mocker.SetConstant(db);
@ -1470,7 +1470,7 @@ public void IsFirstOrLastEpisodeInSeason_true_last()
[TestCase("The Office (US) - Season 01 - Episode Title", PostDownloadStatusType.Failed, 10)]
public void SetPostDownloadStatus(string folderName, PostDownloadStatusType postDownloadStatus, int episodeCount)
{
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer();
mocker.SetConstant(db);
@ -1502,7 +1502,7 @@ public void SetPostDownloadStatus(string folderName, PostDownloadStatusType post
[Test]
public void SetPostDownloadStatus_Invalid_EpisodeId()
{
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer();
mocker.SetConstant(db);

View File

@ -44,7 +44,7 @@ public void Delete_None_Valid_TvDbEpisodeId()
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
db.Insert(fakeSeries);
@ -84,7 +84,7 @@ public void Delete_None_TvDbEpisodeId_is_zero()
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
db.Insert(fakeSeries);
@ -124,7 +124,7 @@ public void Delete_None_TvDbEpisodeId_is_null()
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
db.Insert(fakeSeries);
@ -166,7 +166,7 @@ public void Delete_TvDbId()
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
db.Insert(fakeSeries);
@ -221,7 +221,7 @@ public void Delete_TvDbId_multiple_series()
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
db.Insert(fakeSeries);

View File

@ -22,7 +22,7 @@ public class EpisodeProviderTest_GetEpisodesByParseResult : CoreTest
[Test]
public void Single_GetSeason_Episode_Exists()
{
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer();
mocker.SetConstant(db);
@ -55,7 +55,7 @@ public void Single_GetSeason_Episode_Exists()
public void Single_GetSeason_Episode_Doesnt_exists_should_not_add()
{
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeSeries = Builder<Series>.CreateNew().Build();
@ -78,7 +78,7 @@ public void Single_GetSeason_Episode_Doesnt_exists_should_not_add()
public void Single_GetSeason_Episode_Doesnt_exists_should_add()
{
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeSeries = Builder<Series>.CreateNew().Build();
@ -100,7 +100,7 @@ public void Single_GetSeason_Episode_Doesnt_exists_should_add()
[Test]
public void Multi_GetSeason_Episode_Exists()
{
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer();
mocker.SetConstant(db);
@ -141,7 +141,7 @@ public void Multi_GetSeason_Episode_Exists()
public void Multi_GetSeason_Episode_Doesnt_exists_should_not_add()
{
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeSeries = Builder<Series>.CreateNew().Build();
@ -164,7 +164,7 @@ public void Multi_GetSeason_Episode_Doesnt_exists_should_not_add()
public void Multi_GetSeason_Episode_Doesnt_exists_should_add()
{
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeSeries = Builder<Series>.CreateNew().Build();
@ -187,7 +187,7 @@ public void Multi_GetSeason_Episode_Doesnt_exists_should_add()
public void Get_Episode_Zero_Doesnt_Exist_Should_add_ignored()
{
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeSeries = Builder<Series>.CreateNew().Build();
@ -211,7 +211,7 @@ public void Get_Episode_Zero_Doesnt_Exist_Should_add_ignored()
public void Get_Multi_Episode_Zero_Doesnt_Exist_Should_not_add_ignored()
{
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeSeries = Builder<Series>.CreateNew().Build();

View File

@ -24,7 +24,7 @@ public void AllItems()
var historyItem = Builder<History>.CreateListOfSize(10).Build();
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
db.InsertMany(historyItem);
@ -48,7 +48,7 @@ public void AllItemsWithRelationships()
var historyItems = Builder<History>.CreateListOfSize(10).TheFirst(5).With(h => h.SeriesId = seriesOne.SeriesId).TheLast(5).With(h => h.SeriesId = seriesTwo.SeriesId).Build();
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
db.InsertMany(historyItems);
@ -76,7 +76,7 @@ public void PurgeItem()
var historyItem = Builder<History>.CreateListOfSize(10).Build();
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
db.InsertMany(historyItem);
@ -100,7 +100,7 @@ public void Trim_Items()
.Build();
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
db.InsertMany(historyItem);
@ -122,7 +122,7 @@ public void GetBestQualityInHistory_no_result()
{
var mocker = new AutoMoqer(MockBehavior.Strict);
mocker.SetConstant(MockLib.GetEmptyDatabase());
mocker.SetConstant(TestDbHelper.GetEmptyDatabase());
//Act
var result = mocker.Resolve<HistoryProvider>().GetBestQualityInHistory(12);
@ -136,7 +136,7 @@ public void GetBestQualityInHistory_single_result()
{
var mocker = new AutoMoqer(MockBehavior.Strict);
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
var history = Builder<History>.CreateNew()
.With(h => h.Quality = QualityTypes.Bluray720p).Build();
@ -155,7 +155,7 @@ public void GetBestQualityInHistory_single_result()
public void add_item()
{
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);

View File

@ -26,7 +26,7 @@ public void Init_indexer_test()
{
var mocker = new AutoMoqer();
mocker.SetConstant(MockLib.GetEmptyDatabase());
mocker.SetConstant(TestDbHelper.GetEmptyDatabase());
//Act
var indexerProvider = mocker.Resolve<IndexerProvider>();
@ -48,7 +48,7 @@ public void Init_indexer_with_disabled_job()
{
var mocker = new AutoMoqer();
mocker.SetConstant(MockLib.GetEmptyDatabase());
mocker.SetConstant(TestDbHelper.GetEmptyDatabase());
//Act
var indexerProvider = mocker.Resolve<IndexerProvider>();

View File

@ -1,251 +0,0 @@
// ReSharper disable RedundantUsingDirective
using System;
using System.Linq;
using FizzWare.NBuilder;
using FluentAssertions;
using Moq;
using NLog;
using NLog.Config;
using NUnit.Framework;
using NzbDrone.Core.Instrumentation;
using NzbDrone.Core.Repository;
using NzbDrone.Core.Test.Framework;
using NzbDrone.Test.Common;
using NzbDrone.Test.Common.AutoMoq;
using PetaPoco;
namespace NzbDrone.Core.Test.ProviderTests
{
[TestFixture]
// ReSharper disable InconsistentNaming
public class LogProviderTest : CoreTest
{
private const string loggerName = "Core.Test.ProviderTests.LogProviderTest";
private static IDatabase db;
Logger Logger;
[SetUp]
public void Setup()
{
db = MockLib.GetEmptyDatabase(true);
new DatabaseTarget(db).Register();
Logger = LogManager.GetCurrentClassLogger();
}
[Test]
public void write_log()
{
//setup
var message = Guid.NewGuid().ToString();
Logger.Info(message);
//Assert
db.Fetch<Log>().Should().HaveCount(1);
var logItem = db.Fetch<Log>().First();
Assert.AreNotEqual(new DateTime(), logItem.Time);
Assert.AreEqual(message, logItem.Message);
Assert.AreEqual(loggerName, logItem.Logger);
Logger.Name.Should().EndWith(logItem.Logger);
Assert.AreEqual(LogLevel.Info.Name, logItem.Level);
Assert.AreEqual("write_log", logItem.Method);
}
[Test]
public void write_long_log()
{
//setup
var message = String.Empty;
for (int i = 0; i < 100; i++)
{
message += Guid.NewGuid();
}
//Act
Logger.Info(message);
//Assert
db.Fetch<Log>().Should().HaveCount(1);
var logItem = db.Fetch<Log>().First();
logItem.Message.Should().HaveLength(message.Length);
Assert.AreEqual(message, logItem.Message);
}
[Test]
public void clearLog()
{
//Act
for (int i = 0; i < 10; i++)
{
Logger.Info("Test");
}
//Assert
var provider = new LogProvider(db);
provider.GetAllLogs().Should().HaveCount(10);
provider.DeleteAll();
provider.GetAllLogs().Should().HaveCount(1);
}
[Test]
public void write_log_exception()
{
//setup
var message = Guid.NewGuid().ToString();
var ex = new InvalidOperationException("Fake Exception");
//Act
Logger.ErrorException(message, ex);
//Assert
db.Fetch<Log>().Should().HaveCount(1);
var logItem = db.Fetch<Log>().First();
Assert.AreNotEqual(new DateTime(), logItem.Time);
Assert.AreEqual(message + ": " + ex.Message, logItem.Message);
Assert.AreEqual(loggerName, logItem.Logger);
Assert.AreEqual(LogLevel.Error.Name, logItem.Level);
Assert.AreEqual(ex.GetType().ToString(), logItem.ExceptionType);
Assert.AreEqual(ex.ToString(), logItem.Exception);
ExceptionVerification.ExcpectedErrors(1);
}
[Test]
public void write_log_exception_no_message_should_use_exception_message()
{
//setup
var message = String.Empty;
var ex = new InvalidOperationException("Fake Exception");
//Act
Logger.ErrorException(message, ex);
//Assert
db.Fetch<Log>().Should().HaveCount(1);
var logItem = db.Fetch<Log>().First();
Assert.AreNotEqual(new DateTime(), logItem.Time);
Assert.AreEqual(ex.Message, logItem.Message);
Assert.AreEqual(loggerName, logItem.Logger);
Assert.AreEqual(LogLevel.Error.Name, logItem.Level);
Assert.AreEqual(ex.GetType().ToString(), logItem.ExceptionType);
Assert.AreEqual(ex.ToString(), logItem.Exception);
ExceptionVerification.ExcpectedErrors(1);
}
[Test]
public void null_string_as_arg_should_not_fail()
{
var epFile = new EpisodeFile();
Logger.Trace("File {0} no longer exists on disk. removing from database.", epFile.Path);
epFile.Path.Should().BeNull();
}
[Test]
public void top_logs()
{
//Setup
var mocker = new AutoMoqer(MockBehavior.Strict);
var db = MockLib.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeLogs = Builder<Log>.CreateListOfSize(510)
.Build();
db.InsertMany(fakeLogs);
//Act
var logs = mocker.Resolve<LogProvider>().TopLogs(500);
//Assert
logs.Should().HaveCount(501);
logs.Last().Message.Should().Be(
"Number of logs currently shown: 500. More may exist, check 'All' to see everything");
}
[Test]
public void top_logs_less_than_number_wanted()
{
//Setup
var mocker = new AutoMoqer(MockBehavior.Strict);
var db = MockLib.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeLogs = Builder<Log>.CreateListOfSize(100)
.Build();
db.InsertMany(fakeLogs);
//Act
var logs = mocker.Resolve<LogProvider>().TopLogs(500);
//Assert
logs.Should().HaveCount(101);
logs.Last().Message.Should().Be(
"Number of logs currently shown: 100. More may exist, check 'All' to see everything");
}
[Test]
public void pagedLogs()
{
//Setup
var mocker = new AutoMoqer(MockBehavior.Strict);
var db = MockLib.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeLogs = Builder<Log>.CreateListOfSize(100)
.Build();
db.InsertMany(fakeLogs);
//Act
var logs = mocker.Resolve<LogProvider>().GetPagedLogs(1, 50);
//Assert
logs.Items.Should().HaveCount(50);
logs.TotalItems.Should().Be(100);
}
[Test]
public void Trim_Logs_should_clear_logs_older_than_30_days()
{
//Setup
var historyItem = Builder<Log>.CreateListOfSize(30)
.TheFirst(20).With(c => c.Time = DateTime.Now)
.TheNext(10).With(c => c.Time = DateTime.Now.AddDays(-31))
.Build();
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
mocker.SetConstant(db);
db.InsertMany(historyItem);
//Act
db.Fetch<Log>().Should().HaveCount(30);
mocker.Resolve<LogProvider>().Trim();
//Assert
var result = db.Fetch<Log>();
result.Should().HaveCount(20);
result.Should().OnlyContain(s => s.Time > DateTime.Now.AddDays(-30));
}
}
}

View File

@ -0,0 +1,171 @@
// ReSharper disable InconsistentNaming
using System;
using System.Diagnostics;
using System.Linq;
using FizzWare.NBuilder;
using FluentAssertions;
using NLog;
using NUnit.Framework;
using NzbDrone.Core.Datastore;
using NzbDrone.Core.Instrumentation;
using NzbDrone.Core.Repository;
using NzbDrone.Core.Test.Framework;
using NzbDrone.Test.Common;
namespace NzbDrone.Core.Test.ProviderTests.LogProviderTests
{
[TestFixture]
public class LogProviderFixture : CoreTest
{
private const string LOGGER_NAME = "Core.Test.ProviderTests.LogProviderTests.LogProviderFixture";
private static LogDbContext dbContext;
private static string UniqueMessage;
Logger Logger;
[SetUp]
public void Setup()
{
WithRealDb();
dbContext = Connection.GetLogDbContext(TestDbHelper.ConnectionString);
new DatabaseTarget(Db).Register();
Logger = LogManager.GetCurrentClassLogger();
UniqueMessage = "Unique message: " + Guid.NewGuid().ToString();
}
[Test]
public void write_log()
{
Logger.Info(UniqueMessage);
//Assert
var logItem = Db.Fetch<Log>().Single();
logItem.Message.Should().Be(UniqueMessage);
VerifyLog(logItem, LogLevel.Info);
}
[Test]
public void write_long_log()
{
//setup
var message = String.Empty;
for (int i = 0; i < 100; i++)
{
message += Guid.NewGuid();
}
//Act
Logger.Info(message);
var logItem = Db.Fetch<Log>().Single();
logItem.Message.Should().HaveLength(message.Length);
logItem.Message.Should().Be(message);
VerifyLog(logItem, LogLevel.Info);
}
[Test]
public void clearLog()
{
//Act
for (int i = 0; i < 10; i++)
{
Logger.Info(UniqueMessage);
}
//Assert
var provider = new LogProvider(Db, dbContext);
provider.GetAllLogs().Should().HaveCount(10);
provider.DeleteAll();
provider.GetAllLogs().Should().HaveCount(1);
}
[Test]
public void write_log_exception()
{
var ex = new InvalidOperationException("Fake Exception");
//Act
Logger.ErrorException(UniqueMessage, ex);
//Assert
var logItem = Db.Fetch<Log>().Single();
VerifyLog(logItem, LogLevel.Error);
logItem.Message.Should().Be(UniqueMessage + ": " + ex.Message);
logItem.ExceptionType.Should().Be(ex.GetType().ToString());
logItem.Exception.Should().Be(ex.ToString());
ExceptionVerification.ExcpectedErrors(1);
}
[Test]
public void exception_log_with_no_message_should_use_exceptions_message()
{
var ex = new InvalidOperationException("Fake Exception");
UniqueMessage = String.Empty;
Logger.ErrorException(UniqueMessage, ex);
var logItem = Db.Fetch<Log>().Single();
logItem.Message.Should().Be(ex.Message);
VerifyLog(logItem, LogLevel.Error);
ExceptionVerification.ExcpectedErrors(1);
}
[Test]
public void null_string_as_arg_should_not_fail()
{
var epFile = new EpisodeFile();
Logger.Trace("File {0} no longer exists on disk. removing from database.", epFile.Path);
epFile.Path.Should().BeNull();
}
[Test]
public void Trim_Logs_should_clear_logs_older_than_30_days()
{
//Setup
var historyItem = Builder<Log>.CreateListOfSize(30)
.TheFirst(20).With(c => c.Time = DateTime.Now)
.TheNext(10).With(c => c.Time = DateTime.Now.AddDays(-31))
.Build();
Db.InsertMany(historyItem);
//Act
Db.Fetch<Log>().Should().HaveCount(30);
Mocker.Resolve<LogProvider>().Trim();
//Assert
var result = Db.Fetch<Log>();
result.Should().HaveCount(21);
result.Should().OnlyContain(s => s.Time > DateTime.Now.AddDays(-30));
}
private void VerifyLog(Log logItem, LogLevel level)
{
logItem.Time.Should().BeWithin(TimeSpan.FromSeconds(2));
logItem.Logger.Should().Be(LOGGER_NAME);
logItem.Level.Should().Be(level.Name);
logItem.Method.Should().Be(new StackTrace().GetFrame(1).GetMethod().Name);
Logger.Name.Should().EndWith(logItem.Logger);
}
}
}

View File

@ -30,7 +30,7 @@ public void get_series_files()
var mocker = new AutoMoqer();
var database = MockLib.GetEmptyDatabase(true);
var database = TestDbHelper.GetEmptyDatabase(true);
database.InsertMany(firstSeriesFiles);
@ -61,7 +61,7 @@ public void get_season_files()
var mocker = new AutoMoqer();
var database = MockLib.GetEmptyDatabase(true);
var database = TestDbHelper.GetEmptyDatabase(true);
database.InsertMany(firstSeriesFiles);
database.InsertMany(secondSeriesFiles);
@ -121,7 +121,7 @@ public void CleanEpisodesWithNonExistantFiles()
var episodes = Builder<Episode>.CreateListOfSize(10).Build();
var mocker = new AutoMoqer();
var database = MockLib.GetEmptyDatabase(true);
var database = TestDbHelper.GetEmptyDatabase(true);
mocker.SetConstant(database);
database.InsertMany(episodes);
@ -143,7 +143,7 @@ public void DeleteOrphanedEpisodeFiles()
var episodes = Builder<Episode>.CreateListOfSize(5).Build();
var mocker = new AutoMoqer();
var database = MockLib.GetEmptyDatabase(true);
var database = TestDbHelper.GetEmptyDatabase(true);
mocker.SetConstant(database);
database.InsertMany(episodes);
database.InsertMany(episodeFiles);
@ -189,7 +189,7 @@ public void DeleteEpisodeFile()
var episodeFiles = Builder<EpisodeFile>.CreateListOfSize(10).Build();
var mocker = new AutoMoqer();
var database = MockLib.GetEmptyDatabase(true);
var database = TestDbHelper.GetEmptyDatabase(true);
mocker.SetConstant(database);
database.InsertMany(episodeFiles);

View File

@ -24,7 +24,7 @@ public void Save_should_clean_url_before_inserting()
var expectedUrl = "http://www.nzbdrone.com";
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
//Act
@ -43,7 +43,7 @@ public void Save_should_clean_url_before_updating()
var newUrl = "http://www.nzbdrone.com/gibberish/test.aspx?hello=world";
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
newznab.Id = Convert.ToInt32(db.Insert(newznab));
@ -64,7 +64,7 @@ public void Save_should_clean_url_before_inserting_when_url_is_not_empty()
var expectedUrl = "";
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
//Act
@ -83,7 +83,7 @@ public void Save_should_clean_url_before_updating_when_url_is_not_empty()
var newUrl = "";
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
newznab.Id = Convert.ToInt32(db.Insert(newznab));
@ -108,7 +108,7 @@ public void SaveAll_should_clean_urls_before_updating()
var newUrl = "http://www.nzbdrone.com/gibberish/test.aspx?hello=world";
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
db.InsertMany(definitions);
@ -134,7 +134,7 @@ public void Enabled_should_return_all_enabled_newznab_providers()
.Build();
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
db.InsertMany(definitions);
@ -159,7 +159,7 @@ public void All_should_return_all_newznab_providers()
.Build();
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
db.InsertMany(definitions);
@ -183,7 +183,7 @@ public void Delete_should_delete_newznab_provider()
.Build();
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
db.InsertMany(definitions);
@ -207,7 +207,7 @@ public void InitializeNewznabIndexers_should_initialize_new_indexers()
.Build();
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
//Act
@ -232,7 +232,7 @@ public void InitializeNewznabIndexers_should_initialize_new_indexers_only()
.Build();
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
db.Insert(definitions[0]);

View File

@ -20,7 +20,7 @@ public class QualityTypeProviderTest : CoreTest
public void SetupDefault_should_add_six_profiles()
{
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
//Act
@ -42,7 +42,7 @@ public void SetupDefault_should_add_six_profiles()
public void SetupDefault_already_exists()
{
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeQualityType = Builder<QualityType>.CreateNew()
@ -63,7 +63,7 @@ public void SetupDefault_already_exists()
public void GetList_single_quality_type()
{
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeQualityTypes = Builder<QualityType>.CreateListOfSize(6)
@ -84,7 +84,7 @@ public void GetList_single_quality_type()
public void GetList_multiple_quality_type()
{
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeQualityTypes = Builder<QualityType>.CreateListOfSize(6)

View File

@ -26,7 +26,7 @@ public void GetRootDirs()
//Setup
var mocker = new AutoMoqer();
var emptyDatabase = MockLib.GetEmptyDatabase();
var emptyDatabase = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(emptyDatabase);
emptyDatabase.Insert(new RootDir { Path = @"C:\TV" });
emptyDatabase.Insert(new RootDir { Path = @"C:\TV2" });
@ -48,7 +48,7 @@ public void AddRootDir(string path)
{
//Setup
var mocker = new AutoMoqer();
mocker.SetConstant(MockLib.GetEmptyDatabase());
mocker.SetConstant(TestDbHelper.GetEmptyDatabase());
//Act
var rootDirProvider = mocker.Resolve<RootDirProvider>();
@ -68,7 +68,7 @@ public void RemoveRootDir()
{
//Setup
var mocker = new AutoMoqer();
mocker.SetConstant(MockLib.GetEmptyDatabase());
mocker.SetConstant(TestDbHelper.GetEmptyDatabase());
//Act
var rootDirProvider = mocker.Resolve<RootDirProvider>();
@ -85,7 +85,7 @@ public void GetRootDir()
{
//Setup
var mocker = new AutoMoqer();
mocker.SetConstant(MockLib.GetEmptyDatabase());
mocker.SetConstant(TestDbHelper.GetEmptyDatabase());
const int id = 1;
const string path = @"C:\TV";

View File

@ -27,7 +27,7 @@ public void Add_new_series(bool useSeasonFolder)
mocker.GetMock<ConfigProvider>()
.Setup(c => c.UseSeasonFolder).Returns(useSeasonFolder);
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeProfiles = Builder<QualityProfile>.CreateListOfSize(2).Build();
@ -55,7 +55,7 @@ public void Add_new_series(bool useSeasonFolder)
public void find_series_empty_repo()
{
var mocker = new AutoMoqer();
mocker.SetConstant(MockLib.GetEmptyDatabase());
mocker.SetConstant(TestDbHelper.GetEmptyDatabase());
//Act
var seriesProvider = mocker.Resolve<SeriesProvider>();
@ -71,7 +71,7 @@ public void find_series_empty_repo()
public void Get_series_invalid_series_id_should_return_null()
{
var mocker = new AutoMoqer();
mocker.SetConstant(MockLib.GetEmptyDatabase());
mocker.SetConstant(TestDbHelper.GetEmptyDatabase());
//Act
var seriesProvider = mocker.Resolve<SeriesProvider>();
@ -86,7 +86,7 @@ public void Get_series_invalid_series_id_should_return_null()
public void Get_series_by_id()
{
var mocker = new AutoMoqer(MockBehavior.Strict);
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeSeries = Builder<Series>.CreateNew()
@ -115,7 +115,7 @@ public void Get_series_by_id()
public void Find_series_by_cleanName_mapped()
{
var mocker = new AutoMoqer(MockBehavior.Strict);
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeSeries = Builder<Series>.CreateNew()
@ -143,9 +143,9 @@ public void Find_series_by_cleanName_mapped()
public void find_series_empty_match()
{
var mocker = new AutoMoqer();
var emptyRepository = MockLib.GetEmptyDatabase();
var emptyRepository = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(emptyRepository);
emptyRepository.Insert(MockLib.GetFakeSeries(1, "MyTitle"));
emptyRepository.Insert(TestDbHelper.GetFakeSeries(1, "MyTitle"));
//Act
var seriesProvider = mocker.Resolve<SeriesProvider>();
var series = seriesProvider.FindSeries("WrongTitle");
@ -160,9 +160,9 @@ public void find_series_empty_match()
public void find_series_match(string title, string searchTitle)
{
var mocker = new AutoMoqer();
var emptyRepository = MockLib.GetEmptyDatabase();
var emptyRepository = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(emptyRepository);
emptyRepository.Insert(MockLib.GetFakeSeries(1, title));
emptyRepository.Insert(TestDbHelper.GetFakeSeries(1, title));
emptyRepository.Insert(Builder<QualityProfile>.CreateNew().Build());
mocker.Resolve<QualityProvider>();
@ -182,7 +182,7 @@ public void is_monitored()
{
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
mocker.SetConstant(db);
@ -210,7 +210,7 @@ public void is_monitored()
public void Get_Series_With_Count()
{
var mocker = new AutoMoqer(MockBehavior.Strict);
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeQuality = Builder<QualityProfile>.CreateNew().Build();
@ -243,7 +243,7 @@ public void Get_Series_With_Count()
public void Get_Series_With_Count_AllIgnored()
{
var mocker = new AutoMoqer(MockBehavior.Strict);
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeQuality = Builder<QualityProfile>.CreateNew().Build();
@ -268,7 +268,7 @@ public void Get_Series_With_Count_AllIgnored()
public void Get_Series_With_Count_AllDownloaded()
{
var mocker = new AutoMoqer(MockBehavior.Strict);
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeQuality = Builder<QualityProfile>.CreateNew().Build();
@ -298,7 +298,7 @@ public void Get_Series_With_Count_AllDownloaded()
public void Get_Series_With_Count_Half_Ignored()
{
var mocker = new AutoMoqer(MockBehavior.Strict);
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeQuality = Builder<QualityProfile>.CreateNew().Build();
@ -331,7 +331,7 @@ public void Get_Series_With_Count_Half_Ignored()
public void Get_Single_Series()
{
var mocker = new AutoMoqer(MockBehavior.Strict);
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeQuality = Builder<QualityProfile>.CreateNew().Build();
@ -356,7 +356,7 @@ public void Get_Single_Series()
public void SeriesPathExists_exact_match()
{
var mocker = new AutoMoqer(MockBehavior.Strict);
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var path = @"C:\Test\TV\30 Rock";
@ -387,7 +387,7 @@ public void SeriesPathExists_exact_match()
public void SeriesPathExists_match()
{
var mocker = new AutoMoqer(MockBehavior.Strict);
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var path = @"C:\Test\TV\30 Rock";
@ -418,7 +418,7 @@ public void SeriesPathExists_match()
public void SeriesPathExists_match_alt()
{
var mocker = new AutoMoqer(MockBehavior.Strict);
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var path = @"C:\Test\TV\The Simpsons";
@ -449,7 +449,7 @@ public void SeriesPathExists_match_alt()
public void SeriesPathExists_match_false()
{
var mocker = new AutoMoqer(MockBehavior.Strict);
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var path = @"C:\Test\TV\30 Rock";
@ -480,7 +480,7 @@ public void SeriesPathExists_match_false()
public void Get_Series_NextAiring_Today()
{
var mocker = new AutoMoqer(MockBehavior.Strict);
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeQuality = Builder<QualityProfile>.CreateNew().Build();
@ -511,7 +511,7 @@ public void Get_Series_NextAiring_Today()
public void Get_Series_NextAiring_Tomorrow_Last_Aired_Yesterday()
{
var mocker = new AutoMoqer(MockBehavior.Strict);
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeQuality = Builder<QualityProfile>.CreateNew().Build();
@ -542,7 +542,7 @@ public void Get_Series_NextAiring_Tomorrow_Last_Aired_Yesterday()
public void Get_Series_NextAiring_Unknown()
{
var mocker = new AutoMoqer(MockBehavior.Strict);
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeQuality = Builder<QualityProfile>.CreateNew().Build();
@ -571,7 +571,7 @@ public void Get_Series_NextAiring_Unknown()
public void Get_Series_NextAiring_1_month()
{
var mocker = new AutoMoqer(MockBehavior.Strict);
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeQuality = Builder<QualityProfile>.CreateNew().Build();
@ -602,7 +602,7 @@ public void Get_Series_NextAiring_1_month()
public void Get_Series_NextAiring_skip_ignored()
{
var mocker = new AutoMoqer(MockBehavior.Strict);
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeQuality = Builder<QualityProfile>.CreateNew().Build();
@ -634,7 +634,7 @@ public void Get_Series_NextAiring_skip_ignored()
public void SearchForSeries_should_return_results_that_start_with_query()
{
var mocker = new AutoMoqer(MockBehavior.Strict);
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeQuality = Builder<QualityProfile>.CreateNew().Build();
@ -657,7 +657,7 @@ public void SearchForSeries_should_return_results_that_start_with_query()
public void SearchForSeries_should_return_results_that_contain_the_query()
{
var mocker = new AutoMoqer(MockBehavior.Strict);
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeQuality = Builder<QualityProfile>.CreateNew().Build();
@ -680,7 +680,7 @@ public void SearchForSeries_should_return_results_that_contain_the_query()
public void SearchForSeries_should_return_results_that_end_with_the_query()
{
var mocker = new AutoMoqer(MockBehavior.Strict);
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeQuality = Builder<QualityProfile>.CreateNew().Build();
@ -703,7 +703,7 @@ public void SearchForSeries_should_return_results_that_end_with_the_query()
public void SearchForSeries_should_not_return_results_that_do_not_contain_the_query()
{
var mocker = new AutoMoqer(MockBehavior.Strict);
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeQuality = Builder<QualityProfile>.CreateNew().Build();

View File

@ -49,7 +49,7 @@ public void Setup()
public void Get_Yesterday()
{
//Setup
var database = MockLib.GetEmptyDatabase();
var database = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer();
mocker.SetConstant(database);
@ -70,7 +70,7 @@ public void Get_Yesterday()
public void Get_Today()
{
//Setup
var database = MockLib.GetEmptyDatabase();
var database = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer();
mocker.SetConstant(database);
@ -91,7 +91,7 @@ public void Get_Today()
public void Get_Tomorrow()
{
//Setup
var database = MockLib.GetEmptyDatabase();
var database = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer();
mocker.SetConstant(database);
@ -112,7 +112,7 @@ public void Get_Tomorrow()
public void Get_Week()
{
//Setup
var database = MockLib.GetEmptyDatabase();
var database = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer();
mocker.SetConstant(database);
@ -134,7 +134,7 @@ public void Get_Week()
public void Get_Yesterday_skip_ingored()
{
//Setup
var database = MockLib.GetEmptyDatabase();
var database = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer();
mocker.SetConstant(database);
@ -154,7 +154,7 @@ public void Get_Yesterday_skip_ingored()
public void Get_Today_skip_ingored()
{
//Setup
var database = MockLib.GetEmptyDatabase();
var database = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer();
mocker.SetConstant(database);
@ -174,7 +174,7 @@ public void Get_Today_skip_ingored()
public void Get_Tomorrow_skip_ingored()
{
//Setup
var database = MockLib.GetEmptyDatabase();
var database = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer();
mocker.SetConstant(database);
@ -194,7 +194,7 @@ public void Get_Tomorrow_skip_ingored()
public void Get_Week_skip_ingored()
{
//Setup
var database = MockLib.GetEmptyDatabase();
var database = TestDbHelper.GetEmptyDatabase();
var mocker = new AutoMoqer();
mocker.SetConstant(database);

View File

@ -21,7 +21,7 @@ public class QualityProfileTest : CoreTest
public void Test_Storage()
{
//Arrange
var database = MockLib.GetEmptyDatabase();
var database = TestDbHelper.GetEmptyDatabase();
var testProfile = new QualityProfile
{
Name = Guid.NewGuid().ToString(),
@ -45,7 +45,7 @@ public void Test_Storage()
public void Test_Storage_no_allowed()
{
//Arrange
var database = MockLib.GetEmptyDatabase();
var database = TestDbHelper.GetEmptyDatabase();
var testProfile = new QualityProfile
{
Name = Guid.NewGuid().ToString(),
@ -69,7 +69,7 @@ public void Update_Success()
{
//Arrange
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var testProfile = new QualityProfile
@ -100,7 +100,7 @@ public void Update_Success()
public void Test_Series_Quality()
{
//Arrange
var database = MockLib.GetEmptyDatabase();
var database = TestDbHelper.GetEmptyDatabase();
var testProfile = new QualityProfile
{
@ -131,7 +131,7 @@ public void Test_Series_Quality()
public void SetupInitial_should_add_two_profiles()
{
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
//Act
@ -153,7 +153,7 @@ public void SetupInitial_should_add_two_profiles()
public void SetupInitial_should_skip_if_any_profile_exists()
{
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
var fakeProfile = Builder<QualityProfile>.CreateNew().Build();

View File

@ -24,7 +24,7 @@ public void GetSceneName_exists()
var mocker = new AutoMoqer();
var emptyDatabase = MockLib.GetEmptyDatabase();
var emptyDatabase = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(emptyDatabase);
emptyDatabase.Insert(fakeMap);
@ -47,7 +47,7 @@ public void GetSeriesId_exists()
var mocker = new AutoMoqer();
var emptyDatabase = MockLib.GetEmptyDatabase();
var emptyDatabase = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(emptyDatabase);
emptyDatabase.Insert(fakeMap);
@ -70,7 +70,7 @@ public void GetSceneName_null()
var mocker = new AutoMoqer();
var emptyDatabase = MockLib.GetEmptyDatabase();
var emptyDatabase = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(emptyDatabase);
emptyDatabase.Insert(fakeMap);
@ -93,7 +93,7 @@ public void GetSeriesId_null()
var mocker = new AutoMoqer();
var emptyDatabase = MockLib.GetEmptyDatabase();
var emptyDatabase = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(emptyDatabase);
emptyDatabase.Insert(fakeMap);
@ -124,7 +124,7 @@ public void GetSceneName_multiple_clean_names()
var mocker = new AutoMoqer();
var db = MockLib.GetEmptyDatabase();
var db = TestDbHelper.GetEmptyDatabase();
mocker.SetConstant(db);
db.Insert(fakeMap);

View File

@ -32,7 +32,7 @@ public class DbBenchmark : CoreTest
[TestFixtureSetUp]
public void Setup()
{
db = MockLib.GetEmptyDatabase();
db = TestDbHelper.GetEmptyDatabase();
int currentFileId = 0;

View File

@ -1,6 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="AutoMoq" version="1.3.1.3" />
<package id="EntityFramework" version="4.2.0.0" />
<package id="EntityFramework.SqlServerCompact" version="4.1.8482.2" />
<package id="FluentAssertions" version="1.6.0" />
<package id="Moq" version="4.0.10827" />
<package id="NBuilder" version="3.0.1.1" />
@ -8,4 +10,5 @@
<package id="NLog" version="2.0.0.2000" />
<package id="NUnit" version="2.5.10.11092" />
<package id="SqlServerCompact" version="4.0.8482.1" />
<package id="WebActivator" version="1.0.0.0" />
</packages>

View File

@ -44,7 +44,8 @@ private void InitDatabase()
var connection = Kernel.Get<Connection>();
Kernel.Bind<IDatabase>().ToMethod(c => connection.GetMainPetaPocoDb()).InTransientScope();
Kernel.Bind<IDatabase>().ToMethod(c => connection.GetLogPetaPocoDb(false)).WhenInjectedInto<DatabaseTarget>().InSingletonScope();
Kernel.Bind<IDatabase>().ToMethod(c => connection.GetLogPetaPocoDb()).WhenInjectedInto<LogProvider>().InSingletonScope();
Kernel.Bind<IDatabase>().ToMethod(c => connection.GetLogPetaPocoDb()).WhenInjectedInto<LogProvider>();
Kernel.Bind<LogDbContext>().ToMethod(c => connection.GetLogEfContext()).WhenInjectedInto<LogProvider>().InSingletonScope();
Kernel.Get<DatabaseTarget>().Register();
LogConfiguration.Reload();

View File

@ -1,5 +1,10 @@
using System;
using System.Data.Common;
using System.Data.EntityClient;
using System.Data.SqlServerCe;
using MvcMiniProfiler;
using NzbDrone.Common;
using NzbDrone.Core.Instrumentation;
using PetaPoco;
namespace NzbDrone.Core.Datastore
@ -30,7 +35,7 @@ public String LogConnectionString
{
get
{
return GetConnectionString(_enviromentProvider.GetLogDbFileDbFile());
return GetConnectionString(_enviromentProvider.GetLogDbFileDbFile());
}
}
@ -50,11 +55,18 @@ public IDatabase GetLogPetaPocoDb(Boolean profiled = true)
return GetPetaPocoDb(LogConnectionString, profiled);
}
public LogDbContext GetLogEfContext()
{
return GetLogDbContext(LogConnectionString);
}
public static IDatabase GetPetaPocoDb(string connectionString, Boolean profiled = true)
{
MigrationsHelper.Run(connectionString, true);
var factory = new PetaDbProviderFactory
var factory = new DbProviderFactory
{
IsProfiled = profiled
};
@ -68,5 +80,12 @@ public static IDatabase GetPetaPocoDb(string connectionString, Boolean profiled
return db;
}
public static LogDbContext GetLogDbContext(string connectionString)
{
MigrationsHelper.Run(connectionString, true);
DbConnection connection = new SqlCeConnection(connectionString);
return new LogDbContext(connection);
}
}
}

View File

@ -1,14 +1,12 @@
using System;
using System.Collections.Generic;
using System.Data.Common;
using System.Data.SqlServerCe;
using System.Text;
using MvcMiniProfiler;
using MvcMiniProfiler.Data;
namespace NzbDrone.Core.Datastore
{
class PetaDbProviderFactory : DbProviderFactory
class DbProviderFactory : System.Data.Common.DbProviderFactory
{
public Boolean IsProfiled { get; set; }

View File

@ -0,0 +1,22 @@
using System.Data.Common;
using System.Data.Entity;
using System.Linq;
using Ninject;
namespace NzbDrone.Core.Instrumentation
{
public class LogDbContext : DbContext
{
[Inject]
public LogDbContext(DbConnection connection)
: base(connection, false)
{
}
public LogDbContext()
{
}
public DbSet<Log> Logs { get; set; }
}
}

View File

@ -1,5 +1,6 @@
using System;
using System.Collections.Generic;
using System.Linq;
using NLog;
using PetaPoco;
@ -8,18 +9,20 @@ namespace NzbDrone.Core.Instrumentation
public class LogProvider
{
private readonly IDatabase _database;
private readonly LogDbContext _logDbContext;
private static readonly Logger Logger = LogManager.GetCurrentClassLogger();
public LogProvider(IDatabase database)
public LogProvider(IDatabase database, LogDbContext logDbContext)
{
_database = database;
_logDbContext = logDbContext;
}
public IList<Log> GetAllLogs()
public IQueryable<Log> GetAllLogs()
{
return _database.Fetch<Log>();
return _logDbContext.Logs;
}
public IList<Log> TopLogs(int count)
@ -50,7 +53,7 @@ public void DeleteAll()
public void Trim()
{
_database.Delete<Log>("WHERE Time < @0", DateTime.Now.AddDays(-30).Date);
Logger.Info("Logs have been trimmed, events older than 30 days have been removed");
Logger.Debug("Logs have been trimmed, events older than 30 days have been removed");
}
}
}

View File

@ -121,6 +121,9 @@
<StartupObject />
</PropertyGroup>
<ItemGroup>
<Reference Include="EntityFramework">
<HintPath>..\packages\EntityFramework.4.2.0.0\lib\net40\EntityFramework.dll</HintPath>
</Reference>
<Reference Include="Growl.Connector">
<HintPath>..\packages\Growl.0.6\lib\Growl.Connector.dll</HintPath>
</Reference>
@ -159,12 +162,18 @@
<Reference Include="System.configuration" />
<Reference Include="System.Core" />
<Reference Include="System.Data" />
<Reference Include="System.Data.Entity" />
<Reference Include="System.Data.SqlServerCe, Version=4.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL">
<Private>True</Private>
<HintPath>..\packages\SqlServerCompact.4.0.8482.1\lib\System.Data.SqlServerCe.dll</HintPath>
</Reference>
<Reference Include="System.Data.SqlServerCe.Entity, Version=4.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\packages\EntityFramework.SqlServerCompact.4.1.8482.2\lib\System.Data.SqlServerCe.Entity.dll</HintPath>
</Reference>
<Reference Include="System.Drawing" />
<Reference Include="System.ServiceModel" />
<Reference Include="System.Transactions" />
<Reference Include="System.Web" />
<Reference Include="System.Web.Extensions" />
<Reference Include="System.XML" />
@ -177,6 +186,9 @@
<SpecificVersion>False</SpecificVersion>
<HintPath>..\packages\twitterizer.2.4.0.26532\lib\net40\Twitterizer2.dll</HintPath>
</Reference>
<Reference Include="WebActivator">
<HintPath>..\packages\WebActivator.1.0.0.0\lib\WebActivator.dll</HintPath>
</Reference>
</ItemGroup>
<ItemGroup>
<Compile Include="..\NzbDrone.Common\Properties\SharedAssemblyInfo.cs">
@ -192,11 +204,12 @@
<Compile Include="Datastore\Migrations\Migration20110909.cs" />
<Compile Include="Datastore\Migrations\Migration20110726.cs" />
<Compile Include="Datastore\Migrations\Migration20110707.cs" />
<Compile Include="Datastore\PetaDbProviderFactory.cs" />
<Compile Include="Datastore\DbProviderFactory.cs" />
<Compile Include="Fluent.cs" />
<Compile Include="Helpers\EpisodeSortingHelper.cs" />
<Compile Include="Helpers\FileSizeFormatHelpercs.cs" />
<Compile Include="Helpers\SortHelper.cs" />
<Compile Include="Instrumentation\LogDbContext.cs" />
<Compile Include="Instrumentation\LogProvider.cs" />
<Compile Include="Instrumentation\DatabaseTarget.cs" />
<Compile Include="Instrumentation\NlogWriter.cs" />

View File

@ -1,6 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="DotNetZip" version="1.9.1.8" />
<package id="EntityFramework" version="4.2.0.0" />
<package id="EntityFramework.SqlServerCompact" version="4.1.8482.2" />
<package id="Growl" version="0.6" />
<package id="MiniProfiler" version="1.9" />
<package id="Newtonsoft.Json" version="4.0.4" />
@ -8,4 +10,5 @@
<package id="NLog" version="2.0.0.2000" />
<package id="SqlServerCompact" version="4.0.8482.1" />
<package id="twitterizer" version="2.4.0.26532" />
<package id="WebActivator" version="1.0.0.0" />
</packages>

View File

@ -2,7 +2,6 @@
using NzbDrone.Core.Instrumentation;
using NzbDrone.Web.Models;
using Telerik.Web.Mvc;
using System.Linq;
namespace NzbDrone.Web.Controllers
{
@ -20,32 +19,17 @@ public ActionResult Index()
return View();
}
public ActionResult All()
{
return View();
}
public JsonResult Clear()
{
_logProvider.DeleteAll();
return Json(new NotificationResult { Title = "Logs Cleared" });
return Json(new NotificationResult() { Title = "Logs Cleared" });
}
[GridAction]
public ActionResult _TopAjaxBinding()
public ActionResult _AjaxBinding()
{
var logs = _logProvider.TopLogs(5000);
return View(new GridModel(logs));
}
[GridAction(EnableCustomBinding = true)]
public ActionResult _AllAjaxBinding(GridCommand gridCommand)
{
var logs = _logProvider.GetPagedLogs(gridCommand.Page, gridCommand.PageSize);
return View(new GridModel{ Data = logs.Items, Total = (int)logs.TotalItems });
return View(new GridModel(_logProvider.GetAllLogs()));
}
}
}

View File

@ -38,7 +38,7 @@ public static void RegisterRoutes(RouteCollection routes)
}
protected override void OnApplicationStarted()
{
{
base.OnApplicationStarted();
RegisterRoutes(RouteTable.Routes);
AreaRegistration.RegisterAllAreas();
@ -100,7 +100,7 @@ protected void Application_Error(object sender, EventArgs e)
protected void Application_BeginRequest()
{
Thread.CurrentThread.Name = "UI";
var miniprofiler = MiniProfiler.Start();
MiniProfiler.Start();
}
protected void Application_EndRequest()

View File

@ -479,9 +479,6 @@
<ItemGroup>
<Content Include="Views\Log\SubMenu.cshtml" />
</ItemGroup>
<ItemGroup>
<Content Include="Views\Log\All.cshtml" />
</ItemGroup>
<ItemGroup>
<Content Include="Views\Settings\System.cshtml" />
</ItemGroup>

View File

@ -1,62 +0,0 @@
@using NzbDrone.Core.Instrumentation
@model IEnumerable<NzbDrone.Core.Instrumentation.Log>
@section Scripts{
<script type="text/javascript">
function onRowDataBound(e) {
e.row.style.boarder = "";
if (e.dataItem.Level == "Warn") {
e.row.style.backgroundColor = "#FFD700";
}
else if (e.dataItem.Level == "Error") {
e.row.style.backgroundColor = "#FF7500";
}
else if (e.dataItem.Level == "Fatal") {
e.row.style.backgroundColor = "black";
e.row.style.color = "red";
}
//e.row.style.color = 'blue';
}
</script>
}
@section TitleContent{
Logs
}
@section ActionMenu{
@{Html.RenderPartial("SubMenu");}
}
@section MainContent{
@{Html.Telerik().Grid<Log>().Name("logsGrid")
.TableHtmlAttributes(new { @class = "Grid" })
.Columns(columns =>
{
columns.Bound(c => c.Time).Title("Time").Width(170);
columns.Bound(c => c.Level).Title("Level");
columns.Bound(c => c.Logger).Title("Source");
columns.Bound(c => c.Message);
})
.DetailView(detailView => detailView.ClientTemplate(
"<div>Method: <#= Method #></div>" +
"<div><#= ExceptionType #></div>" +
"<div class='stackframe'><#= Exception #></div>"
))
.DataBinding(data => data
.Ajax()
.Select("_AllAjaxBinding", "Log"))
//.Sortable(rows => rows.OrderBy(epSort => epSort.Add(c => c.Time).Descending()).Enabled(true))
.Pageable(c => c.PageSize(50).Position(GridPagerPosition.Bottom).Style(GridPagerStyles.NextPrevious))
//.Filterable()
.EnableCustomBinding(true)
.ClientEvents(c => c.OnRowDataBound("onRowDataBound"))
.Render();}
}
<script type="text/javascript">
function reloadGrid() {
var grid = $('#logsGrid').data('tGrid');
grid.rebind();
}
</script>

View File

@ -46,7 +46,7 @@ Logs
.DataBinding(data => data
.Ajax()
.OperationMode(GridOperationMode.Client)
.Select("_TopAjaxBinding", "Log"))
.Select("_AjaxBinding", "Log"))
.Sortable(rows => rows.OrderBy(epSort => epSort.Add(c => c.Time).Descending()).Enabled(true))
.Pageable(c => c.PageSize(50).Position(GridPagerPosition.Bottom).Style(GridPagerStyles.NextPrevious))
.Filterable()

View File

@ -1,6 +1,4 @@
<ul class="sub-menu">
<li>@Html.ActionLink("Top", "Index", "Log")</li>
<li>@Html.ActionLink("All", "All", "Log")</li>
<li>@Ajax.ActionLink("Clear Logs", "Clear", "Log", new AjaxOptions{ OnSuccess = "reloadGrid" })</li>
</ul>

View File

@ -49,19 +49,14 @@
<assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="3.0.0.0" newVersion="3.0.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="EntityFramework" publicKeyToken="b77a5c561934e089" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.2.0.0" newVersion="4.2.0.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-4.0.4.0" newVersion="4.0.4.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
<system.data>
<DbProviderFactories>
<system.data>
<DbProviderFactories>
<add name="Microsoft SQL Server Compact Data Provider 4.0" invariant="System.Data.SqlServerCe.4.0" description=".NET Framework Data Provider for Microsoft SQL Server Compact" type="System.Data.SqlServerCe.SqlCeProviderFactory, System.Data.SqlServerCe, Version=4.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91" />
</DbProviderFactories>
</system.data>
</DbProviderFactories>
</system.data>
</configuration>

Binary file not shown.

Binary file not shown.

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,12 @@
using System.Data.Entity;
using System.Data.Entity.Infrastructure;
[assembly: WebActivator.PreApplicationStartMethod(typeof($rootnamespace$.App_Start.EntityFramework_SqlServerCompact), "Start")]
namespace $rootnamespace$.App_Start {
public static class EntityFramework_SqlServerCompact {
public static void Start() {
Database.DefaultConnectionFactory = new SqlCeConnectionFactory("System.Data.SqlServerCe.4.0");
}
}
}

View File

@ -0,0 +1,969 @@
{\rtf1\adeflang1025\ansi\ansicpg1252\uc1\adeff38\deff0\stshfdbch11\stshfloch0\stshfhich0\stshfbi0\deflang1033\deflangfe1033\themelang1033\themelangfe2052\themelangcs1025{\fonttbl{\f0\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman{\*\falt Times};}
{\f2\fbidi \fmodern\fcharset0\fprq1{\*\panose 02070309020205020404}Courier New{\*\falt Arial};}{\f3\fbidi \froman\fcharset2\fprq2{\*\panose 05050102010706020507}Symbol{\*\falt Bookshelf Symbol 3};}
{\f10\fbidi \fnil\fcharset2\fprq2{\*\panose 05000000000000000000}Wingdings{\*\falt Symbol};}{\f11\fbidi \fmodern\fcharset128\fprq1{\*\panose 02020609040205080304}MS Mincho{\*\falt ?l?r ??\'81\'66c};}
{\f13\fbidi \fnil\fcharset134\fprq2{\*\panose 02010600030101010101}SimSun{\*\falt ?????\'a1\'ec???};}{\f34\fbidi \froman\fcharset0\fprq2{\*\panose 02040503050406030204}Cambria Math;}
{\f38\fbidi \fswiss\fcharset0\fprq2{\*\panose 020b0604030504040204}Tahoma{\*\falt ?? ??};}{\f39\fbidi \fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Trebuchet MS{\*\falt Arial};}
{\f40\fbidi \fmodern\fcharset128\fprq1{\*\panose 02020609040205080304}@MS Mincho{\*\falt @MS Gothic};}{\f41\fbidi \fnil\fcharset134\fprq2{\*\panose 00000000000000000000}@SimSun;}
{\flomajor\f31500\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman{\*\falt Times};}{\fdbmajor\f31501\fbidi \fnil\fcharset134\fprq2{\*\panose 02010600030101010101}SimSun{\*\falt ?????\'a1\'ec???};}
{\fhimajor\f31502\fbidi \froman\fcharset0\fprq2{\*\panose 02040503050406030204}Cambria;}{\fbimajor\f31503\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman{\*\falt Times};}
{\flominor\f31504\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman{\*\falt Times};}{\fdbminor\f31505\fbidi \fnil\fcharset134\fprq2{\*\panose 02010600030101010101}SimSun{\*\falt ?????\'a1\'ec???};}
{\fhiminor\f31506\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0502020204030204}Calibri;}{\fbiminor\f31507\fbidi \fswiss\fcharset0\fprq2{\*\panose 020b0604020202020204}Arial;}{\f42\fbidi \froman\fcharset238\fprq2 Times New Roman CE{\*\falt Times};}
{\f43\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr{\*\falt Times};}{\f45\fbidi \froman\fcharset161\fprq2 Times New Roman Greek{\*\falt Times};}{\f46\fbidi \froman\fcharset162\fprq2 Times New Roman Tur{\*\falt Times};}
{\f47\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew){\*\falt Times};}{\f48\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic){\*\falt Times};}{\f49\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic{\*\falt Times};}
{\f50\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese){\*\falt Times};}{\f62\fbidi \fmodern\fcharset238\fprq1 Courier New CE{\*\falt Arial};}{\f63\fbidi \fmodern\fcharset204\fprq1 Courier New Cyr{\*\falt Arial};}
{\f65\fbidi \fmodern\fcharset161\fprq1 Courier New Greek{\*\falt Arial};}{\f66\fbidi \fmodern\fcharset162\fprq1 Courier New Tur{\*\falt Arial};}{\f67\fbidi \fmodern\fcharset177\fprq1 Courier New (Hebrew){\*\falt Arial};}
{\f68\fbidi \fmodern\fcharset178\fprq1 Courier New (Arabic){\*\falt Arial};}{\f69\fbidi \fmodern\fcharset186\fprq1 Courier New Baltic{\*\falt Arial};}{\f70\fbidi \fmodern\fcharset163\fprq1 Courier New (Vietnamese){\*\falt Arial};}
{\f154\fbidi \fmodern\fcharset0\fprq1 MS Mincho Western{\*\falt ?l?r ??\'81\'66c};}{\f152\fbidi \fmodern\fcharset238\fprq1 MS Mincho CE{\*\falt ?l?r ??\'81\'66c};}{\f153\fbidi \fmodern\fcharset204\fprq1 MS Mincho Cyr{\*\falt ?l?r ??\'81\'66c};}
{\f155\fbidi \fmodern\fcharset161\fprq1 MS Mincho Greek{\*\falt ?l?r ??\'81\'66c};}{\f156\fbidi \fmodern\fcharset162\fprq1 MS Mincho Tur{\*\falt ?l?r ??\'81\'66c};}{\f159\fbidi \fmodern\fcharset186\fprq1 MS Mincho Baltic{\*\falt ?l?r ??\'81\'66c};}
{\f174\fbidi \fnil\fcharset0\fprq2 SimSun Western{\*\falt ?????\'a1\'ec???};}{\f382\fbidi \froman\fcharset238\fprq2 Cambria Math CE;}{\f383\fbidi \froman\fcharset204\fprq2 Cambria Math Cyr;}{\f385\fbidi \froman\fcharset161\fprq2 Cambria Math Greek;}
{\f386\fbidi \froman\fcharset162\fprq2 Cambria Math Tur;}{\f389\fbidi \froman\fcharset186\fprq2 Cambria Math Baltic;}{\f390\fbidi \froman\fcharset163\fprq2 Cambria Math (Vietnamese);}{\f422\fbidi \fswiss\fcharset238\fprq2 Tahoma CE{\*\falt ?? ??};}
{\f423\fbidi \fswiss\fcharset204\fprq2 Tahoma Cyr{\*\falt ?? ??};}{\f425\fbidi \fswiss\fcharset161\fprq2 Tahoma Greek{\*\falt ?? ??};}{\f426\fbidi \fswiss\fcharset162\fprq2 Tahoma Tur{\*\falt ?? ??};}
{\f427\fbidi \fswiss\fcharset177\fprq2 Tahoma (Hebrew){\*\falt ?? ??};}{\f428\fbidi \fswiss\fcharset178\fprq2 Tahoma (Arabic){\*\falt ?? ??};}{\f429\fbidi \fswiss\fcharset186\fprq2 Tahoma Baltic{\*\falt ?? ??};}
{\f430\fbidi \fswiss\fcharset163\fprq2 Tahoma (Vietnamese){\*\falt ?? ??};}{\f431\fbidi \fswiss\fcharset222\fprq2 Tahoma (Thai){\*\falt ?? ??};}{\f432\fbidi \fswiss\fcharset238\fprq2 Trebuchet MS CE{\*\falt Arial};}
{\f433\fbidi \fswiss\fcharset204\fprq2 Trebuchet MS Cyr{\*\falt Arial};}{\f435\fbidi \fswiss\fcharset161\fprq2 Trebuchet MS Greek{\*\falt Arial};}{\f436\fbidi \fswiss\fcharset162\fprq2 Trebuchet MS Tur{\*\falt Arial};}
{\f439\fbidi \fswiss\fcharset186\fprq2 Trebuchet MS Baltic{\*\falt Arial};}{\f444\fbidi \fmodern\fcharset0\fprq1 @MS Mincho Western{\*\falt @MS Gothic};}{\f442\fbidi \fmodern\fcharset238\fprq1 @MS Mincho CE{\*\falt @MS Gothic};}
{\f443\fbidi \fmodern\fcharset204\fprq1 @MS Mincho Cyr{\*\falt @MS Gothic};}{\f445\fbidi \fmodern\fcharset161\fprq1 @MS Mincho Greek{\*\falt @MS Gothic};}{\f446\fbidi \fmodern\fcharset162\fprq1 @MS Mincho Tur{\*\falt @MS Gothic};}
{\f449\fbidi \fmodern\fcharset186\fprq1 @MS Mincho Baltic{\*\falt @MS Gothic};}{\f454\fbidi \fnil\fcharset0\fprq2 @SimSun Western;}{\flomajor\f31508\fbidi \froman\fcharset238\fprq2 Times New Roman CE{\*\falt Times};}
{\flomajor\f31509\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr{\*\falt Times};}{\flomajor\f31511\fbidi \froman\fcharset161\fprq2 Times New Roman Greek{\*\falt Times};}
{\flomajor\f31512\fbidi \froman\fcharset162\fprq2 Times New Roman Tur{\*\falt Times};}{\flomajor\f31513\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew){\*\falt Times};}
{\flomajor\f31514\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic){\*\falt Times};}{\flomajor\f31515\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic{\*\falt Times};}
{\flomajor\f31516\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese){\*\falt Times};}{\fdbmajor\f31520\fbidi \fnil\fcharset0\fprq2 SimSun Western{\*\falt ?????\'a1\'ec???};}{\fhimajor\f31528\fbidi \froman\fcharset238\fprq2 Cambria CE;}
{\fhimajor\f31529\fbidi \froman\fcharset204\fprq2 Cambria Cyr;}{\fhimajor\f31531\fbidi \froman\fcharset161\fprq2 Cambria Greek;}{\fhimajor\f31532\fbidi \froman\fcharset162\fprq2 Cambria Tur;}
{\fhimajor\f31535\fbidi \froman\fcharset186\fprq2 Cambria Baltic;}{\fhimajor\f31536\fbidi \froman\fcharset163\fprq2 Cambria (Vietnamese);}{\fbimajor\f31538\fbidi \froman\fcharset238\fprq2 Times New Roman CE{\*\falt Times};}
{\fbimajor\f31539\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr{\*\falt Times};}{\fbimajor\f31541\fbidi \froman\fcharset161\fprq2 Times New Roman Greek{\*\falt Times};}
{\fbimajor\f31542\fbidi \froman\fcharset162\fprq2 Times New Roman Tur{\*\falt Times};}{\fbimajor\f31543\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew){\*\falt Times};}
{\fbimajor\f31544\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic){\*\falt Times};}{\fbimajor\f31545\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic{\*\falt Times};}
{\fbimajor\f31546\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese){\*\falt Times};}{\flominor\f31548\fbidi \froman\fcharset238\fprq2 Times New Roman CE{\*\falt Times};}
{\flominor\f31549\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr{\*\falt Times};}{\flominor\f31551\fbidi \froman\fcharset161\fprq2 Times New Roman Greek{\*\falt Times};}
{\flominor\f31552\fbidi \froman\fcharset162\fprq2 Times New Roman Tur{\*\falt Times};}{\flominor\f31553\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew){\*\falt Times};}
{\flominor\f31554\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic){\*\falt Times};}{\flominor\f31555\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic{\*\falt Times};}
{\flominor\f31556\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese){\*\falt Times};}{\fdbminor\f31560\fbidi \fnil\fcharset0\fprq2 SimSun Western{\*\falt ?????\'a1\'ec???};}{\fhiminor\f31568\fbidi \fswiss\fcharset238\fprq2 Calibri CE;}
{\fhiminor\f31569\fbidi \fswiss\fcharset204\fprq2 Calibri Cyr;}{\fhiminor\f31571\fbidi \fswiss\fcharset161\fprq2 Calibri Greek;}{\fhiminor\f31572\fbidi \fswiss\fcharset162\fprq2 Calibri Tur;}
{\fhiminor\f31575\fbidi \fswiss\fcharset186\fprq2 Calibri Baltic;}{\fhiminor\f31576\fbidi \fswiss\fcharset163\fprq2 Calibri (Vietnamese);}{\fbiminor\f31578\fbidi \fswiss\fcharset238\fprq2 Arial CE;}
{\fbiminor\f31579\fbidi \fswiss\fcharset204\fprq2 Arial Cyr;}{\fbiminor\f31581\fbidi \fswiss\fcharset161\fprq2 Arial Greek;}{\fbiminor\f31582\fbidi \fswiss\fcharset162\fprq2 Arial Tur;}{\fbiminor\f31583\fbidi \fswiss\fcharset177\fprq2 Arial (Hebrew);}
{\fbiminor\f31584\fbidi \fswiss\fcharset178\fprq2 Arial (Arabic);}{\fbiminor\f31585\fbidi \fswiss\fcharset186\fprq2 Arial Baltic;}{\fbiminor\f31586\fbidi \fswiss\fcharset163\fprq2 Arial (Vietnamese);}}{\colortbl;\red0\green0\blue0;\red0\green0\blue255;
\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;\red128\green0\blue128;\red128\green0\blue0;
\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;\red31\green73\blue125;\ctextone\ctint255\cshade255\red0\green0\blue0;}{\*\defchp \fs22\dbch\af11 }{\*\defpap \ql \li0\ri0\sa200\sl276\slmult1
\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 }\noqfpromote {\stylesheet{\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \snext0 \sautoupd \sqformat \spriority0 \styrsid1456345 Normal;}{\s1\ql \fi-357\li357\ri0\sb120\sa120\widctlpar
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls12\outlinelevel0\adjustright\rin0\lin357\itap0 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0 \b\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
\sbasedon0 \snext1 \slink15 \sqformat \styrsid1456345 heading 1;}{\s2\ql \fi-363\li720\ri0\sb120\sa120\widctlpar\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl1\outlinelevel1\adjustright\rin0\lin720\itap0 \rtlch\fcs1
\ab\af38\afs19\alang1025 \ltrch\fcs0 \b\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext2 \slink16 \sqformat \styrsid1456345 heading 2;}{\s3\ql \fi-357\li1077\ri0\sb120\sa120\widctlpar
\tx1077\jclisttab\tx1440\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl2\outlinelevel2\adjustright\rin0\lin1077\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
\sbasedon0 \snext3 \slink17 \sqformat \styrsid1456345 heading 3;}{\s4\ql \fi-358\li1435\ri0\sb120\sa120\widctlpar\jclisttab\tx1437\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl3\outlinelevel3\adjustright\rin0\lin1435\itap0 \rtlch\fcs1
\af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext4 \slink18 \sqformat \styrsid1456345 heading 4;}{\s5\ql \fi-357\li1792\ri0\sb120\sa120\widctlpar
\tx1792\jclisttab\tx2155\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl4\outlinelevel4\adjustright\rin0\lin1792\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
\sbasedon0 \snext5 \slink19 \sqformat \styrsid1456345 heading 5;}{\s6\ql \fi-357\li2149\ri0\sb120\sa120\widctlpar\jclisttab\tx2152\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl5\outlinelevel5\adjustright\rin0\lin2149\itap0 \rtlch\fcs1
\af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext6 \slink20 \sqformat \styrsid1456345 heading 6;}{\s7\ql \fi-357\li2506\ri0\sb120\sa120\widctlpar
\jclisttab\tx2509\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl6\outlinelevel6\adjustright\rin0\lin2506\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
\sbasedon0 \snext7 \slink21 \sqformat \styrsid1456345 heading 7;}{\s8\ql \fi-357\li2863\ri0\sb120\sa120\widctlpar\jclisttab\tx2866\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl7\outlinelevel7\adjustright\rin0\lin2863\itap0 \rtlch\fcs1
\af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext8 \slink22 \sqformat \styrsid1456345 heading 8;}{\s9\ql \fi-358\li3221\ri0\sb120\sa120\widctlpar
\jclisttab\tx3223\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl8\outlinelevel8\adjustright\rin0\lin3221\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
\sbasedon0 \snext9 \slink23 \sqformat \styrsid1456345 heading 9;}{\*\cs10 \additive \ssemihidden \sunhideused \spriority1 Default Paragraph Font;}{\*
\ts11\tsrowd\trftsWidthB3\trpaddl108\trpaddr108\trpaddfl3\trpaddft3\trpaddfb3\trpaddfr3\trcbpat1\trcfpat1\tblind0\tblindtype3\tsvertalt\tsbrdrt\tsbrdrl\tsbrdrb\tsbrdrr\tsbrdrdgl\tsbrdrdgr\tsbrdrh\tsbrdrv \ql \li0\ri0\sa200\sl276\slmult1
\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0 \fs22\lang1033\langfe1033\loch\f0\hich\af0\dbch\af11\cgrid\langnp1033\langfenp1033 \snext11 \ssemihidden \sunhideused Normal Table;}{\*
\cs15 \additive \rtlch\fcs1 \ab\af38\afs19 \ltrch\fcs0 \b\f38\fs19 \sbasedon10 \slink1 \slocked \styrsid1456345 Heading 1 Char;}{\*\cs16 \additive \rtlch\fcs1 \ab\af38\afs19 \ltrch\fcs0 \b\f38\fs19 \sbasedon10 \slink2 \slocked \styrsid1456345
Heading 2 Char;}{\*\cs17 \additive \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \f38\fs19 \sbasedon10 \slink3 \slocked \styrsid1456345 Heading 3 Char;}{\*\cs18 \additive \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \f38\fs19 \sbasedon10 \slink4 \slocked \styrsid1456345
Heading 4 Char;}{\*\cs19 \additive \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \f38\fs19 \sbasedon10 \slink5 \slocked \styrsid1456345 Heading 5 Char;}{\*\cs20 \additive \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \f38\fs19 \sbasedon10 \slink6 \slocked \styrsid1456345
Heading 6 Char;}{\*\cs21 \additive \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \f38\fs19 \sbasedon10 \slink7 \slocked \styrsid1456345 Heading 7 Char;}{\*\cs22 \additive \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \f38\fs19 \sbasedon10 \slink8 \slocked \styrsid1456345
Heading 8 Char;}{\*\cs23 \additive \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \f38\fs19 \sbasedon10 \slink9 \slocked \styrsid1456345 Heading 9 Char;}{\s24\ql \li357\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin357\itap0
\rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext24 \styrsid1456345 Body 1;}{
\s25\ql \li720\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin720\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
\sbasedon0 \snext25 \styrsid1456345 Body 2;}{\s26\ql \li1077\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin1077\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext26 \styrsid1456345 Body 3;}{\s27\ql \li1435\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin1435\itap0 \rtlch\fcs1
\af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext27 \styrsid1456345 Body 4;}{
\s28\ql \li1803\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin1803\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
\sbasedon0 \snext28 \styrsid1456345 Body 5;}{\s29\ql \li2160\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin2160\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext29 \styrsid1456345 Body 6;}{\s30\ql \li2506\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin2506\itap0 \rtlch\fcs1
\af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext30 \styrsid1456345 Body 7;}{
\s31\ql \li2863\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin2863\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
\sbasedon0 \snext31 \styrsid1456345 Body 8;}{\s32\ql \li3221\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin3221\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext32 \styrsid1456345 Body 9;}{\s33\ql \fi-357\li357\ri0\sb120\sa120\widctlpar
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls1\adjustright\rin0\lin357\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext33 \styrsid1456345
Bullet 1;}{\s34\ql \fi-363\li720\ri0\sb120\sa120\widctlpar\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls2\adjustright\rin0\lin720\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext34 \styrsid1456345 Bullet 2;}{\s35\ql \fi-357\li1077\ri0\sb120\sa120\widctlpar
\jclisttab\tx1080\wrapdefault\aspalpha\aspnum\faauto\ls3\adjustright\rin0\lin1077\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
\sbasedon0 \snext35 \slink87 \styrsid1456345 Bullet 3;}{\s36\ql \fi-358\li1435\ri0\sb120\sa120\widctlpar\jclisttab\tx1437\wrapdefault\aspalpha\aspnum\faauto\ls4\adjustright\rin0\lin1435\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext36 \styrsid1456345 Bullet 4;}{\s37\ql \fi-357\li1792\ri0\sb120\sa120\widctlpar
\jclisttab\tx1795\wrapdefault\aspalpha\aspnum\faauto\ls5\adjustright\rin0\lin1792\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext37 \styrsid1456345
Bullet 5;}{\s38\ql \fi-357\li2149\ri0\sb120\sa120\widctlpar\jclisttab\tx2152\wrapdefault\aspalpha\aspnum\faauto\ls6\adjustright\rin0\lin2149\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext38 \styrsid1456345 Bullet 6;}{\s39\ql \fi-357\li2506\ri0\sb120\sa120\widctlpar
\jclisttab\tx2509\wrapdefault\aspalpha\aspnum\faauto\ls7\adjustright\rin0\lin2506\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext39 \styrsid1456345
Bullet 7;}{\s40\ql \fi-357\li2863\ri0\sb120\sa120\widctlpar\jclisttab\tx2866\wrapdefault\aspalpha\aspnum\faauto\ls8\adjustright\rin0\lin2863\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext40 \styrsid1456345 Bullet 8;}{\s41\ql \fi-358\li3221\ri0\sb120\sa120\widctlpar
\jclisttab\tx3223\wrapdefault\aspalpha\aspnum\faauto\ls9\adjustright\rin0\lin3221\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
\sbasedon32 \snext41 \styrsid1456345 Bullet 9;}{\s42\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \ab\af38\afs28\alang1025 \ltrch\fcs0
\b\fs28\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext0 \styrsid1456345 Heading EULA;}{\s43\ql \li0\ri0\sb120\sa120\widctlpar\brdrb\brdrs\brdrw10\brsp20
\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \ab\af38\afs28\alang1025 \ltrch\fcs0 \b\fs28\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext0 \styrsid1456345
Heading Software Title;}{\s44\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
\b\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext44 \slink95 \styrsid1456345 Preamble;}{\s45\ql \li0\ri0\sb120\sa120\widctlpar\brdrb\brdrs\brdrw10\brsp20
\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0 \b\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext1 \styrsid1456345 Preamble Border;}{
\s46\qc \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0 \b\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
\sbasedon0 \snext46 \styrsid1456345 Heading Warranty;}{\s47\ql \fi-360\li360\ri0\sb120\sa120\widctlpar\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls11\outlinelevel0\adjustright\rin0\lin360\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext0 \styrsid1456345 Heading 1 Warranty;}{\s48\ql \fi-360\li720\ri0\sb120\sa120\widctlpar
\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls11\ilvl1\outlinelevel1\adjustright\rin0\lin720\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
\sbasedon0 \snext0 \styrsid1456345 Heading 2 Warranty;}{\s49\ql \fi-357\li1077\ri0\sb120\sa120\widctlpar\tx1077\jclisttab\tx1440\wrapdefault\aspalpha\aspnum\faauto\ls10\ilvl2\outlinelevel2\adjustright\rin0\lin1077\itap0 \rtlch\fcs1
\ab\af38\afs19\alang1025 \ltrch\fcs0 \b\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon3 \snext49 \styrsid1456345 Heading 3 Bold;}{\s50\ql \fi-358\li1435\ri0\sb120\sa120\widctlpar
\jclisttab\tx1437\wrapdefault\aspalpha\aspnum\faauto\ls4\adjustright\rin0\lin1435\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\ul\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
\sbasedon36 \snext50 \styrsid1456345 Bullet 4 Underline;}{\s51\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
\fs19\ul\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon35 \snext51 \styrsid1456345 Bullet 3 Underline;}{\s52\ql \li720\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin720\itap0
\rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\ul\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon25 \snext52 \styrsid1456345 Body 2 Underline;}{
\s53\ql \li1077\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin1077\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\ul\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
\sbasedon26 \snext53 \styrsid1456345 Body 3 Underline;}{\s54\ql \li0\ri0\sb120\sa120\sl480\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext54 \slink55 \styrsid1456345 Body Text Indent;}{\*\cs55 \additive \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \f38\fs19
\sbasedon10 \slink54 \slocked \ssemihidden \styrsid1456345 Body Text Indent Char;}{\s56\ql \fi-358\li1435\ri0\sb120\sa120\widctlpar\jclisttab\tx1437\wrapdefault\aspalpha\aspnum\faauto\ls4\adjustright\rin0\lin1435\itap0 \rtlch\fcs1
\ai\af38\afs19\alang1025 \ltrch\fcs0 \i\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon36 \snext56 \styrsid1456345 Bullet 4 Italics;}{\*\cs57 \additive \rtlch\fcs1 \af38 \ltrch\fcs0
\f38\lang1033\langfe1033\langnp1033\langfenp1033 \sbasedon10 \styrsid1456345 Body 2 Char;}{\*\cs58 \additive \rtlch\fcs1 \af38 \ltrch\fcs0 \f38\lang1033\langfe1033\langnp1033\langfenp1033 \sbasedon10 \styrsid1456345 Body 3 Char;}{\*\cs59 \additive
\rtlch\fcs1 \af38 \ltrch\fcs0 \f38\lang1033\langfe1033\langnp1033\langfenp1033 \sbasedon10 \styrsid1456345 Body 4 Char;}{\*\cs60 \additive \rtlch\fcs1 \af38 \ltrch\fcs0 \f38\lang1033\langfe1033\langnp1033\langfenp1033 \sbasedon10 \styrsid1456345
Body 1 Char;}{\s61\ql \li0\ri0\sb120\sa120\widctlpar\brdrt\brdrs\brdrw10\brsp20 \wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
\b\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon44 \snext61 \styrsid1456345 Preamble Border Above;}{\s62\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0
\rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext62 \slink63 \ssemihidden \styrsid1456345 footnote text;}{\*\cs63 \additive \rtlch\fcs1 \af38\afs20
\ltrch\fcs0 \f38\fs20 \sbasedon10 \slink62 \slocked \ssemihidden \styrsid1456345 Footnote Text Char;}{\*\cs64 \additive \rtlch\fcs1 \af0 \ltrch\fcs0 \super \sbasedon10 \ssemihidden \styrsid1456345 footnote reference;}{
\s65\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
\sbasedon0 \snext65 \slink66 \ssemihidden \styrsid1456345 endnote text;}{\*\cs66 \additive \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \f38\fs20 \sbasedon10 \slink65 \slocked \ssemihidden \styrsid1456345 Endnote Text Char;}{\*\cs67 \additive \rtlch\fcs1 \af0
\ltrch\fcs0 \super \sbasedon10 \ssemihidden \styrsid1456345 endnote reference;}{\s68\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext68 \slink69 \ssemihidden \styrsid1456345 annotation text;}{\*\cs69 \additive \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \f38\fs20
\sbasedon10 \slink68 \slocked \ssemihidden \styrsid1456345 Comment Text Char;}{\*\cs70 \additive \rtlch\fcs1 \af0\afs16 \ltrch\fcs0 \fs16 \sbasedon10 \ssemihidden \styrsid1456345 annotation reference;}{\s71\ql \li0\ri0\sa160\sl-240\slmult0
\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext71 \styrsid1456345 Char;}{
\s72\ql \li0\ri0\sa160\sl-240\slmult0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
\sbasedon0 \snext72 \styrsid1456345 Char Char Char Char;}{\*\cs73 \additive \rtlch\fcs1 \af0 \ltrch\fcs0 \ul\cf2 \sbasedon10 \styrsid1456345 Hyperlink;}{\s74\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0
\rtlch\fcs1 \af38\afs16\alang1025 \ltrch\fcs0 \fs16\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext74 \slink75 \ssemihidden \styrsid1456345 Balloon Text;}{\*\cs75 \additive \rtlch\fcs1 \af38\afs16
\ltrch\fcs0 \f38\fs16 \sbasedon10 \slink74 \slocked \ssemihidden \styrsid1456345 Balloon Text Char;}{\*\cs76 \additive \rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang1033\langfe1033\langnp1033\langfenp1033 \sbasedon10 \styrsid1456345 Heading 2 Char1;}{\*
\cs77 \additive \rtlch\fcs1 \af0 \ltrch\fcs0 \sbasedon10 \styrsid1456345 page number;}{\s78\ql \li0\ri0\sa160\sl-240\slmult0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext78 \styrsid1456345 Char Char Char Char1;}{\s79\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1
\ab\af38\afs19\alang1025 \ltrch\fcs0 \b\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \snext0 \styrsid1456345 Body 0 Bold;}{\s80\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0
\rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \snext0 \styrsid1456345 Body 0;}{\s81\ql \li0\ri0\sb120\sa120\widctlpar
\tqc\tx4320\tqr\tx8640\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
\sbasedon0 \snext81 \slink82 \styrsid1456345 header;}{\*\cs82 \additive \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \f38\fs19 \sbasedon10 \slink81 \slocked \styrsid1456345 Header Char;}{\s83\ql \li0\ri0\sb120\sa120\widctlpar
\tqc\tx4320\tqr\tx8640\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
\sbasedon0 \snext83 \slink84 \styrsid1456345 footer;}{\*\cs84 \additive \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \f38\fs19 \sbasedon10 \slink83 \slocked \ssemihidden \styrsid1456345 Footer Char;}{
\s85\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \ab\af38\afs20\alang1025 \ltrch\fcs0 \b\fs20\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
\sbasedon68 \snext68 \slink86 \ssemihidden \sunhideused \styrsid1456345 annotation subject;}{\*\cs86 \additive \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\f38\fs20 \sbasedon69 \slink85 \slocked \ssemihidden \styrsid1456345 Comment Subject Char;}{\*\cs87
\additive \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \f38\fs19 \sbasedon10 \slink35 \slocked \styrsid1456345 Bullet 3 Char1;}{\s88\ql \fi-357\li1077\ri0\sb120\sa120\widctlpar\jclisttab\tx1080\wrapdefault\aspalpha\aspnum\faauto\ls3\adjustright\rin0\lin1077\itap0
\rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\ul\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon35 \snext88 \styrsid1456345 Bullet 3 Underlined;}{\*\cs89 \additive \rtlch\fcs1 \af38\afs19 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\langnp1033\langfenp1033 \sbasedon10 \styrsid1456345 Char Char;}{\s90\ql \li0\ri0\sl-240\slmult0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1
\af38\afs20\alang1025 \ltrch\fcs0 \fs18\lang1033\langfe1033\loch\f39\hich\af39\dbch\af11\cgrid\langnp1033\langfenp1033 \snext90 \spriority0 \styrsid1456345 AdditionalSoftware;}{\*\cs91 \additive \rtlch\fcs1 \af38\afs24\alang1025 \ltrch\fcs0
\b\f39\fs24\lang1033\langfe1033\langnp1033\langfenp1033 \sbasedon10 \spriority0 \styrsid1456345 Char Char1;}{\s92\ql \fi-358\li1435\ri0\sb120\sa120\widctlpar\jclisttab\tx1437\wrapdefault\aspalpha\aspnum\faauto\ls4\adjustright\rin0\lin1435\itap0
\rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\ul\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon36 \snext92 \spriority0 \styrsid1456345 Bullet 4 Underlined;}{\s93\ql \fi-360\li360\ri0\sb120\sa120\widctlpar
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls31\adjustright\rin0\lin360\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
\sbasedon0 \snext93 \spriority0 \styrsid1456345 Heading French Warranty;}{\s94\ql \li720\ri0\sa200\sl276\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin720\itap0\contextualspace \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0
\fs22\lang1033\langfe1033\loch\f31506\hich\af31506\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext94 \sqformat \spriority34 \styrsid921734 List Paragraph;}{\*\cs95 \additive \rtlch\fcs1 \ab\af38\afs19 \ltrch\fcs0 \b\f38\fs19
\sbasedon10 \slink44 \slocked \styrsid14092627 Preamble Char;}{\*\cs96 \additive \rtlch\fcs1 \ab\af38\afs19 \ltrch\fcs0 \b\f38\fs19 \sbasedon95 \slink97 \slocked \styrsid14092627 Style Preamble + (Complex) Tahoma Char;}{
\s97\ql \li0\ri0\sb120\sa120\widctlpar\brdrt\brdrs\brdrw10\brsp20 \wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
\b\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon44 \snext97 \sautoupd \slink96 \styrsid14092627 Style Preamble + (Complex) Tahoma;}}{\*\listtable{\list\listtemplateid1367111956{\listlevel\levelnfc23
\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li360\jclisttab\tx360\lin360 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat0
\levelspace0\levelindent0{\leveltext\'00;}{\levelnumbers;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi0\li0\lin0 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat0\levelspace0\levelindent0{\leveltext\'00;}{\levelnumbers;}\rtlch\fcs1 \af0
\ltrch\fcs0 \fi0\li0\lin0 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat0\levelspace0\levelindent0{\leveltext\'00;}{\levelnumbers;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi0\li0\lin0 }{\listlevel\levelnfc0\levelnfcn0\leveljc0
\leveljcn0\levelfollow0\levelstartat0\levelspace0\levelindent0{\leveltext\'00;}{\levelnumbers;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi0\li0\lin0 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat0\levelspace0\levelindent0{\leveltext
\'00;}{\levelnumbers;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi0\li0\lin0 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat0\levelspace0\levelindent0{\leveltext\'00;}{\levelnumbers;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi0\li0\lin0 }
{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat0\levelspace0\levelindent0{\leveltext\'00;}{\levelnumbers;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi0\li0\lin0 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0
\levelstartat0\levelspace0\levelindent0{\leveltext\'00;}{\levelnumbers;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi0\li0\lin0 }{\listname ;}\listid-119}{\list\listtemplateid1821544400\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0
\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0
\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li1380\jclisttab\tx1380\lin1380 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2100\jclisttab\tx2100\lin2100 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext
\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li2820\jclisttab\tx2820\lin2820 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext
\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3540\jclisttab\tx3540\lin3540 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698693
\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4260\jclisttab\tx4260\lin4260 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698689
\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li4980\jclisttab\tx4980\lin4980 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698691
\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li5700\jclisttab\tx5700\lin5700 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698693
\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6420\jclisttab\tx6420\lin6420 }{\listname ;}\listid189493747}{\list\listtemplateid176468498\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0
\levelindent0{\leveltext\leveltemplateid692200086\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \s41\fi-358\li3221\jclisttab\tx3223\lin3221 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693
\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2160\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}
\f3\fbias0 \fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3600
\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4320\jclisttab\tx4320\lin4320 }
{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5040\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc23
\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li5760\jclisttab\tx5760\lin5760 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0
\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6480\jclisttab\tx6480\lin6480 }{\listname ;}\listid196815738}{\list\listtemplateid-1793664660{\listlevel\levelnfc3
\levelnfcn3\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'00.;}{\levelnumbers\'01;}\rtlch\fcs1 \ab\ai0\af0 \ltrch\fcs0 \b\i0\fbias0 \s47\fi-360\li360\jclisttab\tx360\lin360 }{\listlevel\levelnfc0\levelnfcn0
\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'01.;}{\levelnumbers\'01;}\rtlch\fcs1 \ab\ai0\af0 \ltrch\fcs0 \b\i0\fbias0 \s48\fi-360\li720\jclisttab\tx720\lin720 }{\listlevel\levelnfc2\levelnfcn2\leveljc0\leveljcn0
\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'02);}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-360\li1080\jclisttab\tx1080\lin1080 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1
\levelspace0\levelindent0{\leveltext\'03(\'03);}{\levelnumbers\'02;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0
{\leveltext\'03(\'04);}{\levelnumbers\'02;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-360\li1800\jclisttab\tx1800\lin1800 }{\listlevel\levelnfc2\levelnfcn2\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\'03(\'05);}{\levelnumbers\'02;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-360\li2160\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'06.;}{\levelnumbers\'01;}
\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-360\li2520\jclisttab\tx2520\lin2520 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'07.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0
\fbias0 \fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel\levelnfc2\levelnfcn2\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'08.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-360\li3240
\jclisttab\tx3240\lin3240 }{\listname ;}\listid394402059}{\list\listtemplateid1928476992{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'00.;}{\levelnumbers\'01;}\rtlch\fcs1
\ab\ai0\af39\afs20 \ltrch\fcs0 \b\i0\f39\fs20\fbias0 \fi-357\li357\jclisttab\tx360\lin357 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'01.;}{\levelnumbers\'01;}\rtlch\fcs1
\ab\ai0\af39\afs20 \ltrch\fcs0 \b\i0\f39\fs20\fbias0 \fi-363\li720\jclisttab\tx720\lin720 }{\listlevel\levelnfc2\levelnfcn2\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'02.;}{\levelnumbers\'01;}\rtlch\fcs1
\ab\ai0\af38\afs20 \ltrch\fcs0 \b\i0\f38\fs20\fbias0 \s49\fi-357\li1077\jclisttab\tx1440\lin1077 }{\listlevel\levelnfc3\levelnfcn3\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'03.;}{\levelnumbers\'01;}\rtlch\fcs1
\ab0\ai0\af39\afs20 \ltrch\fcs0 \b0\i0\strike0\f39\fs20\ulnone\fbias0 \fi-358\li1435\jclisttab\tx1437\lin1435 }{\listlevel\levelnfc1\levelnfcn1\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'04.;}{\levelnumbers
\'01;}\rtlch\fcs1 \ab0\ai0\af39\afs20 \ltrch\fcs0 \b0\i0\strike0\f39\fs20\ulnone\fbias0 \fi-357\li1792\jclisttab\tx2155\lin1792 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\'02\'05.;}{\levelnumbers\'01;}\rtlch\fcs1 \ab0\ai0\af39\afs20 \ltrch\fcs0 \b0\i0\f39\fs20\fbias0 \fi-357\li2149\jclisttab\tx2152\lin2149 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\'02\'06.;}{\levelnumbers\'01;}\rtlch\fcs1 \ab0\ai0\af39\afs20 \ltrch\fcs0 \b0\i0\f39\fs20\fbias0 \fi-357\li2506\jclisttab\tx2509\lin2506 }{\listlevel\levelnfc255\levelnfcn255\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0
{\leveltext\'02i.;}{\levelnumbers;}\rtlch\fcs1 \ab0\ai0\af39\afs20 \ltrch\fcs0 \b0\i0\f39\fs20\fbias0 \fi-357\li2863\jclisttab\tx2866\lin2863 }{\listlevel\levelnfc255\levelnfcn255\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0
{\leveltext\'02A.;}{\levelnumbers;}\rtlch\fcs1 \ab0\ai0\af39\afs20 \ltrch\fcs0 \b0\i0\f39\fs20\fbias0 \fi-358\li3221\jclisttab\tx3223\lin3221 }{\listname ;}\listid398796681}{\list\listtemplateid789093748\listhybrid{\listlevel\levelnfc23\levelnfcn23
\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid-317712510\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \s34\fi-363\li720\jclisttab\tx720\lin720 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0
\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0
\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2160\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691
\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3600\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}
\f10\fbias0 \fi-360\li4320\jclisttab\tx4320\lin4320 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5040
\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li5760\jclisttab\tx5760\lin5760 }{\listlevel
\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6480\jclisttab\tx6480\lin6480 }{\listname ;}\listid477573462}
{\list\listtemplateid-53848358{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'00.;}{\levelnumbers\'01;}\rtlch\fcs1 \ab\ai0\af38\afs20 \ltrch\fcs0 \b\i0\f38\fs20\fbias0 \s1
\fi-357\li357\jclisttab\tx360\lin357 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'01.;}{\levelnumbers\'01;}\rtlch\fcs1 \ab\ai0\af38\afs20 \ltrch\fcs0 \b\i0\f38\fs20\fbias0 \s2
\fi-363\li720\jclisttab\tx720\lin720 }{\listlevel\levelnfc2\levelnfcn2\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'02.;}{\levelnumbers\'01;}\rtlch\fcs1 \ab\ai0\af38\afs20 \ltrch\fcs0 \b\i0\f38\fs20\fbias0 \s3
\fi-357\li1077\jclisttab\tx1440\lin1077 }{\listlevel\levelnfc3\levelnfcn3\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'03.;}{\levelnumbers\'01;}\rtlch\fcs1 \ab0\ai0\af39\afs20 \ltrch\fcs0
\b0\i0\strike0\f39\fs20\ulnone\fbias0 \s4\fi-358\li1435\jclisttab\tx1437\lin1435 }{\listlevel\levelnfc1\levelnfcn1\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'04.;}{\levelnumbers\'01;}\rtlch\fcs1
\ab0\ai0\af39\afs20 \ltrch\fcs0 \b0\i0\strike0\f39\fs20\ulnone\fbias0 \s5\fi-357\li1792\jclisttab\tx2155\lin1792 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'05.;}{\levelnumbers
\'01;}\rtlch\fcs1 \ab0\ai0\af39\afs20 \ltrch\fcs0 \b0\i0\f39\fs20\fbias0 \s6\fi-357\li2149\jclisttab\tx2152\lin2149 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\'02\'06.;}{\levelnumbers\'01;}\rtlch\fcs1 \ab0\ai0\af39\afs20 \ltrch\fcs0 \b0\i0\f39\fs20\fbias0 \s7\fi-357\li2506\jclisttab\tx2509\lin2506 }{\listlevel\levelnfc255\levelnfcn255\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0
{\leveltext\'02i.;}{\levelnumbers;}\rtlch\fcs1 \ab0\ai0\af39\afs20 \ltrch\fcs0 \b0\i0\f39\fs20\fbias0 \s8\fi-357\li2863\jclisttab\tx2866\lin2863 }{\listlevel\levelnfc255\levelnfcn255\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0
{\leveltext\'02A.;}{\levelnumbers;}\rtlch\fcs1 \ab0\ai0\af39\afs20 \ltrch\fcs0 \b0\i0\f39\fs20\fbias0 \s9\fi-358\li3221\jclisttab\tx3223\lin3221 }{\listname ;}\listid752163927}{\list\listtemplateid-296591990\listhybrid{\listlevel\levelnfc23\levelnfcn23
\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \s40\fi-357\li2863\jclisttab\tx2866\lin2863 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1
\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2160\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0
\fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3600\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc23
\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4320\jclisttab\tx4320\lin4320 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0
\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5040\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li5760\jclisttab\tx5760\lin5760 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6480
\jclisttab\tx6480\lin6480 }{\listname ;}\listid810947713}{\list\listtemplateid285099256\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid-308626962
\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \s34\fi-357\li1077\jclisttab\tx1080\lin1077 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}
\f2\fbias0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2160
\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li2880\jclisttab\tx2880\lin2880 }
{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3600\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc23\levelnfcn23
\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4320\jclisttab\tx4320\lin4320 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0
\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5040\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1
\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li5760\jclisttab\tx5760\lin5760 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6480\jclisttab\tx6480\lin6480 }{\listname ;}\listid1121073746}{\list\listtemplateid-1813845996\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0
\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \s39\fi-357\li2506\jclisttab\tx2509\lin2506 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2160
\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel\levelnfc23
\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3600\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1
\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4320\jclisttab\tx4320\lin4320 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5040\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li5760
\jclisttab\tx5760\lin5760 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6480\jclisttab\tx6480\lin6480 }{\listname
;}\listid1219436735}{\list\listtemplateid280937824\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0
\fi-360\li1124\lin1124 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li1844\lin1844 }{\listlevel
\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2564\lin2564 }{\listlevel\levelnfc23\levelnfcn23\leveljc0
\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li3284\lin3284 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0
\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li4004\lin4004 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0
\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4724\lin4724 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext
\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5444\lin5444 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698691
\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li6164\lin6164 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0
\fi-360\li6884\lin6884 }{\listname ;}\listid1422722544}{\list\listtemplateid303218272\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid612407812
\'01\u-3913 ?;}{\levelnumbers;}\f3\cf18\fbias0 \s36\fi-358\li1435\jclisttab\tx1437\lin1435 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0
\fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2160\jclisttab\tx2160\lin2160 }{\listlevel
\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0
\levelstartat1\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3600\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4320\jclisttab\tx4320\lin4320 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0
\fi-360\li5040\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li5760\jclisttab\tx5760\lin5760 }{\listlevel\levelnfc23
\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6480\jclisttab\tx6480\lin6480 }{\listname ;}\listid1559511898}{\list\listtemplateid-743794326\listhybrid
{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid2033377338\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \s35\fi-357\li1077\jclisttab\tx1080\lin1077 }{\listlevel\levelnfc23
\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0
\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2160\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1
\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0
{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3600\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693
\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4320\jclisttab\tx4320\lin4320 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}
\f3\fbias0 \fi-360\li5040\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li5760
\jclisttab\tx5760\lin5760 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6480\jclisttab\tx6480\lin6480 }
{\listname ;}\listid1567649130}{\list\listtemplateid-154908222\listhybrid{\listlevel\levelnfc3\levelnfcn3\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid-596080174\'02\'00.;}{\levelnumbers\'01;}
\rtlch\fcs1 \ab\ai0\af0 \ltrch\fcs0 \b\i0\fbias0 \s93\fi-360\li360\jclisttab\tx360\lin360 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698713\'02\'01.;}{\levelnumbers
\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698715\'02\'02.;}{\levelnumbers\'01;}
\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li2160\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698703\'02\'03.;}{\levelnumbers\'01;}\rtlch\fcs1
\af0 \ltrch\fcs0 \fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698713\'02\'04.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0
\ltrch\fcs0 \fi-360\li3600\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698715\'02\'05.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0
\fi-180\li4320\jclisttab\tx4320\lin4320 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698703\'02\'06.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li5040
\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698713\'02\'07.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li5760
\jclisttab\tx5760\lin5760 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698715\'02\'08.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li6480
\jclisttab\tx6480\lin6480 }{\listname ;}\listid1795057320}{\list\listtemplateid-961874242\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid-1175557160
\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \s37\fi-357\li1792\jclisttab\tx1795\lin1792 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}
\f2\fbias0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li2160
\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li2880\jclisttab\tx2880\lin2880 }
{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3600\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc23\levelnfcn23
\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4320\jclisttab\tx4320\lin4320 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0
\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5040\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1
\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li5760\jclisttab\tx5760\lin5760 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6480\jclisttab\tx6480\lin6480 }{\listname ;}\listid1848404271}{\list\listtemplateid-1802592190\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0
\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid1229593488\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \s38\fi-357\li2149\jclisttab\tx2152\lin2149 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0
\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2160\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689
\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}
\f2\fbias0 \fi-360\li3600\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4320
\jclisttab\tx4320\lin4320 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5040\jclisttab\tx5040\lin5040 }
{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li5760\jclisttab\tx5760\lin5760 }{\listlevel\levelnfc23\levelnfcn23
\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6480\jclisttab\tx6480\lin6480 }{\listname ;}\listid1877695764}{\list\listtemplateid1186249844
\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid1637229796\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \s33\fi-357\li357\jclisttab\tx360\lin357 }{\listlevel
\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0
\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2160\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0
\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0
\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3600\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4320\jclisttab\tx4320\lin4320 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689
\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5040\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}
\f2\fbias0 \fi-360\li5760\jclisttab\tx5760\lin5760 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6480
\jclisttab\tx6480\lin6480 }{\listname ;}\listid2054619191}{\list\listtemplateid758572558\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689
\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li720\lin720 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0
\fi-360\li1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2160\lin2160 }{\listlevel
\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li2880\lin2880 }{\listlevel\levelnfc23\levelnfcn23\leveljc0
\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3600\lin3600 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1
\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4320\lin4320 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0
\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5040\lin5040 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext
\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li5760\lin5760 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698693
\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6480\lin6480 }{\listname ;}\listid2085955335}{\list\listtemplateid-235387302\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0
{\leveltext\leveltemplateid-1242156798\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li360\lin360 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698713
\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li1080\lin1080 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698715\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0
\fi-360\li1800\lin1800 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698703\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li2520\lin2520 }{\listlevel
\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698713\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3240\lin3240 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0
\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698715\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li3960\lin3960 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1
\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698703\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li4680\lin4680 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0
\levelindent0{\leveltext\leveltemplateid67698713\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li5400\lin5400 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext
\leveltemplateid67698715\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6120\lin6120 }{\listname ;}\listid2106606675}}{\*\listoverridetable{\listoverride\listid2054619191\listoverridecount0\ls1}{\listoverride\listid477573462\listoverridecount0\ls2}
{\listoverride\listid1567649130\listoverridecount0\ls3}{\listoverride\listid1559511898\listoverridecount0\ls4}{\listoverride\listid1848404271\listoverridecount0\ls5}{\listoverride\listid1877695764\listoverridecount0\ls6}{\listoverride\listid1219436735
\listoverridecount0\ls7}{\listoverride\listid810947713\listoverridecount0\ls8}{\listoverride\listid196815738\listoverridecount0\ls9}{\listoverride\listid398796681\listoverridecount0\ls10}{\listoverride\listid394402059\listoverridecount0\ls11}
{\listoverride\listid752163927\listoverridecount0\ls12}{\listoverride\listid189493747\listoverridecount0\ls13}{\listoverride\listid2106606675\listoverridecount0\ls14}{\listoverride\listid1559511898\listoverridecount0\ls15}{\listoverride\listid1848404271
\listoverridecount0\ls16}{\listoverride\listid1848404271\listoverridecount0\ls17}{\listoverride\listid1848404271\listoverridecount0\ls18}{\listoverride\listid1848404271\listoverridecount0\ls19}{\listoverride\listid1848404271\listoverridecount0\ls20}
{\listoverride\listid1848404271\listoverridecount0\ls21}{\listoverride\listid1848404271\listoverridecount0\ls22}{\listoverride\listid1848404271\listoverridecount0\ls23}{\listoverride\listid1848404271\listoverridecount0\ls24}{\listoverride\listid1422722544
\listoverridecount0\ls25}{\listoverride\listid1848404271\listoverridecount0\ls26}{\listoverride\listid1848404271\listoverridecount0\ls27}{\listoverride\listid1848404271\listoverridecount0\ls28}{\listoverride\listid1559511898\listoverridecount0\ls29}
{\listoverride\listid1559511898\listoverridecount0\ls30}{\listoverride\listid1795057320\listoverridecount0\ls31}{\listoverride\listid1559511898\listoverridecount0\ls32}{\listoverride\listid2085955335\listoverridecount0\ls33}{\listoverride\listid1567649130
\listoverridecount9{\lfolevel}{\lfolevel}{\lfolevel}{\lfolevel}{\lfolevel}{\lfolevel}{\lfolevel}{\lfolevel}{\lfolevel}\ls34}{\listoverride\listid1559511898\listoverridecount9{\lfolevel}{\lfolevel}{\lfolevel}{\lfolevel}{\lfolevel}{\lfolevel}{\lfolevel}
{\lfolevel}{\lfolevel}\ls35}{\listoverride\listid1121073746\listoverridecount9{\lfolevel}{\lfolevel}{\lfolevel}{\lfolevel}{\lfolevel}{\lfolevel}{\lfolevel}{\lfolevel}{\lfolevel}\ls36}{\listoverride\listid-119\listoverridecount9{\lfolevel}{\lfolevel
\listoverridestartat\levelstartat0}{\lfolevel\listoverridestartat\levelstartat0}{\lfolevel\listoverridestartat\levelstartat0}{\lfolevel\listoverridestartat\levelstartat0}{\lfolevel\listoverridestartat\levelstartat0}{\lfolevel\listoverridestartat
\levelstartat0}{\lfolevel\listoverridestartat\levelstartat0}{\lfolevel\listoverridestartat\levelstartat0}\ls37}}{\*\pgptbl {\pgp\ipgp0\itap0\li0\ri0\sb0\sa0}}{\*\rsidtbl \rsid459234\rsid864014\rsid921734\rsid1456345\rsid1516446\rsid2370159\rsid3171405
\rsid3283580\rsid4090875\rsid6695507\rsid6971592\rsid7940540\rsid8259195\rsid8404268\rsid10029334\rsid14092627}{\mmathPr\mmathFont34\mbrkBin0\mbrkBinSub0\msmallFrac0\mdispDef1\mlMargin0\mrMargin0\mdefJc1\mwrapIndent1440\mintLim0\mnaryLim1}{\info
{\title English}{\creatim\yr2010\mo12\dy9\hr23\min18}{\revtim\yr2011\mo5\dy17\hr7\min10}{\version1}{\edmins0}{\nofpages5}{\nofwords2129}{\nofchars12139}{\nofcharsws14240}{\vern49273}}{\*\userprops {\propname db_document_id}\proptype30{\staticval 8666}
{\propname ContentTypeId}\proptype30{\staticval 0x010100BDA1A6A220A40A419EFB9E5917ACC6AD}{\propname _CopySource}\proptype30{\staticval }{\propname LicenseModel}\proptype30{\staticval }{\propname ProductID}\proptype30{\staticval }{\propname FileType}
\proptype30{\staticval }{\propname MScom}\proptype30{\staticval 1}{\propname Status}\proptype30{\staticval }{\propname Language}\proptype30{\staticval }{\propname ProductName}\proptype30{\staticval }{\propname Channel}\proptype30{\staticval }{\propname Or
iginator}\proptype30{\staticval }{\propname PublishDate}\proptype30{\staticval }{\propname RetirementDate}\proptype30{\staticval }{\propname SoftwareType}\proptype30{\staticval }{\propname ProductVersion}\proptype30{\staticval }{\propname Owner}
\proptype30{\staticval }}{\*\xmlnstbl {\xmlns1 http://schemas.microsoft.com/office/word/2003/wordml}}\paperw12240\paperh15840\margl720\margr720\margt720\margb720\gutter0\ltrsect
\widowctrl\ftnbj\aenddoc\trackmoves0\trackformatting1\donotembedsysfont0\relyonvml0\donotembedlingdata0\grfdocevents0\validatexml1\showplaceholdtext0\ignoremixedcontent0\saveinvalidxml0\showxmlerrors1\noxlattoyen
\expshrtn\noultrlspc\dntblnsbdb\nospaceforul\hyphcaps0\formshade\horzdoc\dgmargin\dghspace95\dgvspace180\dghorigin720\dgvorigin720\dghshow2\dgvshow1
\jexpand\viewkind1\viewscale100\pgbrdrhead\pgbrdrfoot\splytwnine\ftnlytwnine\htmautsp\nolnhtadjtbl\useltbaln\alntblind\lytcalctblwd\lyttblrtgr\lnbrkrule\nobrkwrptbl\snaptogridincell\rempersonalinfo\allowfieldendsel
\wrppunct\asianbrkrule\rsidroot1456345\newtblstyruls\nogrowautofit\usenormstyforlist\noindnmbrts\felnbrelev\nocxsptable\indrlsweleven\noafcnsttbl\afelev\utinl\hwelev\spltpgpar\notcvasp\notbrkcnstfrctbl\notvatxbx\krnprsnet\cachedcolbal \nouicompat \fet0
{\*\wgrffmtfilter 013f}\nofeaturethrottle1\ilfomacatclnup12{\*\ftnsep \ltrpar \pard\plain \ltrpar\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid459234 \chftnsep
\par }}{\*\ftnsepc \ltrpar \pard\plain \ltrpar\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid459234 \chftnsepc
\par }}{\*\aftnsep \ltrpar \pard\plain \ltrpar\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid459234 \chftnsep
\par }}{\*\aftnsepc \ltrpar \pard\plain \ltrpar\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid459234 \chftnsepc
\par }}\ltrpar \sectd \ltrsect\psz1\linex0\headery0\footery0\endnhere\sectlinegrid360\sectdefaultcl\sectrsid1456345\sftnbj {\headerl \ltrpar \pard\plain \ltrpar\s81\ql \li0\ri0\sb120\sa120\widctlpar
\tqc\tx4320\tqr\tx8640\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0
\insrsid1456345
\par }}{\headerr \ltrpar \pard\plain \ltrpar\s81\ql \li0\ri0\sb120\sa120\widctlpar\tqc\tx4320\tqr\tx8640\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \insrsid1456345
\par }}{\footerl \ltrpar \pard\plain \ltrpar\s83\ql \li0\ri0\sb120\sa120\widctlpar\tqc\tx4320\tqr\tx8640\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \insrsid1456345
\par }}{\footerr \ltrpar \pard\plain \ltrpar\s83\ql \li0\ri0\sb120\sa120\widctlpar\tqc\tx4320\tqr\tx8640\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \insrsid1456345
\par }}{\headerf \ltrpar \pard\plain \ltrpar\s81\ql \li0\ri0\sb120\sa120\widctlpar\tqc\tx4320\tqr\tx8640\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \insrsid1456345
\par }}{\footerf \ltrpar \pard\plain \ltrpar\s83\ql \li0\ri0\sb120\sa120\widctlpar\tqc\tx4320\tqr\tx8640\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \insrsid1456345
\par }}{\*\pnseclvl1\pnucrm\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl2\pnucltr\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl3\pndec\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl4\pnlcltr\pnstart1\pnindent720\pnhang {\pntxta )}}
{\*\pnseclvl5\pndec\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl6\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl7\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl8
\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}\pard\plain \ltrpar
\s42\ql \li0\ri0\sb120\sa120\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8259195 \rtlch\fcs1 \ab\af38\afs28\alang1025 \ltrch\fcs0
\b\fs28\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 {\*\bkmkstart _GoBack}{\*\bkmkend _GoBack}\hich\af38\dbch\af13\loch\f38
MICROSOFT SOFTWARE LICENSE TERMS}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
\par }\pard\plain \ltrpar\s43\ql \li0\ri0\sb120\sa120\nowidctlpar\brdrb\brdrs\brdrw10\brsp20 \wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8259195 \rtlch\fcs1 \ab\af38\afs28\alang1025 \ltrch\fcs0
\b\fs28\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 MICROSOFT SQL SERVER COMPACT 4.0 }{\rtlch\fcs1 \af38\afs20
\ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
\par }\pard\plain \ltrpar\s44\ql \li0\ri0\sb120\sa120\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8259195 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms
\hich\af38\dbch\af13\loch\f38 a\hich\af38\dbch\af13\loch\f38 lso apply to any Microsoft}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s34 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard\plain \ltrpar\s34\ql \fi-360\li360\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls2\adjustright\rin0\lin360\itap0\pararsid8259195 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1
\af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 updates,}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s34 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
supplements,}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s34 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
Internet-based services, and}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s34 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
support services}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
\par }\pard\plain \ltrpar\s44\ql \li0\ri0\sb120\sa120\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8259195 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
for this software, unless other terms accompany those items. If so, those terms apply.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid1456345
\par }{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0
\fs20\dbch\af13\insrsid1456345
\par }\pard\plain \ltrpar\s61\ql \li0\ri0\sb120\sa120\nowidctlpar\brdrt\brdrs\brdrw10\brsp20 \wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8259195 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 If you comply with these license terms, you have the rights below.}{
\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s1 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 1.\tab}}\pard\plain \ltrpar\s1\ql \fi-357\li357\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls12\outlinelevel0\adjustright\rin0\lin357\itap0\pararsid8259195 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0 \b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {
\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 INSTALLATION AND USE RIGHTS. }{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s2 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid921734 \hich\af38\dbch\af13\loch\f38 a.\tab}}\pard\plain \ltrpar\s2\ql \fi-363\li720\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl1\outlinelevel1\adjustright\rin0\lin720\itap0\pararsid8259195 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid921734 \hich\af38\dbch\af13\loch\f38 Installation and Use.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0
\cs57\b0\fs20\dbch\af13\insrsid921734 \hich\af38\dbch\af13\loch\f38 You may install and use any numb\hich\af38\dbch\af13\loch\f38 er of copies of the software on your devices to design, develop and test your programs for use with the software.
\par {\listtext\pard\plain\ltrpar \s2 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid921734\charrsid3283580 \hich\af38\dbch\af13\loch\f38 b.\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0
\fs20\dbch\af13\insrsid921734\charrsid3283580 \hich\af38\dbch\af13\loch\f38 Included Microsoft Programs. }{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid921734\charrsid3283580 \hich\af38\dbch\af13\loch\f38
The software contains the Microsoft Visual C++ 2008 Express}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid921734 \hich\af38\dbch\af13\loch\f38 }{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid10029334
\hich\af38\dbch\af13\loch\f38 Edition }{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid921734 \hich\af38\dbch\af13\loch\f38 components listed below}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0
\b0\fs20\dbch\af13\insrsid921734\charrsid3283580 \hich\af38\dbch\af13\loch\f38 . You may only use these components with the software.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid8259195 \hich\af38\dbch\af13\loch\f38 }{\rtlch\fcs1
\ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid921734\charrsid3283580 \hich\af38\dbch\af13\loch\f38 The Microsoft Visual C++ 2008 Express license terms located at }{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\cf17\insrsid921734\charrsid3283580
\hich\af38\dbch\af11\loch\f38 %Program Files%\\Microsoft SQL Server Compact Edition\\v4.0 }{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid921734\charrsid3283580 \hich\af38\dbch\af13\loch\f38
apply to your use of them, except that the components listed below may be used f\hich\af38\dbch\af13\loch\f38 or commercial hosting services when used in conjunction with the}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid921734
\hich\af38\dbch\af13\loch\f38 software.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid921734\charrsid3283580 \hich\af38\dbch\af13\loch\f38 }{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid921734
\par {\listtext\pard\plain\ltrpar \s94 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \f3\fs20\insrsid921734\charrsid3283580 \loch\af3\dbch\af11\hich\f3 \'b7\tab}}\pard\plain \ltrpar\s94\ql \fi-360\li1080\ri0\sb120\sa120\sl276\slmult1
\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\ls33\adjustright\rin0\lin1080\itap0\pararsid8259195\contextualspace \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0 \fs22\lang1033\langfe1033\loch\af31506\hich\af31506\dbch\af11\cgrid\langnp1033\langfenp1033 {
\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \f38\fs20\insrsid921734\charrsid3283580 \hich\af38\dbch\af11\loch\f38 Microsoft_VC90_CRT_x86.msm
\par {\listtext\pard\plain\ltrpar \s94 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \f3\fs20\insrsid921734\charrsid3283580 \loch\af3\dbch\af11\hich\f3 \'b7\tab}\hich\af38\dbch\af11\loch\f38 policy_9_0_Microsoft_VC90_CRT_x86.msm
\par {\listtext\pard\plain\ltrpar \s94 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \f3\fs20\insrsid921734\charrsid3283580 \loch\af3\dbch\af11\hich\f3 \'b7\tab}\hich\af38\dbch\af11\loch\f38 Microsoft_VC90_CRT_x86_x64.msm
\par {\listtext\pard\plain\ltrpar \s94 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \f3\fs20\insrsid921734\charrsid3283580 \loch\af3\dbch\af11\hich\f3 \'b7\tab}\hich\af38\dbch\af11\loch\f38 policy_9_0_Microsoft_VC90_CRT_x86_x64.msm
\par {\listtext\pard\plain\ltrpar \s94 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \f3\fs20\insrsid921734\charrsid3283580 \loch\af3\dbch\af11\hich\f3 \'b7\tab}\hich\af38\dbch\af11\loch\f38 VC90.CRT_X86_msvcr90.dll
\par {\listtext\pard\plain\ltrpar \s94 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \f3\fs20\lang1046\langfe1033\langnp1046\insrsid921734\charrsid864014 \loch\af3\dbch\af11\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0
\f38\fs20\lang1046\langfe1033\langnp1046\insrsid921734\charrsid864014 \hich\af38\dbch\af11\loch\f38 VC90.\hich\af38\dbch\af11\loch\f38 CRT_X86_Microsoft.VC90.CRT.manifest
\par {\listtext\pard\plain\ltrpar \s94 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \f3\fs20\insrsid921734\charrsid3283580 \loch\af3\dbch\af11\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \f38\fs20\insrsid921734\charrsid3283580 \hich\af38\dbch\af11\loch\f38
VC90.CRT_AMD64_msvcr90.dll
\par {\listtext\pard\plain\ltrpar \s94 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \f3\fs20\lang1046\langfe1033\langnp1046\insrsid921734\charrsid864014 \loch\af3\dbch\af11\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0
\f38\fs20\lang1046\langfe1033\langnp1046\insrsid921734\charrsid864014 \hich\af38\dbch\af11\loch\f38 VC90.CRT_AMD64_Microsoft.VC90.CRT.manifest
\par {\listtext\pard\plain\ltrpar \s1 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 2.\tab}}\pard\plain \ltrpar\s1\ql \fi-357\li357\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls12\outlinelevel0\adjustright\rin0\lin357\itap0\pararsid8259195 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0 \b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {
\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s2 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 a.\tab}}\pard\plain \ltrpar\s2\ql \fi-363\li720\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl1\outlinelevel1\adjustright\rin0\lin720\itap0\pararsid8259195 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 Distributable Code.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0
\cs57\b0\fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 The software contains code that you are per\hich\af38\dbch\af13\loch\f38 mitted to distribute in programs you develop if you comply with the terms below.}{\rtlch\fcs1 \ab0\af38\afs20
\ltrch\fcs0 \b0\fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s49 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 i.\tab}}\pard\plain \ltrpar\s49\ql \fi-357\li1077\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx1080\wrapdefault\aspalpha\aspnum\faauto\ls10\ilvl2\outlinelevel2\adjustright\rin0\lin1077\itap0\pararsid8259195 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 Right to Use and Distribute.}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0
\cs58\fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 \hich\f38 The code and text files listed below are \'93\loch\f38 \hich\f38 Distributable Code.\'94}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s50 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\cf18\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard\plain \ltrpar\s50\ql \fi-358\li1435\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx1437\wrapdefault\aspalpha\aspnum\faauto\ls4\adjustright\rin0\lin1435\itap0\pararsid8259195 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\ul\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1
\af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 REDIST.TXT Files}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\ulnone\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
. You may copy and distribute the object code form of code lis\hich\af38\dbch\af13\loch\f38 ted in REDIST.TXT files.}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\ulnone\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s50 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\cf18\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
\hich\af38\dbch\af13\loch\f38 Third Party Distribution}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\ulnone\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\ulnone\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s49 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 ii.\tab}}\pard\plain \ltrpar\s49\ql \fi-357\li1077\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx1077\wrapdefault\aspalpha\aspnum\faauto\ls10\ilvl2\outlinelevel2\adjustright\rin0\lin1077\itap0\pararsid8259195 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 Distribution Requirements.}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0
\cs58\fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 For any Distributable Code you distribute, you must}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s36 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\cf18\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard\plain \ltrpar\s36\ql \fi-358\li1435\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx1437\wrapdefault\aspalpha\aspnum\faauto\ls4\adjustright\rin0\lin1435\itap0\pararsid8259195 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1
\af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 add significant primary functionality to it in your programs;}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s36 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\cf18\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
\hich\af38\dbch\af13\loch\f38 for any Distributable Code having a filename extension of .lib, distribute only the results of running such Distributable Code through a linker with your program;}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0
\fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s36 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\cf18\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
\hich\af38\dbch\af13\loch\f38 distribute Distributable Co\hich\af38\dbch\af13\loch\f38 de included in a setup program only as part of that setup program without modification;}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s36 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\cf18\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
\hich\af38\dbch\af13\loch\f38 require distributors and external end users to agree to terms that protect it at least as much as this agreement; }{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s36 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\cf18\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
\hich\af38\dbch\af13\loch\f38 display your valid copyright notice on your progr\hich\af38\dbch\af13\loch\f38 ams; and}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s36 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\cf18\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
\hich\af38\dbch\af13\loch\f38 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\hich\f38 \rquote \loch\f38 fees, related to the distribution or use of your programs.}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0
\fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s49 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 iii.\tab}}\pard\plain \ltrpar\s49\ql \fi-357\li1077\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx1077\wrapdefault\aspalpha\aspnum\faauto\ls10\ilvl2\outlinelevel2\adjustright\rin0\lin1077\itap0\pararsid8259195 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 Distribution Restrictions.}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0
\cs58\fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 You may not}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s36 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\cf18\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard\plain \ltrpar\s36\ql \fi-358\li1435\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx1437\wrapdefault\aspalpha\aspnum\faauto\ls4\adjustright\rin0\lin1435\itap0\pararsid8259195 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1
\af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 alter any copyright, trademark or patent notice in the \hich\af38\dbch\af13\loch\f38 Distributable Code;}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0
\fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s36 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\cf18\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
\hich\af38\dbch\af13\loch\f38 use Microsoft\hich\f38 \rquote \loch\f38 s trademarks in your programs\hich\f38 \rquote \loch\f38 names or in a way that suggests your programs come from or are endorsed by Microsoft;}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0
\fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s36 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\cf18\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
\hich\af38\dbch\af13\loch\f38 distribute Distributable Code to run on a platform other than the Windows platform;}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s36 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\cf18\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
\hich\af38\dbch\af13\loch\f38 include Distributable Code in malicious, deceptive or unlawful programs; or}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s36 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\cf18\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
\hich\af38\dbch\af13\loch\f38 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condi\hich\af38\dbch\af13\loch\f38
tion of use, modification or distribution, that}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s37 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard\plain \ltrpar\s37\ql \fi-357\li1792\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx1795\wrapdefault\aspalpha\aspnum\faauto\ls5\adjustright\rin0\lin1792\itap0\pararsid8259195 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1
\af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 the code be disclosed or distributed in source code form; or}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s37 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
others have the right to modify it.}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s1 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 3.\tab}}\pard\plain \ltrpar\s1\ql \fi-357\li357\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls12\outlinelevel0\adjustright\rin0\lin357\itap0\pararsid8259195 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0 \b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {
\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 SCOPE OF LICENSE.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
The software is licensed, not sold. This agreement only gives you some rights to use t\hich\af38\dbch\af13\loch\f38
he software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in t
\hich\af38\dbch\af13\loch\f38 h\hich\af38\dbch\af13\loch\f38 e software that only allow you to use it in certain ways. You may not}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s34 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard\plain \ltrpar\s34\ql \fi-363\li720\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls2\adjustright\rin0\lin720\itap0\pararsid8259195 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1
\af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 work around any technical limitations in the software;}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s34 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, d\hich\af38\dbch\af13\loch\f38 espite this limitation;}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s34 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
make more copies of the software than specified in this agreement or allowed by applicable law, despite this limitation;}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s34 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
publish the software for others to copy;}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s34 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
rent, lease or lend the software;}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid921734 \hich\af38\dbch\af13\loch\f38 or}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s34 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
transfer the software or \hich\af38\dbch\af13\loch\f38 th}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid921734 \hich\af38\dbch\af13\loch\f38 is agreement to any third party. }{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0
\fs20\dbch\af13\insrsid1456345\charrsid921734
\par {\listtext\pard\plain\ltrpar \s1 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 4.\tab}}\pard\plain \ltrpar\s1\ql \fi-357\li357\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls12\outlinelevel0\adjustright\rin0\lin357\itap0\pararsid8259195 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0 \b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {
\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 BACKUP COPY.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
You may make one backup copy of the software. You may use it only to reinstall the software.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s1 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 5.\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
\hich\af38\dbch\af13\loch\f38 DOCUMENTATION.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 Any person that has valid acc\hich\af38\dbch\af13\loch\f38
ess to your computer or internal network may copy and use the documentation for your internal, reference purposes.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s1 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 6.\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
\hich\af38\dbch\af13\loch\f38 EXPORT RESTRICTIONS.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
The software is subject to United States export laws and regulations. You must comply with all domestic and internati\hich\af38\dbch\af13\loch\f38
onal export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see }{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \cs73\b0\fs20\dbch\af13\insrsid8404268
\hich\af38\dbch\af13\loch\f38 www.microsoft.com/exporting}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid8404268 .}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \cs73\b0\fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s1 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 7.\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
\hich\af38\dbch\af13\loch\f38 SUPPORT SERVICES. }{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 \hich\f38 Because this software is \'93\loch\f38 \hich\f38 as is,\'94\loch\f38 we may
\hich\af38\dbch\af13\loch\f38 not provide support services for it.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s1 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 8.\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
\hich\af38\dbch\af13\loch\f38 ENTIRE AGREEMENT.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s1 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 9.\tab}}\pard \ltrpar\s1\ql \fi-360\li360\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls12\outlinelevel0\adjustright\rin0\lin360\itap0\pararsid8259195 {\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 APPLICABLE LAW.}{\rtlch\fcs1
\af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s2 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 a.\tab}}\pard\plain \ltrpar\s2\ql \fi-363\li720\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl1\outlinelevel1\adjustright\rin0\lin720\itap0\pararsid8259195 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 United States.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0
\b0\fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live g
\hich\af38\dbch\af13\loch\f38 overn all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s2 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 b.\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
\hich\af38\dbch\af13\loch\f38 Outside the United States.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 If you acquired the software in any other country, the laws of that country apply.}{
\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s1 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 10.\tab}}\pard\plain \ltrpar\s1\ql \fi-357\li357\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls12\outlinelevel0\adjustright\rin0\lin357\itap0\pararsid8259195 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0 \b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {
\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 LEGAL EFFECT.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 This agr\hich\af38\dbch\af13\loch\f38
eement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your coun
\hich\af38\dbch\af13\loch\f38 t\hich\af38\dbch\af13\loch\f38 ry if the laws of your country do not permit it to do so.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s1 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 11.\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
\hich\af38\dbch\af13\loch\f38 \hich\f38 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \'93\loch\f38 \hich\f38 AS-IS.\'94\loch\f38
YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS \hich\af38\dbch\af13\loch\f38
UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.}{\rtlch\fcs1 \af38\afs20
\ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s1 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 12.\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
\hich\af38\dbch\af13\loch\f38 LIMITATION ON AND EXCLUSION OF\hich\af38\dbch\af13\loch\f38 REMEDIES AND DAMAGES}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\insrsid8404268 \hich\af38\dbch\af11\loch\f38
. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0
\fs20\insrsid1456345
\par }\pard\plain \ltrpar\s24\ql \li357\ri0\sb120\sa120\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin357\itap0\pararsid8259195 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 This limitation applies to}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0
\fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s34 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard\plain \ltrpar\s34\ql \fi-363\li720\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls2\adjustright\rin0\lin720\itap0\pararsid8259195 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1
\af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0
\fs20\dbch\af13\insrsid1456345
\par {\listtext\pard\plain\ltrpar \s34 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other t\hich\af38\dbch\af13\loch\f38 ort to the extent permitted by applicable law.}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0
\fs20\dbch\af13\insrsid1456345
\par }\pard\plain \ltrpar\ql \li360\ri0\sb120\sa120\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin360\itap0\pararsid8259195 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limi\hich\af38\dbch\af13\loch\f38
tation of incidental, consequential or other damages.}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
\par }\pard \ltrpar\ql \li0\ri0\sa200\sl276\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid14092627 \page
\par }\pard\plain \ltrpar\s42\ql \li0\ri0\sb120\sa120\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14092627 \rtlch\fcs1 \ab\af38\afs28\alang1025 \ltrch\fcs0
\b\fs28\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 MICROSOFT SOFTWARE SUPPLEMENTAL LICENSE TERMS
\par }\pard \ltrpar\s42\ql \li0\ri0\sb120\sa120\nowidctlpar\brdrb\brdrs\brdrw10\brsp20 \wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14092627 {\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid14092627
\hich\af38\dbch\af13\loch\f38 ENTITY FRAMEWORK 4.1
\par }\pard\plain \ltrpar\s44\ql \li0\ri0\sb120\sa120\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14092627 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \ab0\af38 \ltrch\fcs0 \b0\dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38
Microsoft Corporation (or based on where you live, one of its affiliates) licenses this supplement to you. If you are licensed to \hich\af38\dbch\af13\loch\f38 \hich\f38 use Microsoft Windows Operating System software (the \'93\loch\f38 \hich\f38 software
\'94\loch\f38 ), you may use this supplement. You may not use it if you do not have a license for the software. You may use this supplement with each validly licensed copy of the software.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0
\b0\fs20\dbch\af13\insrsid14092627
\par }{\rtlch\fcs1 \ab0\af38 \ltrch\fcs0 \b0\dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 The following lice\hich\af38\dbch\af13\loch\f38
nse terms describe additional use terms for this supplement. These terms and the license terms for the software apply to your use of the supplement. If there is a conflict, these supplemental license terms apply.
\par }{\rtlch\fcs1 \af38 \ltrch\fcs0 \dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 By using this supplement, you accept these \hich\af38\dbch\af13\loch\f38 terms. If you do not accept them, do not use this supplement.
\par }\pard\plain \ltrpar\s61\ql \li0\ri0\sb120\sa120\nowidctlpar\brdrt\brdrs\brdrw10\brsp20 \wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14092627 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 If you comply with these license terms, you have the rights below.
\par {\listtext\pard\plain\ltrpar \s1 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 13.\tab}}\pard\plain \ltrpar\s1\ql \fi-357\li357\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls12\outlinelevel0\adjustright\rin0\lin357\itap0\pararsid14092627 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0 \b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
{\rtlch\fcs1 \af38 \ltrch\fcs0 \dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 DISTRIBUTABLE CODE. }{\rtlch\fcs1 \ab0\af38 \ltrch\fcs0 \b0\dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 \hich\f38
The supplement is comprised of Distributable Code. \'93\loch\f38 \hich\f38 Distributable Code\'94\loch\f38 is code that you are permitted to d\hich\af38\dbch\af13\loch\f38 istribute in programs you develop if you comply with the terms below.
\par {\listtext\pard\plain\ltrpar \s2 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 a.\tab}}\pard\plain \ltrpar\s2\ql \fi-363\li720\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl1\outlinelevel1\adjustright\rin0\lin720\itap0\pararsid14092627 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 Right to Use and Distribute.
\par {\listtext\pard\plain\ltrpar \s51 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\loch\af3\hich\af3\dbch\af13\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard\plain \ltrpar\s51\ql \fi-357\li1077\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx1080\wrapdefault\aspalpha\aspnum\faauto\ls36\adjustright\rin0\lin1077\itap0\pararsid14092627 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\ul\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1
\af38 \ltrch\fcs0 \ulnone\dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 You may copy and distribute the object code form of the supplement.
\par {\listtext\pard\plain\ltrpar \s51 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\loch\af3\hich\af3\dbch\af13\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38 \ltrch\fcs0 \dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38
Third Party Distribution}{\rtlch\fcs1 \af38 \ltrch\fcs0 \ulnone\dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 . You may permit distributors of your programs to copy and distr\hich\af38\dbch\af13\loch\f38
ibute the Distributable Code as part of those programs.
\par {\listtext\pard\plain\ltrpar \s2 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 b.\tab}}\pard\plain \ltrpar\s2\ql \fi-363\li720\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl1\outlinelevel1\adjustright\rin0\lin720\itap0\pararsid14092627 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 Distribution Requirements. For any Distributable Code you distribute, you must
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\loch\af3\hich\af3\dbch\af13\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard\plain \ltrpar\s35\ql \fi-357\li1077\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx1080\wrapdefault\aspalpha\aspnum\faauto\ls34\adjustright\rin0\lin1077\itap0\pararsid14092627 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1
\af38 \ltrch\fcs0 \dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 add significant primary functionality to it in your programs;
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\loch\af3\hich\af3\dbch\af13\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38 for any Distributable Code having a filename extension of .
\hich\af38\dbch\af13\loch\f38 lib, distribute only the results of running such Distributable Code through a linker with your program;
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\loch\af3\hich\af3\dbch\af13\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38
distribute Distributable Code included in a setup program only as part of that setup program without modification;
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\loch\af3\hich\af3\dbch\af13\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38 require distributors and external en\hich\af38\dbch\af13\loch\f38
d users to agree to terms that protect it at least as much as this agreement;
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\loch\af3\hich\af3\dbch\af13\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38 display your valid copyright notice on your programs; and
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\loch\af3\hich\af3\dbch\af13\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38
indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\hich\f38 \rquote \loch\f38 fees, related to the distribution o\hich\af38\dbch\af13\loch\f38 r use of your programs.
\par {\listtext\pard\plain\ltrpar \s2 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 c.\tab}}\pard\plain \ltrpar\s2\ql \fi-363\li720\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl1\outlinelevel1\adjustright\rin0\lin720\itap0\pararsid14092627 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 Distribution Restrictions. You may not
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\loch\af3\hich\af3\dbch\af13\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard\plain \ltrpar\s35\ql \fi-357\li1077\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx1080\wrapdefault\aspalpha\aspnum\faauto\ls34\adjustright\rin0\lin1077\itap0\pararsid14092627 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1
\af38 \ltrch\fcs0 \dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 alter any copyright, trademark or patent notice in the Distributable Code;
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\loch\af3\hich\af3\dbch\af13\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38 use Microsoft\hich\f38 \rquote \loch\f38
s trademarks in your programs\hich\f38 \rquote \loch\f38 names or in a way that suggests your programs come from or are endorsed b\hich\af38\dbch\af13\loch\f38 y Microsoft;
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\loch\af3\hich\af3\dbch\af13\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38
distribute Distributable Code to run on a platform other than the Windows platform;
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\loch\af3\hich\af3\dbch\af13\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38
include Distributable Code in malicious, deceptive or unlawful programs; or
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\loch\af3\hich\af3\dbch\af13\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38
modify or distribute the source code of any Distributable Code so that any part of \hich\af38\dbch\af13\loch\f38 it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that
\par {\listtext\pard\plain\ltrpar \s36 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\cf18\loch\af3\hich\af3\dbch\af13\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard\plain \ltrpar\s36\ql \fi-358\li1435\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx1437\wrapdefault\aspalpha\aspnum\faauto\ls35\adjustright\rin0\lin1435\itap0\pararsid14092627 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1
\af38 \ltrch\fcs0 \dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 the code be disclosed or distributed in source code form; or
\par {\listtext\pard\plain\ltrpar \s36 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\cf18\loch\af3\hich\af3\dbch\af13\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38 others have the right to modify it.
\par {\listtext\pard\plain\ltrpar \s1 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 14.\tab}}\pard\plain \ltrpar\s1\ql \fi-357\li357\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls12\outlinelevel0\adjustright\rin0\lin357\itap0\pararsid14092627 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0 \b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
{\rtlch\fcs1 \af38 \ltrch\fcs0 \dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 SUPPORT SERVICES\hich\af38\dbch\af13\loch\f38 FOR SUPPLEMENT. }{\rtlch\fcs1 \ab0\af38 \ltrch\fcs0 \b0\dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38
Microsoft provides support services for this software as described at }{\rtlch\fcs1 \ab0\af0 \ltrch\fcs0 \cs73\b0\ul\cf2\dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 www.support.microsoft.com/common/international.aspx}{\rtlch\fcs1 \ab0\af38
\ltrch\fcs0 \b0\dbch\af13\insrsid14092627 .
\par }\pard\plain \ltrpar\ql \li0\ri0\sb120\sa120\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14092627 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \ab\af38 \ltrch\fcs0 \b\dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38
Please note: As this software is distributed in Quebec, Canada, these license terms are provided below in French.
\par }{\rtlch\fcs1 \ab\af38 \ltrch\fcs0 \b\lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 \hich\f38 Remarque: Ce logiciel \'e9\loch\f38 \hich\f38 tant distribu\'e9\loch\f38 \hich\f38 au Qu\'e9\loch\f38 \hich\f38
bec, Canada, les termes de cette licence sont fournis ci-dessous en fran\'e7\loch\f38 ais.
\par }{\rtlch\fcs1 \af38 \ltrch\fcs0 \lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627
\par }\pard\plain \ltrpar\s42\ql \li0\ri0\sb120\sa120\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14092627 \rtlch\fcs1 \ab\af38\afs28\alang1025 \ltrch\fcs0
\b\fs28\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \fs20\lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 TERMES DU CONTRAT DE LICENCE D\hich\f38
\rquote \loch\f38 \hich\f38 UN SUPPL\'c9\loch\f38 MENT MICROSOFT
\par }\pard\plain \ltrpar\s44\ql \li0\ri0\sb120\sa120\nowidctlpar\brdrb\brdrs\brdrw10\brsp20 \wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14092627 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \lang1024\langfe1024\dbch\af13\noproof\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 ENTITY FRAMEWORK 4.1}{\rtlch\fcs1 \af38
\ltrch\fcs0 \lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 }{\rtlch\fcs1 \af38 \ltrch\fcs0 \fs20\lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627
\par }\pard \ltrpar\s44\ql \li0\ri0\sb120\sa120\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14092627 {\rtlch\fcs1 \af38 \ltrch\fcs0 \b0\lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627
\hich\af38\dbch\af13\loch\f38 \hich\f38 Microsoft Corporation (ou en fonction du lieu o\'f9\loch\f38 vous vi\hich\af38\dbch\af13\loch\f38 vez, l\hich\f38 \rquote \loch\f38 \hich\f38 un de ses affili\'e9\loch\f38 \hich\f38
s) vous accorde une licence pour ce suppl\'e9\loch\f38 \hich\f38 ment. Si vous \'ea\loch\f38 tes titulaire d\hich\f38 \rquote \loch\f38 une licence d\hich\f38 \rquote \loch\f38 utilisation du logiciel }{\rtlch\fcs1 \af38 \ltrch\fcs0
\b0\lang1024\langfe1024\dbch\af13\noproof\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 Microsoft Windows Operating System}{\rtlch\fcs1 \af38 \ltrch\fcs0 \b0\lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627
\hich\af38\dbch\af13\loch\f38 \hich\f38 (le \'ab\~\loch\f38 logiciel\~\hich\f38 \'bb\loch\f38 \hich\f38 ), vous pouvez utiliser ce suppl\'e9\loch\f38 ment. Vous n\hich\f38 \rquote \'ea\loch\f38 \hich\f38 tes pas autoris\'e9\loch\f38 \hich\f38 \'e0
\loch\f38 util\hich\af38\dbch\af13\loch\f38 \hich\f38 iser ce suppl\'e9\loch\f38 ment si vous n\hich\f38 \rquote \'ea\loch\f38 tes pas titulaire d\hich\f38 \rquote \loch\f38 \hich\f38
une licence pour le logiciel. Vous pouvez utiliser une copie de ce suppl\'e9\loch\f38 \hich\f38 ment avec chaque copie conc\'e9\loch\f38 \hich\f38 d\'e9\loch\f38 e sous licence du logiciel.}{\rtlch\fcs1 \ab0\af38 \ltrch\fcs0 \cs96\insrsid14092627
\par }{\rtlch\fcs1 \af38 \ltrch\fcs0 \b0\lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 \hich\f38 Les conditions de licence suivantes d\'e9\loch\f38 crivent les conditions d\hich\f38 \rquote \loch\f38 utilisation
\hich\af38\dbch\af13\loch\f38 \hich\f38 suppl\'e9\loch\f38 \hich\f38 mentaires applicables pour ce suppl\'e9\loch\f38 \hich\f38 ment. Les pr\'e9\loch\f38 \hich\f38 sentes conditions et les conditions de licence pour le logiciel s'appliquent \'e0\loch\f38
\hich\f38 l'utilisation du suppl\'e9\loch\f38 \hich\f38 ment. En cas de conflit, les pr\'e9\loch\f38 \hich\f38 sentes conditions de licence suppl\'e9\loch\f38 mentaires s\hich\f38 \rquote \loch\f38 appliquent.}{\rtlch\fcs1 \af38 \ltrch\fcs0
\b0\insrsid14092627
\par }{\rtlch\fcs1 \af38 \ltrch\fcs0 \lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 En utili\hich\af38\dbch\af13\loch\f38 \hich\f38 sant ce suppl\'e9\loch\f38
ment, vous acceptez ces termes. Si vous ne les acceptez pas, n\hich\f38 \rquote \loch\f38 \hich\f38 utilisez pas ce suppl\'e9\loch\f38 ment.
\par }\pard \ltrpar\s44\ql \li0\ri0\sb120\sa120\nowidctlpar\brdrt\brdrs\brdrw10\brsp20 \wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14092627 {\rtlch\fcs1 \af38 \ltrch\fcs0 \lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627
\hich\af38\dbch\af13\loch\f38 \hich\f38 Dans le cadre du pr\'e9\loch\f38 sent accord de licence, vous disposez des droits ci-dessous.
\par {\listtext\pard\plain\ltrpar \s1 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\lang1036\langfe1033\loch\af38\hich\af38\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 15.\tab}}\pard\plain \ltrpar
\s1\ql \fi-357\li357\ri0\sb120\sa120\nowidctlpar\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls12\outlinelevel0\adjustright\rin0\lin357\itap0\pararsid14092627 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 CODE DISTRIBUABLE. }{\rtlch\fcs1 \ab0\af38
\ltrch\fcs0 \b0\lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 \hich\f38 Le suppl\'e9\loch\f38 \hich\f38 ment constitue du Code Distribuable. Le \'ab\~\hich\af38\dbch\af13\loch\f38 Code Distribuable\~\hich\f38 \'bb
\loch\f38 \hich\f38 est le code que vous \'ea\loch\f38 \hich\f38 tes autoris\'e9\loch\f38 \hich\f38 \'e0\loch\f38 \hich\f38 distribuer dans les programmes que vous d\'e9\loch\f38 \hich\f38 veloppez, sous r\'e9\loch\f38 \hich\f38
serve de vous conformer aux termes ci-apr\'e8\loch\f38 s.
\par {\listtext\pard\plain\ltrpar \s2 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\lang1036\langfe1033\loch\af38\hich\af38\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 a.\tab}}\pard\plain \ltrpar
\s2\ql \fi-363\li720\ri0\sb120\sa120\nowidctlpar\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl1\outlinelevel1\adjustright\rin0\lin720\itap0\pararsid14092627 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \ab0\af38 \ltrch\fcs0 \lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 Droit d\hich\f38 \rquote \loch\f38
utilisation et de distribution.
\par {\listtext\pard\plain\ltrpar \s51 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\lang1036\langfe1033\loch\af3\hich\af3\dbch\af13\langnp1036\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard\plain \ltrpar
\s51\ql \fi-357\li1077\ri0\sb120\sa120\nowidctlpar\jclisttab\tx1080\wrapdefault\aspalpha\aspnum\faauto\ls37\adjustright\rin0\lin1077\itap0\pararsid14092627 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
\fs19\ul\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \ulnone\lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 \hich\f38 Vous \'ea\loch\f38 \hich\f38
tes autoris\'e9\loch\f38 \hich\f38 \'e0\loch\f38 \hich\f38 copier et \'e0\loch\f38 distribuer la versio\hich\af38\dbch\af13\loch\f38 \hich\f38 n en code objet du suppl\'e9\loch\f38 ment.
\par {\listtext\pard\plain\ltrpar \s51 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\lang1036\langfe1033\loch\af3\hich\af3\dbch\af13\langnp1036\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard \ltrpar\s51\ql \fi-357\li1077\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx1080\wrapdefault\aspalpha\aspnum\faauto\ls36\adjustright\rin0\lin1077\itap0\pararsid14092627 {\rtlch\fcs1 \af38 \ltrch\fcs0 \lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38
Distribution par des tierces parties}{\rtlch\fcs1 \af38 \ltrch\fcs0 \ulnone\lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 \hich\f38 . Vous pouvez autoriser les distributeurs de vos programmes \'e0\loch\f38
\hich\f38 copier et \'e0\loch\f38 \hich\f38 distribuer le code distribuable en tant que partie int\'e9\loch\f38 grante de ces programmes.
\par {\listtext\pard\plain\ltrpar \s2 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\lang1036\langfe1033\loch\af38\hich\af38\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 b.\tab}}\pard\plain \ltrpar
\s2\ql \fi-363\li720\ri0\sb120\sa120\nowidctlpar\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl1\outlinelevel1\adjustright\rin0\lin720\itap0\pararsid14092627 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 Conditions de distribution. Pour p
\hich\af38\dbch\af13\loch\f38 ouvoir distribuer du code distribuable, vous devez\~:
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\lang1036\langfe1033\loch\af3\hich\af3\dbch\af13\langnp1036\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard\plain \ltrpar
\s35\ql \fi-357\li1077\ri0\sb120\sa120\nowidctlpar\jclisttab\tx1080\wrapdefault\aspalpha\aspnum\faauto\ls34\adjustright\rin0\lin1077\itap0\pararsid14092627 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 \hich\f38 y ajouter des fonctionnalit\'e9
\loch\f38 s importantes au sein de vos programmes,
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\lang1036\langfe1033\loch\af3\hich\af3\dbch\af13\langnp1036\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard \ltrpar\s35\ql \fi-357\li1077\ri0\sb120\sa120\widctlpar
\jclisttab\tx1080\wrapdefault\aspalpha\aspnum\faauto\ls34\adjustright\rin0\lin1077\itap0\pararsid14092627 {\rtlch\fcs1 \af38 \ltrch\fcs0 \lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38
pour tout Code distribuable dont l\hich\f38 \rquote \loch\f38 \hich\f38 extension de nom de fichier est .lib, distribuer seulement les r\'e9\loch\f38 sultats de l\hich\f38 \rquote \loch\f38 \hich\f38 ex\'e9\loch\f38 cution de ce Code
\hich\af38\dbch\af13\loch\f38 \hich\f38 distribuable \'e0\loch\f38 l\hich\f38 \rquote \loch\f38 aide d\hich\f38 \rquote \loch\f38 \hich\f38 un \'e9\loch\f38 diteur de liens avec votre programme\~;
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\lang1036\langfe1033\loch\af3\hich\af3\dbch\af13\langnp1036\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38
distribuer le Code distribuable inclus dans un programme d\hich\f38 \rquote \loch\f38 \hich\f38 installation seulement en tant que partie int\'e9\loch\f38 grante de ce programme sans modification\~;
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\lang1036\langfe1033\loch\af3\hich\af3\dbch\af13\langnp1036\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard \ltrpar\s35\ql \fi-357\li1077\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx1080\wrapdefault\aspalpha\aspnum\faauto\ls34\adjustright\rin0\lin1077\itap0\pararsid14092627 {\rtlch\fcs1 \af38 \ltrch\fcs0 \lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38
lier les distributeurs et les utilisateur\hich\af38\dbch\af13\loch\f38 \hich\f38 s externes par un contrat dont les termes les prot\'e8\loch\f38 \hich\f38 gent autant que le pr\'e9\loch\f38 sent contrat,
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\lang1036\langfe1033\loch\af3\hich\af3\dbch\af13\langnp1036\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38
afficher votre propre mention de droits d\hich\f38 \rquote \loch\f38 auteur valable sur vos programmes et
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\lang1036\langfe1033\loch\af3\hich\af3\dbch\af13\langnp1036\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38 \hich\f38 garantir et d\'e9\loch\f38
\hich\f38 fendre Microsoft contre toute r\'e9\loch\f38 clamation, y compris pour les honoraires d\hich\f38 \rquote \loch\f38 a\hich\af38\dbch\af13\loch\f38 \hich\f38 vocats, qui r\'e9\loch\f38 sulterait de la distribution ou l\hich\f38 \rquote \loch\f38
utilisation de vos programmes.
\par {\listtext\pard\plain\ltrpar \s2 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\lang1036\langfe1033\loch\af38\hich\af38\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 c.\tab}}\pard\plain \ltrpar
\s2\ql \fi-363\li720\ri0\sb120\sa120\nowidctlpar\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl1\outlinelevel1\adjustright\rin0\lin720\itap0\pararsid14092627 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 Restrictions de distribution. Vous n\hich\f38
\rquote \'ea\loch\f38 \hich\f38 tes pas autoris\'e9\loch\f38 \hich\f38 \'e0\~\loch\f38 :
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\lang1036\langfe1033\loch\af3\hich\af3\dbch\af13\langnp1036\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard\plain \ltrpar
\s35\ql \fi-357\li1077\ri0\sb120\sa120\nowidctlpar\jclisttab\tx1080\wrapdefault\aspalpha\aspnum\faauto\ls34\adjustright\rin0\lin1077\itap0\pararsid14092627 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 modifier toute mention de droits d\hich\f38
\rquote \loch\f38 auteur, de \hich\af38\dbch\af13\loch\f38 \hich\f38 marques ou de droits de propri\'e9\loch\f38 \hich\f38 t\'e9\loch\f38 industrielle pouvant figurer dans le code distribuable,
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\lang1036\langfe1033\loch\af3\hich\af3\dbch\af13\langnp1036\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38
utiliser les marques de Microsoft dans les noms de vos programmes ou d\hich\f38 \rquote \loch\f38 \hich\f38 une fa\'e7\loch\f38 \hich\f38 on qui sugg\'e8\loch\f38 \hich\f38 re que vos programmes sont fournis par Microsoft ou sous la responsabilit\'e9
\loch\f38 d\hich\af38\dbch\af13\loch\f38 e Microsoft,
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\lang1036\langfe1033\loch\af3\hich\af3\dbch\af13\langnp1036\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38 \hich\f38
distribuer le Code distribuable en vue de son ex\'e9\loch\f38 cution sur une plate-forme autre que la plate-forme\~Windows,
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\lang1036\langfe1033\loch\af3\hich\af3\dbch\af13\langnp1036\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38
inclure le Code distribuable dans des programmes malveillants, trompeurs ou interdits par la loi, ou
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\lang1036\langfe1033\loch\af3\hich\af3\dbch\af13\langnp1036\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38 modifier ou distribuer le code s
\hich\af38\dbch\af13\loch\f38 \hich\f38 ource de code distribuable de mani\'e8\loch\f38 \hich\f38 re \'e0\loch\f38 ce qu\hich\f38 \rquote \loch\f38 il fasse l\hich\f38 \rquote \loch\f38 \hich\f38 objet, en partie ou dans son int\'e9\loch\f38 \hich\f38
gralit\'e9\loch\f38 , d\hich\f38 \rquote \loch\f38 une Licence Exclue. Une Licence Exclue implique comme condition d\hich\f38 \rquote \loch\f38 utilisation, de modification ou de distribution, que\~:
\par {\listtext\pard\plain\ltrpar \s36 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\cf18\lang1036\langfe1033\loch\af3\hich\af3\dbch\af13\langnp1036\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard\plain \ltrpar
\s36\ql \fi-358\li1435\ri0\sb120\sa120\nowidctlpar\jclisttab\tx1437\wrapdefault\aspalpha\aspnum\faauto\ls35\adjustright\rin0\lin1435\itap0\pararsid14092627 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 \hich\f38 le code soit d\'e9\loch\f38 \hich\f38
voil\'e9\loch\f38 \hich\f38 ou distribu\'e9\loch\f38 \hich\af38\dbch\af13\loch\f38 dans sa forme de code source, ou
\par {\listtext\pard\plain\ltrpar \s36 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\cf18\lang1036\langfe1033\loch\af3\hich\af3\dbch\af13\langnp1036\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38 d\hich\f38 \rquote \loch\f38
autres aient le droit de le modifier.
\par {\listtext\pard\plain\ltrpar \s1 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\lang1036\langfe1033\loch\af38\hich\af38\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 16.\tab}}\pard\plain \ltrpar
\s1\ql \fi-357\li357\ri0\sb120\sa120\nowidctlpar\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls12\outlinelevel0\adjustright\rin0\lin357\itap0\pararsid14092627 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 SERVICES D\hich\f38 \rquote \loch\f38 \hich\f38
ASSISTANCE TECHNIQUE POUR LE SUPPL\'c9\loch\f38 MENT. }{\rtlch\fcs1 \ab0\af38 \ltrch\fcs0 \b0\lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 Microsoft fournit des services d\hich\f38 \rquote \loch\f38
assistance technique pour ce logiciel disponibles sur le site }{\rtlch\fcs1 \ab0\af0 \ltrch\fcs0 \cs73\b0\ul\cf2\lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 www.support.microsoft.com/common/int
\hich\af38\dbch\af13\loch\f38 ernational.aspx.}{\rtlch\fcs1 \ab0\af38 \ltrch\fcs0 \b0\lang2057\langfe2057\dbch\af13\langnp2057\langfenp2057\insrsid14092627
\par }\pard\plain \ltrpar\ql \li360\ri0\sb120\sa120\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin360\itap0\pararsid8259195 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid864014
\par }{\*\themedata 504b030414000600080000002100e9de0fbfff0000001c020000130000005b436f6e74656e745f54797065735d2e786d6cac91cb4ec3301045f748fc83e52d4a
9cb2400825e982c78ec7a27cc0c8992416c9d8b2a755fbf74cd25442a820166c2cd933f79e3be372bd1f07b5c3989ca74aaff2422b24eb1b475da5df374fd9ad
5689811a183c61a50f98f4babebc2837878049899a52a57be670674cb23d8e90721f90a4d2fa3802cb35762680fd800ecd7551dc18eb899138e3c943d7e503b6
b01d583deee5f99824e290b4ba3f364eac4a430883b3c092d4eca8f946c916422ecab927f52ea42b89a1cd59c254f919b0e85e6535d135a8de20f20b8c12c3b0
0c895fcf6720192de6bf3b9e89ecdbd6596cbcdd8eb28e7c365ecc4ec1ff1460f53fe813d3cc7f5b7f020000ffff0300504b030414000600080000002100a5d6
a7e7c0000000360100000b0000005f72656c732f2e72656c73848fcf6ac3300c87ef85bd83d17d51d2c31825762fa590432fa37d00e1287f68221bdb1bebdb4f
c7060abb0884a4eff7a93dfeae8bf9e194e720169aaa06c3e2433fcb68e1763dbf7f82c985a4a725085b787086a37bdbb55fbc50d1a33ccd311ba548b6309512
0f88d94fbc52ae4264d1c910d24a45db3462247fa791715fd71f989e19e0364cd3f51652d73760ae8fa8c9ffb3c330cc9e4fc17faf2ce545046e37944c69e462
a1a82fe353bd90a865aad41ed0b5b8f9d6fd010000ffff0300504b0304140006000800000021006b799616830000008a0000001c0000007468656d652f746865
6d652f7468656d654d616e616765722e786d6c0ccc4d0ac3201040e17da17790d93763bb284562b2cbaebbf600439c1a41c7a0d29fdbd7e5e38337cedf14d59b
4b0d592c9c070d8a65cd2e88b7f07c2ca71ba8da481cc52c6ce1c715e6e97818c9b48d13df49c873517d23d59085adb5dd20d6b52bd521ef2cdd5eb9246a3d8b
4757e8d3f729e245eb2b260a0238fd010000ffff0300504b03041400060008000000210096b5ade296060000501b0000160000007468656d652f7468656d652f
7468656d65312e786d6cec594f6fdb3614bf0fd87720746f6327761a07758ad8b19b2d4d1bc46e871e698996d850a240d2497d1bdae38001c3ba618715d86d87
615b8116d8a5fb34d93a6c1dd0afb0475292c5585e9236d88aad3e2412f9e3fbff1e1fa9abd7eec70c1d1221294fda5efd72cd4324f1794093b0eddd1ef62fad
79482a9c0498f184b4bd2991deb58df7dfbb8ad755446282607d22d771db8b944ad79796a40fc3585ee62949606ecc458c15bc8a702910f808e8c66c69b9565b
5d8a314d3c94e018c8de1a8fa94fd05093f43672e23d06af89927ac06762a049136785c10607758d9053d965021d62d6f6804fc08f86e4bef210c352c144dbab
999fb7b4717509af678b985ab0b6b4ae6f7ed9ba6c4170b06c788a705430adf71bad2b5b057d03606a1ed7ebf5babd7a41cf00b0ef83a6569632cd467faddec9
699640f6719e76b7d6ac355c7c89feca9cccad4ea7d36c65b258a206641f1b73f8b5da6a6373d9c11b90c537e7f08dce66b7bbeae00dc8e257e7f0fd2badd586
8b37a088d1e4600ead1ddaef67d40bc898b3ed4af81ac0d76a197c86826828a24bb318f3442d8ab518dfe3a20f000d6458d104a9694ac6d88728eee2782428d6
0cf03ac1a5193be4cbb921cd0b495fd054b5bd0f530c1931a3f7eaf9f7af9e3f45c70f9e1d3ff8e9f8e1c3e3073f5a42ceaa6d9c84e5552fbffdeccfc71fa33f
9e7ef3f2d117d57859c6fffac327bffcfc793510d26726ce8b2f9ffcf6ecc98baf3efdfdbb4715f04d814765f890c644a29be408edf3181433567125272371be
15c308d3f28acd249438c19a4b05fd9e8a1cf4cd296699771c393ac4b5e01d01e5a30a787d72cf1178108989a2159c77a2d801ee72ce3a5c545a6147f32a9979
3849c26ae66252c6ed637c58c5bb8b13c7bfbd490a75330f4b47f16e441c31f7184e140e494214d273fc80900aedee52ead87597fa824b3e56e82e451d4c2b4d
32a423279a668bb6690c7e9956e90cfe766cb37b077538abd27a8b1cba48c80acc2a841f12e698f13a9e281c57911ce298950d7e03aba84ac8c154f8655c4f2a
f074481847bd804859b5e696007d4b4edfc150b12addbecba6b18b148a1e54d1bc81392f23b7f84137c2715a851dd0242a633f900710a218ed715505dfe56e86
e877f0034e16bafb0e258ebb4faf06b769e888340b103d3311da9750aa9d0a1cd3e4efca31a3508f6d0c5c5c398602f8e2ebc71591f5b616e24dd893aa3261fb
44f95d843b5974bb5c04f4edafb95b7892ec1108f3f98de75dc97d5772bdff7cc95d94cf672db4b3da0a6557f70db629362d72bcb0431e53c6066acac80d699a
6409fb44d08741bdce9c0e4971624a2378cceaba830b05366b90e0ea23aaa241845368b0eb9e2612ca8c742851ca251ceccc70256d8d87265dd96361531f186c
3d9058edf2c00eafe8e1fc5c509031bb4d680e9f39a3154de0accc56ae644441edd76156d7429d995bdd88664a9dc3ad50197c38af1a0c16d684060441db0256
5e85f3b9660d0713cc48a0ed6ef7dedc2dc60b17e92219e180643ed27acffba86e9c94c78ab90980d8a9f0913ee49d62b512b79626fb06dccee2a432bbc60276
b9f7dec44b7904cfbca4f3f6443ab2a49c9c2c41476dafd55c6e7ac8c769db1bc399161ee314bc2e75cf8759081743be1236ec4f4d6693e5336fb672c5dc24a8
c33585b5fb9cc24e1d4885545b58463634cc5416022cd19cacfccb4d30eb45296023fd35a458598360f8d7a4003bbaae25e331f155d9d9a5116d3bfb9a95523e
51440ca2e0088dd844ec6370bf0e55d027a012ae264c45d02f708fa6ad6da6dce29c255df9f6cae0ec38666984b372ab5334cf640b37795cc860de4ae2816e95
b21be5ceaf8a49f90b52a51cc6ff3355f47e0237052b81f6800fd7b802239daf6d8f0b1571a8426944fdbe80c6c1d40e8816b88b8569082ab84c36ff0539d4ff
6dce591a26ade1c0a7f669880485fd484582903d284b26fa4e2156cff62e4b9265844c4495c495a9157b440e091bea1ab8aaf7760f4510eaa69a6465c0e04ec6
9ffb9e65d028d44d4e39df9c1a52ecbd3607fee9cec7263328e5d661d3d0e4f62f44acd855ed7ab33cdf7bcb8ae889599bd5c8b3029895b6825696f6af29c239
b75a5bb1e6345e6ee6c28117e73586c1a2214ae1be07e93fb0ff51e133fb65426fa843be0fb515c187064d0cc206a2fa926d3c902e907670048d931db4c1a449
59d366ad93b65abe595f70a75bf03d616c2dd959fc7d4e6317cd99cbcec9c58b34766661c7d6766ca1a9c1b327531486c6f941c638c67cd22a7f75e2a37be0e8
2db8df9f30254d30c1372581a1f51c983c80e4b71ccdd28dbf000000ffff0300504b0304140006000800000021000dd1909fb60000001b010000270000007468
656d652f7468656d652f5f72656c732f7468656d654d616e616765722e786d6c2e72656c73848f4d0ac2301484f78277086f6fd3ba109126dd88d0add40384e4
350d363f2451eced0dae2c082e8761be9969bb979dc9136332de3168aa1a083ae995719ac16db8ec8e4052164e89d93b64b060828e6f37ed1567914b284d2624
52282e3198720e274a939cd08a54f980ae38a38f56e422a3a641c8bbd048f7757da0f19b017cc524bd62107bd5001996509affb3fd381a89672f1f165dfe5141
73d9850528a2c6cce0239baa4c04ca5bbabac4df000000ffff0300504b01022d0014000600080000002100e9de0fbfff0000001c020000130000000000000000
0000000000000000005b436f6e74656e745f54797065735d2e786d6c504b01022d0014000600080000002100a5d6a7e7c0000000360100000b00000000000000
000000000000300100005f72656c732f2e72656c73504b01022d00140006000800000021006b799616830000008a0000001c0000000000000000000000000019
0200007468656d652f7468656d652f7468656d654d616e616765722e786d6c504b01022d001400060008000000210096b5ade296060000501b00001600000000
000000000000000000d60200007468656d652f7468656d652f7468656d65312e786d6c504b01022d00140006000800000021000dd1909fb60000001b01000027
00000000000000000000000000a00900007468656d652f7468656d652f5f72656c732f7468656d654d616e616765722e786d6c2e72656c73504b050600000000050005005d0100009b0a00000000}
{\*\colorschememapping 3c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d225554462d3822207374616e64616c6f6e653d22796573223f3e0d0a3c613a636c724d
617020786d6c6e733a613d22687474703a2f2f736368656d61732e6f70656e786d6c666f726d6174732e6f72672f64726177696e676d6c2f323030362f6d6169
6e22206267313d226c743122207478313d22646b3122206267323d226c743222207478323d22646b322220616363656e74313d22616363656e74312220616363
656e74323d22616363656e74322220616363656e74333d22616363656e74332220616363656e74343d22616363656e74342220616363656e74353d22616363656e74352220616363656e74363d22616363656e74362220686c696e6b3d22686c696e6b2220666f6c486c696e6b3d22666f6c486c696e6b222f3e}
{\*\latentstyles\lsdstimax267\lsdlockeddef0\lsdsemihiddendef1\lsdunhideuseddef1\lsdqformatdef0\lsdprioritydef99{\lsdlockedexcept \lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority0 \lsdlocked0 Normal;
\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 1;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 2;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 3;
\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 4;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 5;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 6;
\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 7;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 8;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 9;
\lsdpriority39 \lsdlocked0 toc 1;\lsdpriority39 \lsdlocked0 toc 2;\lsdpriority39 \lsdlocked0 toc 3;\lsdpriority39 \lsdlocked0 toc 4;\lsdpriority39 \lsdlocked0 toc 5;\lsdpriority39 \lsdlocked0 toc 6;\lsdpriority39 \lsdlocked0 toc 7;
\lsdpriority39 \lsdlocked0 toc 8;\lsdpriority39 \lsdlocked0 toc 9;\lsdqformat1 \lsdpriority35 \lsdlocked0 caption;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority10 \lsdlocked0 Title;\lsdpriority1 \lsdlocked0 Default Paragraph Font;
\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority11 \lsdlocked0 Subtitle;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority22 \lsdlocked0 Strong;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority20 \lsdlocked0 Emphasis;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority59 \lsdlocked0 Table Grid;\lsdunhideused0 \lsdlocked0 Placeholder Text;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority1 \lsdlocked0 No Spacing;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 1;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 1;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 1;\lsdunhideused0 \lsdlocked0 Revision;
\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority34 \lsdlocked0 List Paragraph;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority29 \lsdlocked0 Quote;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority30 \lsdlocked0 Intense Quote;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 1;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 1;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 2;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 2;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 2;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 2;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 2;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 3;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 3;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 3;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 3;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 3;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 4;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 4;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 4;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 4;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 5;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 5;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 5;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 5;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 5;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 6;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 6;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 6;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 6;
\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 6;
\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority19 \lsdlocked0 Subtle Emphasis;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority21 \lsdlocked0 Intense Emphasis;
\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority31 \lsdlocked0 Subtle Reference;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority32 \lsdlocked0 Intense Reference;
\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority33 \lsdlocked0 Book Title;\lsdpriority37 \lsdlocked0 Bibliography;\lsdqformat1 \lsdpriority39 \lsdlocked0 TOC Heading;}}{\*\datastore 010500000200000018000000
4d73786d6c322e534158584d4c5265616465722e362e30000000000000000000004a0000
d0cf11e0a1b11ae1000000000000000000000000000000003e000300feff0900060000000000000000000000010000000100000000000000001000000200000001000000feffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
fffffffffffffffffdffffff04000000feffffff050000000e000000060000000700000008000000090000000a0000000b0000000c0000000d0000000f000000110000001000000022000000feffffff130000001400000015000000160000001700000018000000190000001a0000001b0000001c0000001d0000001e00
00001f0000002000000021000000feffffff23000000feffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffff52006f006f007400200045006e00740072007900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000500ffffffffffffffff010000000c6ad98892f1d411a65f0040963251e5000000000000000000000000a0ad
e83b9c14cc0103000000c01a0000000000004d0073006f004400610074006100530074006f0072006500000000000000000000000000000000000000000000000000000000000000000000000000000000001a000101ffffffffffffffff050000000000000000000000000000000000000000000000a0ade83b9c14cc01
a0ade83b9c14cc01000000000000000000000000c70053005a00db00c300dd004e00c300c800d40053003100c800420044005500d80059004600ca00430051003d003d000000000000000000000000000000000032000101ffffffffffffffff030000000000000000000000000000000000000000000000a0ade83b9c14
cc01a0ade83b9c14cc010000000000000000000000004900740065006d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000201ffffffff04000000ffffffff000000000000000000000000000000000000000000000000
00000000000000000000000000000000c100000000000000010000000200000003000000feffffff0500000006000000070000000800000009000000feffffff0b0000000c0000000d0000000e0000000f000000100000001100000012000000130000001400000015000000160000001700000018000000190000001a00
00001b0000001c0000001d0000001e0000001f000000200000002100000022000000230000002400000025000000260000002700000028000000290000002a0000002b0000002c0000002d0000002e0000002f00000030000000310000003200000033000000340000003500000036000000370000003800000039000000
3a0000003b0000003c0000003d0000003e0000003f00000040000000410000004200000043000000440000004500000046000000470000004800000049000000feffffff4b0000004c0000004d0000004e0000004f000000feffffff510000005200000053000000feffffff550000005600000057000000580000005900
0000feffffff5b0000005c0000005d0000005e0000005f000000600000006100000062000000630000006400000065000000660000006700000068000000690000006a000000feffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d227574662d3822207374616e64616c6f6e653d22796573223f3e3c44696374696f6e617279205361766564427956657273696f6e3d22332e362e31382e3022204d
696e696d756d56657273696f6e3d22332e362e342e302220786d6c6e733d22687474703a2f2f736368656d61732e627573696e6573732d696e746567726974792e636f6d2f6465616c6275696c6465722f323030362f64696374696f6e617279222f3e000000000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000003c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d225554462d3822207374616e64616c6f6e653d226e6f223f3e0d0a3c64733a6461746173746f72654974656d2064733a6974656d49443d227b38463742
323639442d363344332d343441332d394241302d3130443445313831364130397d2220786d6c6e733a64733d22687474703a2f2f736368656d61732e6f70656e786d6c666f726d6174732e6f72672f6f6666696365446f63756d656e742f323030362f637573746f6d586d6c223e3c64733a736368656d61526566733e3c
64733a736368656d615265662064733a7572693d22687474703a2f2f736368656d61732e62757369500072006f007000650072007400690065007300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000200ffffffffffffffffffffffff000000000000
000000000000000000000000000000000000000000000000000000000000040000005401000000000000ce00c90032004a0031005500d600cd004a00c4003400d500db00d8005900d3005800450045004100440041003d003d00000000000000000000000000000000003200010102000000080000000600000000000000
00000000000000000000000000000000a0ade83b9c14cc01a0ade83b9c14cc010000000000000000000000004900740065006d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000201ffffffff07000000ffffffff0000
000000000000000000000000000000000000000000000000000000000000000000000a000000f50f000000000000500072006f007000650072007400690065007300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000200ffffffffffffffffffffffff
0000000000000000000000000000000000000000000000000000000000000000000000004a00000051010000000000006e6573732d696e746567726974792e636f6d2f6465616c6275696c6465722f323030362f64696374696f6e617279222f3e3c2f64733a736368656d61526566733e3c2f64733a6461746173746f72
654974656d3e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000003c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d227574662d3822207374616e64616c6f6e653d22796573223f3e3c53657373696f6e20786d6c6e733d22687474703a
2f2f736368656d61732e627573696e6573732d696e746567726974792e636f6d2f6465616c6275696c6465722f323030362f616e7377657273223e3c5661726961626c65204e616d653d22636f6e74726163747265666572656e6365222052656c6576616e743d2266616c7365223e3c56616c75653e323031302d4d4149
4e422d3030313031333c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d226d73636f6d223e3c56616c75653e66616c73653c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d2266696c6574797065223e3c56616c75653e2e7274663c2f56616c7565
3e3c2f5661726961626c653e3c5661726961626c65204e616d653d226c616e6775616765616c6c223e3c56616c75653e456e676c6973683c2f56616c75653e3c56616c75653e4368696e657365202853696d706c6966696564293c2f56616c75653e3c56616c75653e4368696e6573652028547261646974696f6e616c29
3c2f56616c75653e3c56616c75653e437a6563683c2f56616c75653e3c56616c75653e4672656e63683c2f56616c75653e3c56616c75653e4765726d616e3c2f56616c75653e3c56616c75653e4974616c69616e3c2f56616c75653e3c56616c75653e4a6170616e6573653c2f56616c75653e3c56616c75653e4b6f7265
616e3c2f56616c75653e3c56616c75653e506f6c6973683c2f56616c75653e3c56616c75653e506f727475677565736520284272617a696c293c2f56616c75653e3c56616c75653e5275737369616e3c2f56616c75653e3c56616c75653e5370616e6973683c2f56616c75653e3c56616c75653e5475726b6973683c2f56
616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d225f5f72657175657374646967657374222052656c6576616e743d2266616c7365223e3c56616c75653e3078464532363934364137393337363741383635383139334236383646353743433745453838394237353842444536304337444435
39313644303831354244424344374335363534444137353735353430323832393342384331414345463833393630344143344634383342454533313330394235394442384434393734454335322c30392044656320323031302032323a32323a3430202d303030303c2f56616c75653e3c2f5661726961626c653e3c5661
726961626c65204e616d653d225f5f6576656e7476616c69646174696f6e222052656c6576616e743d2266616c7365223e3c56616c75653e2f77455741674b4f3239697043414c623449756d444c2b75437032397970624e71637a6d5230493767414e52424e67333c2f56616c75653e3c2f5661726961626c653e3c5661
726961626c65204e616d653d2263746c303024706c616365686f6c6465726d61696e24686663657370636f6e74726163747265666572656e6365222052656c6576616e743d2266616c7365223e3c56616c75653e323031302d4d41494e422d3030313031333c2f56616c75653e3c2f5661726961626c653e3c5661726961
626c65204e616d653d2263616e616461617661696c223e3c56616c75653e747275653c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d2263616e6164616672656e6368223e3c56616c75653e747275653c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d
653d2266696c65666f726d6174223e3c56616c75653e66616c73653c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d22736f66747761726574797065223e3c56616c75653e467265652c205374616e64616c6f6e6520536f6674776172653c2f56616c75653e3c2f5661726961626c65
3e3c5661726961626c65204e616d653d2270726f647563746e616d65223e3c56616c75653e53514c2053657276657220436f6d7061637420342e303c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d226e756d6265726f66636f70696573223e3c56616c75653e416e79206e756d6265
72206f6620636f706965733c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d2270726f6475637476657273696f6e223e3c56616c75653e4e6f6e653c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d2276657273696f6e76697369626c65223e3c56
616c75653e66616c73653c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d226368616e6e656c223e3c56616c75653e52657461696c3c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d227374616e64616c6f6e657573657269676874223e3c56616c
75653e4f6e6c7920746f2064657369676e2c20646576656c6f7020616e64207465737420746865207573657227732070726f6772616d733c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d226d65646961656c656d656e747374656d706c61746573223e3c56616c75653e66616c7365
3c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d2264697374726962757461626c65636f6465223e3c56616c75653e747275653c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d2264697374726962757461626c65636f646574797065223e3c5661
6c75653e5265646973742e7478743c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d227265646973747478746f6e6c696e65223e3c56616c75653e66616c73653c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d22696e7465726e616c7265617373
69676e6d656e74223e3c56616c75653e66616c73653c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d226c6963656e73657472616e73666572223e3c56616c75653e66616c73653c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d226f746865726d
6963726f736f667470726f6772616d73223e3c56616c75653e747275653c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d226e65746672616d65776f726b223e3c56616c75653e66616c73653c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d226f
746865726d6963726f736f667470726f6772616d737465726d73223e3c56616c75653e546865207365706172617465206c6963656e7365207465726d73206173736f636961746564207769746820746865206f74686572204d6963726f736f66742070726f6772616d733c2f56616c75653e3c2f5661726961626c653e3c
5661726961626c65204e616d653d2270726572656c65617365636f6465223e3c56616c75653e66616c73653c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d227468697264706172747970726f6772616d73223e3c56616c75653e66616c73653c2f56616c75653e3c2f566172696162
6c653e3c5661726961626c65204e616d653d2262656e63686d61726b696e67223e3c56616c75653e66616c73653c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d226d706567223e3c56616c75653e66616c73653c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65
204e616d653d22696e7465726e657462617365647365727669636573223e3c56616c75653e66616c73653c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d225f5f6576656e7474617267657422204b6e6f776e3d2266616c7365222052656c6576616e743d2266616c7365222f3e3c56
61726961626c65204e616d653d225f5f6576656e74617267756d656e7422204b6e6f776e3d2266616c7365222052656c6576616e743d2266616c7365222f3e3c5661726961626c65204e616d653d226c61756e6368646976616374696f6e22204b6e6f776e3d2266616c7365222052656c6576616e743d2266616c736522
2f3e3c5661726961626c65204e616d653d225f5f737064756d6d79746578743122204b6e6f776e3d2266616c7365222052656c6576616e743d2266616c7365222f3e3c5661726961626c65204e616d653d225f5f737064756d6d79746578743222204b6e6f776e3d2266616c7365222052656c6576616e743d2266616c73
65222f3e3c5661726961626c65204e616d653d226f726967696e61746f72223e3c56616c75653e5245444d4f4e445c64636f7265793c2f56616c75653e3c2f5661726961626c653e3c506172616d65746572204e616d653d2264625f646973706c61795f616c6c5f636f6d6d656e7473223e3c56616c75653e66616c7365
3c2f56616c75653e3c2f506172616d657465723e3c506172616d65746572204e616d653d2264625f73686f775f73756d6d617279223e3c56616c75653e64697361626c65643c2f56616c75653e3c2f506172616d657465723e3c506172616d65746572204e616d653d2264625f74656d706c6174655f666f726d223e3c56
616c75653e35323032636439312d396439322d343338612d386637642d3630613864313464336162303c2f56616c75653e3c2f506172616d657465723e3c506172616d65746572204e616d653d2264625f74656d706c6174655f7265666572656e6365223e3c56616c75653e5553455445524d535f4d41494e423c2f5661
6c75653e3c2f506172616d657465723e3c506172616d65746572204e616d653d2264625f74656d706c6174655f76657273696f6e223e3c56616c75653e32303130313130393c2f56616c75653e3c2f506172616d657465723e3c506172616d65746572204e616d653d2264625f7472616e73616374696f6e5f6578746572
6e616c5f6c6162656c223e3c56616c75653e323031302d4d41494e422d3030313031333c2f56616c75653e3c2f506172616d657465723e3c506172616d65746572204e616d653d2264625f7472616e73616374696f6e5f6964223e3c56616c75653e333432323c2f56616c75653e3c2f506172616d657465723e3c506172
616d65746572204e616d653d2264625f766973697465645f7061676573223e3c56616c75653e313c2f56616c75653e3c56616c75653e323c2f56616c75653e3c56616c75653e333c2f56616c75653e3c56616c75653e343c2f56616c75653e3c56616c75653e363c2f56616c75653e3c56616c75653e373c2f56616c7565
3e3c56616c75653e313c2f56616c75653e3c56616c75653e323c2f56616c75653e3c56616c75653e333c2f56616c75653e3c56616c75653e313c2f56616c75653e3c56616c75653e313c2f56616c75653e3c2f506172616d657465723e3c2f53657373696f6e3e00000000000000000000003c3f786d6c2076657273696f
6e3d22312e302220656e636f64696e673d225554462d3822207374616e64616c6f6e653d226e6f223f3e0d0a3c64733a6461746173746f72654974656d2064733a6974656d49443d227b36443039393742412d414434442d343732362d423545462d3836333335433431303030437d2220786d6c6e733a64733d22687474
703a2f2f736368656d61732e6f70656e786d6c666f726d6174732e6f72672f6f6666696365446f63756d656e742f323030362f637573746f6d586d6c223e3c64733a736368656d61526566733e3c64733a736368656d615265662064733a7572693d22687474703a2f2f736368656d61732e627573696e6573732d696e74
6567726974792e636f6d2f6465616c6275696c6465722f323030362f616e7377657273222f3e3c2f64733a736368656d61526566733e3c2f64733a6461746173746f72654974656d3e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d100c7003500
c3004700c200c400d50056005500ca00dc00c600d30051004a004a003200dd00c600320041003d003d000000000000000000000000000000000032000101ffffffff0b000000090000000000000000000000000000000000000000000000a0ade83b9c14cc01a0ade83b9c14cc0100000000000000000000000049007400
65006d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000201ffffffff0a000000ffffffff00000000000000000000000000000000000000000000000000000000000000000000000050000000db000000000000005000
72006f007000650072007400690065007300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000200ffffffffffffffffffffffff000000000000000000000000000000000000000000000000000000000000000000000000540000004f01000000000000
d300c300d4004f005600d400c000440034005500ce00df004400ce005a005100c100df0034005400550051003d003d000000000000000000000000000000000032000100ffffffffffffffff0c0000000000000000000000000000000000000000000000a0ade83b9c14cc01a0ade83b9c14cc0100000000000000000000
00003c3f6d736f2d636f6e74656e74547970653f3e3c466f726d54656d706c6174657320786d6c6e733d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f7368617265706f696e742f76332f636f6e74656e74747970652f666f726d73223e3c446973706c61793e446f63756d656e744c696272
617279466f726d3c2f446973706c61793e3c456469743e446f63756d656e744c696272617279466f726d3c2f456469743e3c4e65773e446f63756d656e744c696272617279466f726d3c2f4e65773e3c2f466f726d54656d706c617465733e00000000000000000000000000000000000000000000000000000000000000
0000000000003c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d225554462d3822207374616e64616c6f6e653d226e6f223f3e0d0a3c64733a6461746173746f72654974656d2064733a6974656d49443d227b31414533373743362d333532392d344135352d424339422d33343039323543463636
37307d2220786d6c6e733a64733d22687474703a2f2f736368656d61732e6f70656e786d6c666f726d6174732e6f72672f6f6666696365446f63756d656e742f323030362f637573746f6d586d6c223e3c64733a736368656d61526566733e3c64733a736368656d615265662064733a7572693d22687474703a2f2f7363
68656d61732e6d6963726f736f66742e636f6d2f7368617265706f696e742f76332f636f6e74656e74747970652f666f726d73222f3e3c2f64733a736368656d61526566733e3c2f64733a6461746173746f72654974656d3e00000000000000000000000000000000000000000000000000000000000000000000000000
0000000000000000000000003c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d225554462d3822207374616e64616c6f6e653d226e6f223f3e0d0a3c64733a6461746173746f72654974656d2064733a6974656d49443d227b35373045334443452d303334382d344237392d424630452d45363530
38374637393335317d2220786d6c6e733a64733d22687474703a2f2f736368656d61732e6f70656e786d6c666f726d6174732e6f72672f6f6666696365446f63756d656e742f323030362f637573746f6d586d6c223e3c64733a736368656d61526566733e3c64733a736368656d615265662064733a7572693d22687474
703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f323030362f6d657461646174612f636f6e74656e7454797065222f3e3c64733a736368656d615265662064733a7572693d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f323030362f6d65
7461646174612f70726f706572746965732f4900740065006d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000201ffffffff0d000000ffffffff00000000000000000000000000000000000000000000000000000000
000000000000000012000000761f000000000000500072006f007000650072007400690065007300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000200ffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000
000000000000000000005a00000004040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff00000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000003c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d227574662d38223f3e3c63743a636f6e74656e7454797065536368656d612063743a5f3d2222206d613a5f3d2222206d613a636f6e74656e74547970654e616d653d22446f6375
6d656e7422206d613a636f6e74656e745479706549443d223078303130313030424441314136413232304134304134313945464239453539313741434336414422206d613a636f6e74656e745479706556657273696f6e3d22313722206d613a636f6e74656e74547970654465736372697074696f6e3d22437265617465
2061206e657720646f63756d656e742e22206d613a636f6e74656e745479706553636f70653d2222206d613a76657273696f6e49443d2266343736346339666166646632336436653035343862333630623130346130332220786d6c6e733a63743d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f
6d2f6f66666963652f323030362f6d657461646174612f636f6e74656e74547970652220786d6c6e733a6d613d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f323030362f6d657461646174612f70726f706572746965732f6d65746141747472696275746573223e0d0a3c
7873643a736368656d61207461726765744e616d6573706163653d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f323030362f6d657461646174612f70726f7065727469657322206d613a726f6f743d227472756522206d613a6669656c647349443d223732326565636431
63363230323961373830386363653964376530623264396522206e73323a5f3d222220786d6c6e733a7873643d22687474703a2f2f7777772e77332e6f72672f323030312f584d4c536368656d612220786d6c6e733a703d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f32
3030362f6d657461646174612f70726f706572746965732220786d6c6e733a6e73323d2235616265626439612d376264662d343438322d393437632d633333353535323462663833223e0d0a3c7873643a696d706f7274206e616d6573706163653d2235616265626439612d376264662d343438322d393437632d633333
353535323462663833222f3e0d0a3c7873643a656c656d656e74206e616d653d2270726f70657274696573223e0d0a3c7873643a636f6d706c6578547970653e0d0a3c7873643a73657175656e63653e0d0a3c7873643a656c656d656e74206e616d653d22646f63756d656e744d616e6167656d656e74223e0d0a3c7873
643a636f6d706c6578547970653e0d0a3c7873643a616c6c3e0d0a3c7873643a656c656d656e74207265663d226e73323a4368616e6e656c222f3e0d0a3c7873643a656c656d656e74207265663d226e73323a4f726967696e61746f72222f3e0d0a3c7873643a656c656d656e74207265663d226e73323a50726f647563
744e616d6522206d696e4f63637572733d2230222f3e0d0a3c7873643a656c656d656e74207265663d226e73323a50726f6475637456657273696f6e22206d696e4f63637572733d2230222f3e0d0a3c7873643a656c656d656e74207265663d226e73323a5075626c6973684461746522206d696e4f63637572733d2230
222f3e0d0a3c7873643a656c656d656e74207265663d226e73323a5265746972656d656e744461746522206d696e4f63637572733d2230222f3e0d0a3c7873643a656c656d656e74207265663d226e73323a536f6674776172655479706522206d696e4f63637572733d2230222f3e0d0a3c7873643a656c656d656e7420
7265663d226e73323a4d53636f6d22206d696e4f63637572733d2230222f3e0d0a3c7873643a656c656d656e74207265663d226e73323a53746174757322206d696e4f63637572733d2230222f3e0d0a3c7873643a656c656d656e74207265663d226e73323a4c6963656e73654d6f64656c22206d696e4f63637572733d
2230222f3e0d0a3c7873643a656c656d656e74207265663d226e73323a50726f64756374494422206d696e4f63637572733d2230222f3e0d0a3c7873643a656c656d656e74207265663d226e73323a4f776e657222206d696e4f63637572733d2230222f3e0d0a3c7873643a656c656d656e74207265663d226e73323a4c
616e677561676522206d696e4f63637572733d2230222f3e0d0a3c7873643a656c656d656e74207265663d226e73323a46696c6554797065222f3e0d0a3c2f7873643a616c6c3e0d0a3c2f7873643a636f6d706c6578547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c2f7873643a73657175656e63653e0d0a
3c2f7873643a636f6d706c6578547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c2f7873643a736368656d613e0d0a3c7873643a736368656d61207461726765744e616d6573706163653d2235616265626439612d376264662d343438322d393437632d6333333535353234626638332220656c656d656e7446
6f726d44656661756c743d227175616c69666965642220786d6c6e733a7873643d22687474703a2f2f7777772e77332e6f72672f323030312f584d4c536368656d612220786d6c6e733a646d733d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f323030362f646f63756d65
6e744d616e6167656d656e742f7479706573223e0d0a3c7873643a696d706f7274206e616d6573706163653d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f323030362f646f63756d656e744d616e6167656d656e742f7479706573222f3e0d0a3c7873643a656c656d656e
74206e616d653d224368616e6e656c22206d613a696e6465783d223822206d613a646973706c61794e616d653d224368616e6e656c22206d613a696e7465726e616c4e616d653d224368616e6e656c223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374696f6e20626173653d22646d
733a54657874223e0d0a3c7873643a6d61784c656e6774682076616c75653d22323535222f3e0d0a3c2f7873643a7265737472696374696f6e3e0d0a3c2f7873643a73696d706c65547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d224f726967696e61746f722220
6d613a696e6465783d223922206d613a646973706c61794e616d653d224f726967696e61746f7222206d613a696e7465726e616c4e616d653d224f726967696e61746f72223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374696f6e20626173653d22646d733a54657874223e0d0a3c
7873643a6d61784c656e6774682076616c75653d22323535222f3e0d0a3c2f7873643a7265737472696374696f6e3e0d0a3c2f7873643a73696d706c65547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d2250726f647563744e616d6522206d613a696e6465783d22
313022206e696c6c61626c653d227472756522206d613a646973706c61794e616d653d2250726f647563744e616d6522206d613a64656661756c743d2222206d613a696e7465726e616c4e616d653d2250726f647563744e616d65223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374
696f6e20626173653d22646d733a4e6f7465222f3e0d0a3c2f7873643a73696d706c65547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d2250726f6475637456657273696f6e22206d613a696e6465783d22313122206e696c6c61626c653d227472756522206d613a
646973706c61794e616d653d2250726f6475637456657273696f6e22206d613a696e7465726e616c4e616d653d2250726f6475637456657273696f6e223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374696f6e20626173653d22646d733a54657874223e0d0a3c7873643a6d61784c
656e6774682076616c75653d22323535222f3e0d0a3c2f7873643a7265737472696374696f6e3e0d0a3c2f7873643a73696d706c65547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d225075626c6973684461746522206d613a696e6465783d22313222206e696c6c
61626c653d227472756522206d613a646973706c61794e616d653d225075626c6973684461746522206d613a666f726d61743d22446174654f6e6c7922206d613a696e7465726e616c4e616d653d225075626c69736844617465223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a726573747269637469
6f6e20626173653d22646d733a4461746554696d65222f3e0d0a3c2f7873643a73696d706c65547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d225265746972656d656e744461746522206d613a696e6465783d22313322206e696c6c61626c653d22747275652220
6d613a646973706c61794e616d653d225265746972656d656e744461746522206d613a666f726d61743d22446174654f6e6c7922206d613a696e7465726e616c4e616d653d225265746972656d656e7444617465223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374696f6e20626173
653d22646d733a4461746554696d65222f3e0d0a3c2f7873643a73696d706c65547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d22536f6674776172655479706522206d613a696e6465783d22313422206e696c6c61626c653d227472756522206d613a646973706c
61794e616d653d22536f6674776172655479706522206d613a696e7465726e616c4e616d653d22536f66747761726554797065223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374696f6e20626173653d22646d733a54657874223e0d0a3c7873643a6d61784c656e6774682076616c
75653d22323535222f3e0d0a3c2f7873643a7265737472696374696f6e3e0d0a3c2f7873643a73696d706c65547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d224d53636f6d22206d613a696e6465783d22313522206e696c6c61626c653d227472756522206d613a
646973706c61794e616d653d224d53636f6d22206d613a64656661756c743d223122206d613a696e7465726e616c4e616d653d224d53636f6d223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374696f6e20626173653d22646d733a426f6f6c65616e222f3e0d0a3c2f7873643a7369
6d706c65547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d2253746174757322206d613a696e6465783d22313622206e696c6c61626c653d227472756522206d613a646973706c61794e616d653d2253746174757322206d613a696e7465726e616c4e616d653d2253
7461747573223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374696f6e20626173653d22646d733a54657874223e0d0a3c7873643a6d61784c656e6774682076616c75653d22323535222f3e0d0a3c2f7873643a7265737472696374696f6e3e0d0a3c2f7873643a73696d706c655479
70653e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d224c6963656e73654d6f64656c22206d613a696e6465783d22313722206e696c6c61626c653d227472756522206d613a646973706c61794e616d653d224c6963656e73654d6f64656c22206d613a696e7465726e616c4e
616d653d224c6963656e73654d6f64656c223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374696f6e20626173653d22646d733a54657874223e0d0a3c7873643a6d61784c656e6774682076616c75653d22323535222f3e0d0a3c2f7873643a7265737472696374696f6e3e0d0a3c2f
7873643a73696d706c65547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d2250726f64756374494422206d613a696e6465783d22313822206e696c6c61626c653d227472756522206d613a646973706c61794e616d653d2250726f64756374494422206d613a696e74
65726e616c4e616d653d2250726f647563744944223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374696f6e20626173653d22646d733a54657874223e0d0a3c7873643a6d61784c656e6774682076616c75653d22323535222f3e0d0a3c2f7873643a7265737472696374696f6e3e0d
0a3c2f7873643a73696d706c65547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d224f776e657222206d613a696e6465783d22313922206e696c6c61626c653d227472756522206d613a646973706c61794e616d653d224f776e657222206d613a696e7465726e616c
4e616d653d224f776e6572223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374696f6e20626173653d22646d733a54657874223e0d0a3c7873643a6d61784c656e6774682076616c75653d22323535222f3e0d0a3c2f7873643a7265737472696374696f6e3e0d0a3c2f7873643a7369
6d706c65547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d224c616e677561676522206d613a696e6465783d22323022206e696c6c61626c653d227472756522206d613a646973706c61794e616d653d224c616e677561676522206d613a696e7465726e616c4e616d
653d224c616e6775616765223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374696f6e20626173653d22646d733a54657874223e0d0a3c7873643a6d61784c656e6774682076616c75653d22323535222f3e0d0a3c2f7873643a7265737472696374696f6e3e0d0a3c2f7873643a7369
6d706c65547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d2246696c655479706522206d613a696e6465783d22323122206d613a646973706c61794e616d653d2246696c655479706522206d613a696e7465726e616c4e616d653d2246696c6554797065223e0d0a3c
7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374696f6e20626173653d22646d733a54657874223e0d0a3c7873643a6d61784c656e6774682076616c75653d22323535222f3e0d0a3c2f7873643a7265737472696374696f6e3e0d0a3c2f7873643a73696d706c65547970653e0d0a3c2f787364
3a656c656d656e743e0d0a3c2f7873643a736368656d613e0d0a3c7873643a736368656d61207461726765744e616d6573706163653d22687474703a2f2f736368656d61732e6f70656e786d6c666f726d6174732e6f72672f7061636b6167652f323030362f6d657461646174612f636f72652d70726f70657274696573
2220656c656d656e74466f726d44656661756c743d227175616c69666965642220617474726962757465466f726d44656661756c743d22756e7175616c69666965642220626c6f636b44656661756c743d2223616c6c2220786d6c6e733d22687474703a2f2f736368656d61732e6f70656e786d6c666f726d6174732e6f
72672f7061636b6167652f323030362f6d657461646174612f636f72652d70726f706572746965732220786d6c6e733a7873643d22687474703a2f2f7777772e77332e6f72672f323030312f584d4c536368656d612220786d6c6e733a7873693d22687474703a2f2f7777772e77332e6f72672f323030312f584d4c5363
68656d612d696e7374616e63652220786d6c6e733a64633d22687474703a2f2f7075726c2e6f72672f64632f656c656d656e74732f312e312f2220786d6c6e733a64637465726d733d22687474703a2f2f7075726c2e6f72672f64632f7465726d732f2220786d6c6e733a6f646f633d22687474703a2f2f736368656d61
732e6d6963726f736f66742e636f6d2f6f66666963652f696e7465726e616c2f323030352f696e7465726e616c446f63756d656e746174696f6e223e0d0a3c7873643a696d706f7274206e616d6573706163653d22687474703a2f2f7075726c2e6f72672f64632f656c656d656e74732f312e312f2220736368656d614c
6f636174696f6e3d22687474703a2f2f6475626c696e636f72652e6f72672f736368656d61732f786d6c732f7164632f323030332f30342f30322f64632e787364222f3e0d0a3c7873643a696d706f7274206e616d6573706163653d22687474703a2f2f7075726c2e6f72672f64632f7465726d732f2220736368656d61
4c6f636174696f6e3d22687474703a2f2f6475626c696e636f72652e6f72672f736368656d61732f786d6c732f7164632f323030332f30342f30322f64637465726d732e787364222f3e0d0a3c7873643a656c656d656e74206e616d653d22636f726550726f706572746965732220747970653d2243545f636f72655072
6f70657274696573222f3e0d0a3c7873643a636f6d706c657854797065206e616d653d2243545f636f726550726f70657274696573223e0d0a3c7873643a616c6c3e0d0a3c7873643a656c656d656e74207265663d2264633a63726561746f7222206d696e4f63637572733d223022206d61784f63637572733d2231222f
3e0d0a3c7873643a656c656d656e74207265663d2264637465726d733a6372656174656422206d696e4f63637572733d223022206d61784f63637572733d2231222f3e0d0a3c7873643a656c656d656e74207265663d2264633a6964656e74696669657222206d696e4f63637572733d223022206d61784f63637572733d
2231222f3e0d0a3c7873643a656c656d656e74206e616d653d22636f6e74656e745479706522206d696e4f63637572733d223022206d61784f63637572733d22312220747970653d227873643a737472696e6722206d613a696e6465783d223022206d613a646973706c61794e616d653d22436f6e74656e742054797065
22206d613a726561644f6e6c793d2274727565222f3e0d0a3c7873643a656c656d656e74207265663d2264633a7469746c6522206d696e4f63637572733d223022206d61784f63637572733d223122206d613a696e6465783d223422206d613a646973706c61794e616d653d225469746c65222f3e0d0a3c7873643a656c
656d656e74207265663d2264633a7375626a65637422206d696e4f63637572733d223022206d61784f63637572733d2231222f3e0d0a3c7873643a656c656d656e74207265663d2264633a6465736372697074696f6e22206d696e4f63637572733d223022206d61784f63637572733d2231222f3e0d0a3c7873643a656c
656d656e74206e616d653d226b6579776f72647322206d696e4f63637572733d223022206d61784f63637572733d22312220747970653d227873643a737472696e67222f3e0d0a3c7873643a656c656d656e74207265663d2264633a6c616e677561676522206d696e4f63637572733d223022206d61784f63637572733d
2231222f3e0d0a3c7873643a656c656d656e74206e616d653d2263617465676f727922206d696e4f63637572733d223022206d61784f63637572733d22312220747970653d227873643a737472696e67222f3e0d0a3c7873643a656c656d656e74206e616d653d2276657273696f6e22206d696e4f63637572733d223022
206d61784f63637572733d22312220747970653d227873643a737472696e67222f3e0d0a3c7873643a656c656d656e74206e616d653d227265766973696f6e22206d696e4f63637572733d223022206d61784f63637572733d22312220747970653d227873643a737472696e67223e0d0a3c7873643a616e6e6f74617469
6f6e3e0d0a3c7873643a646f63756d656e746174696f6e3e0d0a202020202020202020202020202020202020202020202020546869732076616c756520696e6469636174657320746865206e756d626572206f66207361766573206f72207265766973696f6e732e20546865206170706c69636174696f6e206973207265
73706f6e7369626c6520666f72207570646174696e6720746869732076616c75652061667465722065616368207265766973696f6e2e0d0a20202020202020202020202020202020202020203c2f7873643a646f63756d656e746174696f6e3e0d0a3c2f7873643a616e6e6f746174696f6e3e0d0a3c2f7873643a656c65
6d656e743e0d0a3c7873643a656c656d656e74206e616d653d226c6173744d6f646966696564427922206d696e4f63637572733d223022206d61784f63637572733d22312220747970653d227873643a737472696e67222f3e0d0a3c7873643a656c656d656e74207265663d2264637465726d733a6d6f64696669656422
206d696e4f63637572733d223022206d61784f63637572733d2231222f3e0d0a3c7873643a656c656d656e74206e616d653d226c6173745072696e74656422206d696e4f63637572733d223022206d61784f63637572733d22312220747970653d227873643a6461746554696d65222f3e0d0a3c7873643a656c656d656e
74206e616d653d22636f6e74656e7453746174757322206d696e4f63637572733d223022206d61784f63637572733d22312220747970653d227873643a737472696e67222f3e0d0a3c2f7873643a616c6c3e0d0a3c2f7873643a636f6d706c6578547970653e0d0a3c2f7873643a736368656d613e0d0a3c2f63743a636f
6e74656e7454797065536368656d613e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000006d65746141747472696275746573222f3e3c64733a736368656d615265662064733a7572693d22687474703a2f2f7777772e77332e6f72672f323030312f584d4c536368656d61222f3e3c64733a736368656d615265662064733a7572693d226874
74703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f323030362f6d657461646174612f70726f70657274696573222f3e3c64733a736368656d615265662064733a7572693d2235616265626439612d376264662d343438322d393437632d633333353535323462663833222f3e3c64733a
736368656d615265662064733a7572693d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f323030362f646f63756d656e744d616e6167656d656e742f7479706573222f3e3c64733a736368656d615265662064733a7572693d22687474703a2f2f736368656d61732e6f7065
6e786d6c666f726d6174732e6f72672f7061636b6167652f323030362f6d657461646174612f636f72652d70726f70657274696573222f3e3c64733a736368656d615265662064733a7572693d22687474703a2f2f7075726c2e6f72672f64632f656c656d656e74732f312e312f222f3e3c64733a736368656d61526566
2064733a7572693d22687474703a2f2f7075726c2e6f72672f64632f7465726d732f222f3e3c64733a736368656d615265662064733a7572693d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f696e7465726e616c2f323030352f696e7465726e616c446f63756d656e7461
74696f6e222f3e3c2f64733a736368656d61526566733e3c2f64733a6461746173746f72654974656d3e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000105000000000000}}

View File

@ -0,0 +1,3 @@
param($installPath, $toolsPath, $package, $project)
$project.Object.References.Add("System.Transactions") | Out-Null
$project.Object.References.Add("System.Data.Entity") | Out-Null

Binary file not shown.

Binary file not shown.

Binary file not shown.