migrating to vs 2017, tools packages, .net core support

This commit is contained in:
Ilya Chudin 2017-05-18 16:27:02 +05:00 коммит произвёл GitHub
Родитель 2cb843fc97 6b999c6c70
Коммит f0060620bf
97 изменённых файлов: 1353 добавлений и 485 удалений

Просмотреть файл

@ -32,7 +32,7 @@
Console.WriteLine(c.ContactName);
}
5. See more at https://github.com/linq2db/t4models/blob/master/Templates/ReadMe.LinqToDB.md.
5. See more at https://github.com/linq2db/t4models
*/
NamespaceName = "DataModels";

Просмотреть файл

@ -36,7 +36,7 @@
Console.WriteLine(c.ContactName);
}
7. See more at https://github.com/linq2db/t4models/blob/master/Templates/ReadMe.LinqToDB.md.
7. See more at https://github.com/linq2db/t4models
*/
NamespaceName = "DataModels";

Просмотреть файл

@ -0,0 +1,44 @@
<#@ template language="C#" debug="True" hostSpecific="True" #>
<#@ output extension=".generated.cs" #>
<#@ include file="$(SolutionDir).tools\linq2db.t4models\LinqToDB.Templates\LinqToDB.Firebird.Tools.ttinclude" #>
<#@ include file="$(SolutionDir).tools\linq2db.t4models\LinqToDB.Templates\PluralizationService.ttinclude" #>
<#
/*
1. Copy this file to a folder where you would like to generate your data model,
rename it, and delete .txt extension. For example:
MyProject
DataModels
MyDatabase.tt
2. Modify the connection settings below to connect to your database.
3. Add connection string to the web/app.config file:
<connectionStrings>
<add name="MyDatabase" connectionString="DataSource=MyServer;Database=C:\Data\MyDatabase.fdb;User Id=SYSDBA;Password=masterkey" providerName="Firebird" />
</connectionStrings>
4. To access your database use the following code:
using (var db = new MyDatabaseDB())
{
var q =
from c in db.Customers
select c;
foreach (var c in q)
Console.WriteLine(c.ContactName);
}
5. See more at https://github.com/linq2db/t4models
*/
NamespaceName = "DataModels";
LoadFirebirdMetadata("MyServer", @"C:\Data\MyDatabase.fdb");
// LoadFirebirdMetadata(string server, string database, string uid, string password);
// LoadFirebirdMetadata(string connectionString);
GenerateModel();
#>

Просмотреть файл

@ -31,7 +31,7 @@
Console.WriteLine(c.ContactName);
}
5. See more at https://github.com/linq2db/t4models/blob/master/Templates/ReadMe.LinqToDB.md.
5. See more at https://github.com/linq2db/t4models
*/
NamespaceName = "DataModels";

Просмотреть файл

@ -37,7 +37,7 @@
Console.WriteLine(c.ContactName);
}
7. See more at https://github.com/linq2db/t4models/blob/master/Templates/ReadMe.LinqToDB.md.
7. See more at https://github.com/linq2db/t4models
*/
NamespaceName = "DataModels";

Просмотреть файл

@ -0,0 +1,43 @@
<#@ template language="C#" debug="True" hostSpecific="True" #>
<#@ output extension=".generated.cs" #>
<#@ include file="$(SolutionDir).tools\linq2db.t4models\LinqToDB.Templates\LinqToDB.MySql.Tools.ttinclude" #>
<#@ include file="$(SolutionDir).tools\linq2db.t4models\LinqToDB.Templates\PluralizationService.ttinclude" #>
<#
/*
1. Copy this file to a folder where you would like to generate your data model,
rename it, and delete .txt extension. For example:
MyProject
DataModels
MyDatabase.tt
2. Modify the connection settings below to connect to your database.
3. Add connection string to the web/app.config file:
<connectionStrings>
<add name="MyDatabase" connectionString="Server=MyServer;Port=3306;Database=MyDatabase;Uid=root;Pwd=TestPassword;charset=utf8;" providerName="MySql.Data.MySqlClient" />
</connectionStrings>
4. To access your database use the following code:
using (var db = new MyDatabaseDB())
{
var q =
from c in db.Customers
select c;
foreach (var c in q)
Console.WriteLine(c.ContactName);
}
5. See more at https://github.com/linq2db/t4models
*/
NamespaceName = "DataModels";
LoadMySqlMetadata("MyServer", "MyDatabase", "root", "TestPassword");
// LoadMySqlMetadata(string connectionString);
GenerateModel();
#>

Просмотреть файл

@ -31,7 +31,7 @@
Console.WriteLine(c.ContactName);
}
5. See more at https://github.com/linq2db/t4models/blob/master/Templates/ReadMe.LinqToDB.md.
5. See more at https://github.com/linq2db/t4models
*/
NamespaceName = "DataModels";

Просмотреть файл

@ -31,7 +31,7 @@
Console.WriteLine(c.ContactName);
}
5. See more at https://github.com/linq2db/t4models/blob/master/Templates/ReadMe.LinqToDB.md.
5. See more at https://github.com/linq2db/t4models
*/
NamespaceName = "DataModels";

Просмотреть файл

@ -33,7 +33,7 @@
Console.WriteLine(c.ContactName);
}
5. See more at https://github.com/linq2db/t4models/blob/master/Templates/ReadMe.LinqToDB.md.
5. See more at https://github.com/linq2db/t4models
*/
NamespaceName = "DataModels";

Просмотреть файл

@ -33,7 +33,7 @@
Console.WriteLine(c.ContactName);
}
6. See more at https://github.com/linq2db/t4models/blob/master/Templates/ReadMe.LinqToDB.md.
6. See more at https://github.com/linq2db/t4models
*/
NamespaceName = "DataModels";

Просмотреть файл

@ -0,0 +1,43 @@
<#@ template language="C#" debug="True" hostSpecific="True" #>
<#@ output extension=".generated.cs" #>
<#@ include file=$(SolutionDir).tools\linq2db.t4models\LinqToDB.Templates\LinqToDB.PostgreSQL.Tools.ttinclude" #>
<#@ include file=$(SolutionDir).tools\linq2db.t4models\LinqToDB.Templates\PluralizationService.ttinclude" #>
<#
/*
1. Copy this file to a folder where you would like to generate your data model,
rename it, and delete .txt extension. For example:
MyProject
DataModels
MyDatabase.tt
2. Modify the connection settings below to connect to your database.
3. Add connection string to the web/app.config file:
<connectionStrings>
<add name="MyDatabase" connectionString="Server=MyServer;Port=5432;Database=MyDatabase;User Id=postgres;Password=TestPassword;Pooling=true;MinPoolSize=10;MaxPoolSize=100;Protocol=3;" providerName="PostgreSQL" />
</connectionStrings>
4. To access your database use the following code:
using (var db = new MyDatabaseDB())
{
var q =
from c in db.Customers
select c;
foreach (var c in q)
Console.WriteLine(c.ContactName);
}
5. See more at https://github.com/linq2db/t4models
*/
NamespaceName = "DataModels";
LoadPostgreSQLMetadata("MyServer", "5432", "MyDatabase", "postgres", "TestPassword");
// LoadPostgreSQLMetadata(string connectionString);
GenerateModel();
#>

Просмотреть файл

@ -31,7 +31,7 @@
Console.WriteLine(c.ContactName);
}
5. See more at https://github.com/linq2db/t4models/blob/master/Templates/ReadMe.LinqToDB.md.
5. See more at https://github.com/linq2db/t4models
*/
NamespaceName = "DataModels";

Просмотреть файл

@ -0,0 +1,43 @@
<#@ template language="C#" debug="True" hostSpecific="True" #>
<#@ output extension=".generated.cs" #>
<#@ include file="$(SolutionDir).tools\linq2db.t4models\LinqToDB.Templates\LinqToDB.SQLite.Tools.ttinclude" #>
<#@ include file="$(SolutionDir).tools\linq2db.t4models\LinqToDB.Templates\PluralizationService.ttinclude" #>
<#
/*
1. Copy this file to a folder where you would like to generate your data model,
rename it, and delete .txt extension. For example:
MyProject
DataModels
MyDatabase.tt
2. Modify the connection settings below to connect to your database.
3. Add connection string to the web/app.config file:
<connectionStrings>
<add name="MyDatabase" connectionString="Data Source=MyDatabase.sqlite" providerName="SQLite" />
</connectionStrings>
4. To access your database use the following code:
using (var db = new MyDatabaseDB())
{
var q =
from c in db.Customers
select c;
foreach (var c in q)
Console.WriteLine(c.ContactName);
}
5. See more at https://github.com/linq2db/t4models
*/
NamespaceName = "DataModels";
LoadSQLiteMetadata(@"C:\Data", "MyDatabase.sqlite");
// LoadSQLiteMetadata(string connectionString);
GenerateModel();
#>

Просмотреть файл

@ -31,7 +31,7 @@
Console.WriteLine(c.ContactName);
}
5. See more at https://github.com/linq2db/t4models/blob/master/Templates/ReadMe.LinqToDB.md.
5. See more at https://github.com/linq2db/t4models
*/
NamespaceName = "DataModels";

Просмотреть файл

@ -35,7 +35,7 @@
Console.WriteLine(c.ContactName);
}
7. See more at https://github.com/linq2db/t4models/blob/master/Templates/ReadMe.LinqToDB.md.
7. See more at https://github.com/linq2db/t4models
*/
NamespaceName = "DataModels";

Просмотреть файл

@ -31,7 +31,7 @@
Console.WriteLine(c.ContactName);
}
5. See more at https://github.com/linq2db/t4models/blob/master/Templates/ReadMe.LinqToDB.md.
5. See more at https://github.com/linq2db/t4models
*/
NamespaceName = "DataModels";

Просмотреть файл

@ -0,0 +1,54 @@
<#@ template language="C#" debug="True" hostSpecific="True" #>
<#@ output extension=".generated.cs" #>
<#@ include file="$(SolutionDir).tools\linq2db.t4models\LinqToDB.Templates\LinqToDB.SqlServer.Tools.ttinclude" #>
<#@ include file="$(SolutionDir).tools\linq2db.t4models\LinqToDB.Templates\PluralizationService.ttinclude" #>
<#
/*
1. Copy this file to a folder where you would like to generate your data model,
rename it, and delete .txt extension. For example:
MyProject
DataModels
MyDatabase.tt
2. Modify the connection settings below to connect to your database.
3. Add connection string to the web/app.config file:
<connectionStrings>
<add name="MyDatabase" providerName="System.Data.SqlClient"
connectionString="Data Source=.;Database=MyDatabase;User Id=User;Password=TestPassword;" />
</connectionStrings>
4. To access your database use the following code:
using (var db = new MyDatabaseDB())
{
var q =
from c in db.Customers
select c;
foreach (var c in q)
Console.WriteLine(c.ContactName);
}
5. See more at https://github.com/linq2db/t4models
If you need to use the Microsoft.SqlServer.Types namespace, install the Microsoft.SqlServer.Types nuget,
and replace the following include at the top of this file:
"$(ProjectDir)LinqToDB.Templates\LinqToDB.SqlServer.Tools.ttinclude"
with
"$(ProjectDir)LinqToDB.Templates\LinqToDB.SqlServer.SqlTypes.Tools.ttinclude"
*/
NamespaceName = "DataModels";
LoadSqlServerMetadata("MyServer", "MyDatabase", "User", "Password");
// LoadSqlServerMetadata(".", "MyDatabase"); // Integrated Security
// LoadSqlServerMetadata(string connectionString);
GenerateModel();
#>

Просмотреть файл

@ -32,7 +32,7 @@
Console.WriteLine(c.ContactName);
}
5. See more at https://github.com/linq2db/t4models/blob/master/Templates/ReadMe.LinqToDB.md.
5. See more at https://github.com/linq2db/t4models
If you need to use the Microsoft.SqlServer.Types namespace, install the Microsoft.SqlServer.Types nuget,
and replace the following include at the top of this file:

Просмотреть файл

@ -35,7 +35,7 @@
Console.WriteLine(c.ContactName);
}
7. See more at https://github.com/linq2db/t4models/blob/master/Templates/ReadMe.LinqToDB.md.
7. See more at https://github.com/linq2db/t4models
*/
NamespaceName = "DataModels";

Просмотреть файл

@ -32,7 +32,7 @@
Console.WriteLine(c.ContactName);
}
5. See more at https://github.com/linq2db/t4models/blob/master/Templates/ReadMe.LinqToDB.md.
5. See more at https://github.com/linq2db/t4models
*/
NamespaceName = "DataModel";

14
NuGet/Init.ps1 Normal file
Просмотреть файл

@ -0,0 +1,14 @@
param($installPath, $toolsPath, $package)
# get the active solution
$solution = Get-Interface $dte.Solution ([EnvDTE80.Solution2])
$solutionPath = [System.IO.Path]::GetDirectoryName($solution.FullName)
$linq2dbToolsPath = [System.IO.Path]::Combine($solutionPath, ".tools", "linq2db.t4models")
$linq2dbContentPath = [System.IO.Path]::Combine($installPath, "content")
# tools copy
xcopy $("$toolsPath\*.*") $("$linq2dbToolsPath\") /y /e
# content copy for .Net Core & similar projects
xcopy $("$linq2dbContentPath\*.*") $("$linq2dbToolsPath\") /y /e

Просмотреть файл

@ -1,7 +1,7 @@
@rem cd ..\..\linq2db\Source
@rem call Compile.bat
cd ..\..\linq2db.t4models\ToolsGenerator
cd ..\ToolsGenerator
%windir%\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe ToolsGenerator.csproj /property:Configuration=Release

10
NuGet/install.ps1 Normal file
Просмотреть файл

@ -0,0 +1,10 @@
param($installPath, $toolsPath, $package, $project)
$copyFrom = $("$installPath\content\*.*")
$copyTo = [System.IO.Path]::GetDirectoryName($project.FullName) + "\"
Write-Host $copyFrom
Write-Host $copyTo
xcopy $copyFrom $copyTo /y /E

Просмотреть файл

@ -2,7 +2,7 @@
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata>
<id>linq2db.Access</id>
<version>1.7.5</version>
<version>1.8.0</version>
<title>LINQ to Access</title>
<authors>Igor Tkachev</authors>
<owners />
@ -18,8 +18,7 @@
</summary>
<tags>linq linq2db Access LinqToDB ORM database DB SQL</tags>
<dependencies>
<dependency id="linq2db" />
<dependency id="linq2db.t4models" />
<dependency id="linq2db.t4models" version="1.8.0"/>
</dependencies>
</metadata>
<files>

Просмотреть файл

@ -2,7 +2,7 @@
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata>
<id>linq2db.DB2</id>
<version>1.7.5</version>
<version>1.8.0</version>
<title>LINQ to IBM DB2</title>
<authors>Igor Tkachev</authors>
<owners />
@ -19,13 +19,14 @@
</summary>
<tags>linq linq2db DB2 LinqToDB ORM database DB SQL</tags>
<dependencies>
<dependency id="linq2db" />
<dependency id="linq2db.t4models" />
<dependency id="linq2db.t4models" version="1.8.0"/>
</dependencies>
</metadata>
<files>
<file src="..\Redist\IBM\IBM.Data.DB2.dll" target="tools" />
<file src="LinqToDB.DB2.Tools.ttinclude" target="content\LinqToDB.Templates" />
<file src="CopyMe.DB2.tt.txt" target="content\LinqToDB.Templates" />
<file src="init.ps1" target="tools" />
</files>
</package>

Просмотреть файл

@ -2,7 +2,7 @@
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata>
<id>linq2db.Firebird</id>
<version>1.7.5</version>
<version>1.8.0</version>
<title>LINQ to Firebird</title>
<authors>Igor Tkachev</authors>
<owners />
@ -18,14 +18,15 @@
</summary>
<tags>linq linq2db Firebird LinqToDB ORM database DB SQL</tags>
<dependencies>
<dependency id="FirebirdSql.Data.FirebirdClient" />
<dependency id="linq2db" />
<dependency id="linq2db.t4models" />
<dependency id="linq2db.t4models" version="1.8.0"/>
</dependencies>
</metadata>
<files>
<file src="..\packages\FirebirdSql.Data.FirebirdClient.5.6.0\lib\net40-client\FirebirdSql.Data.FirebirdClient.dll" target="tools" />
<file src="LinqToDB.Firebird.Tools.ttinclude" target="content\LinqToDB.Templates" />
<file src="CopyMe.Firebird.tt.txt" target="content\LinqToDB.Templates" />
<file src="LinqToDB.Firebird.Tools.ttinclude" target="content\LinqToDB.Templates" />
<file src="CopyMe.Firebird.tt.txt" target="content\LinqToDB.Templates" />
<file src="init.ps1" target="tools" />
<file src="CopyMe.Firebird.Core.tt.txt" target="tools" />
</files>
</package>

Просмотреть файл

@ -2,7 +2,7 @@
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata>
<id>linq2db.Informix</id>
<version>1.7.5</version>
<version>1.8.0</version>
<title>LINQ to Informix</title>
<authors>Igor Tkachev</authors>
<owners />
@ -19,13 +19,15 @@
</summary>
<tags>linq linq2db Informix LinqToDB ORM database DB SQL</tags>
<dependencies>
<dependency id="linq2db" />
<dependency id="linq2db.t4models" />
<dependency id="linq2db.t4models" version="1.8.0"/>
</dependencies>
</metadata>
<files>
<file src="..\Redist\IBM\IBM.Data.Informix.dll" target="tools" />
<file src="LinqToDB.Informix.Tools.ttinclude" target="content\LinqToDB.Templates" />
<file src="CopyMe.Informix.tt.txt" target="content\LinqToDB.Templates" />
<file src="init.ps1" target="tools" />
</files>
</package>

Просмотреть файл

@ -2,7 +2,7 @@
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata>
<id>linq2db.MySql</id>
<version>1.7.5</version>
<version>1.8.0</version>
<title>LINQ to MySql</title>
<authors>Igor Tkachev</authors>
<owners />
@ -18,14 +18,15 @@
</summary>
<tags>linq linq2db MySql LinqToDB ORM database DB SQL</tags>
<dependencies>
<dependency id="MySql.Data" />
<dependency id="linq2db" />
<dependency id="linq2db.t4models" />
<dependency id="linq2db.t4models" version="1.8.0"/>
</dependencies>
</metadata>
<files>
<file src="..\packages\MySql.Data.6.9.9\lib\net40\MySql.Data.dll" target="tools" />
<file src="LinqToDB.MySql.Tools.ttinclude" target="content\LinqToDB.Templates" />
<file src="CopyMe.MySql.tt.txt" target="content\LinqToDB.Templates" />
</files>
<file src="init.ps1" target="tools" />
<file src="CopyMe.MySql.Core.tt.txt" target="tools" />
</files>
</package>

Просмотреть файл

@ -2,7 +2,7 @@
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata>
<id>linq2db.Oracle.Managed</id>
<version>1.7.5</version>
<version>1.8.0</version>
<title>LINQ to Oracle (ODP.NET) Managed</title>
<authors>Igor Tkachev</authors>
<owners />
@ -19,14 +19,14 @@
</summary>
<tags>linq linq2db Oracle LinqToDB ORM database DB SQL</tags>
<dependencies>
<dependency id="Oracle.ManagedDataAccess" />
<dependency id="linq2db" />
<dependency id="linq2db.t4models" />
<dependency id="linq2db.t4models" version="1.8.0"/>
</dependencies>
</metadata>
<files>
<file src="..\packages\Oracle.ManagedDataAccess.12.1.24160719\lib\net40\Oracle.ManagedDataAccess.dll" target="tools" />
<file src="LinqToDB.Oracle.Managed.Tools.ttinclude" target="content\LinqToDB.Templates" />
<file src="CopyMe.Oracle.Managed.tt.txt" target="content\LinqToDB.Templates" />
<file src="init.ps1" target="tools" />
</files>
</package>

Просмотреть файл

@ -2,7 +2,7 @@
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata>
<id>linq2db.Oracle.x64</id>
<version>1.7.5</version>
<version>1.8.0</version>
<title>LINQ to Oracle (ODP.NET) x64</title>
<authors>Igor Tkachev</authors>
<owners />
@ -19,14 +19,14 @@
</summary>
<tags>linq linq2db Oracle ODP LinqToDB ORM database DB SQL</tags>
<dependencies>
<dependency id="odp.net.x64" />
<dependency id="linq2db" />
<dependency id="linq2db.t4models" />
<dependency id="linq2db.t4models" version="1.8.0"/>
</dependencies>
</metadata>
<files>
<file src="..\packages\Oracle.ManagedDataAccess.12.1.24160719\lib\net40\Oracle.ManagedDataAccess.dll" target="tools" />
<file src="LinqToDB.Oracle.x64.Tools.ttinclude" target="content\LinqToDB.Templates" />
<file src="CopyMe.Oracle.x64.tt.txt" target="content\LinqToDB.Templates" />
<file src="init.ps1" target="tools" />
</files>
</package>

Просмотреть файл

@ -2,7 +2,7 @@
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata>
<id>linq2db.Oracle.x86</id>
<version>1.7.5</version>
<version>1.8.0</version>
<title>LINQ to Oracle (ODP.NET) x86</title>
<authors>Igor Tkachev</authors>
<owners />
@ -19,14 +19,14 @@
</summary>
<tags>linq linq2db Oracle ODP LinqToDB ORM database DB SQL</tags>
<dependencies>
<dependency id="odp.net.x86" />
<dependency id="linq2db" />
<dependency id="linq2db.t4models" />
<dependency id="linq2db.t4models" version="1.8.0"/>
</dependencies>
</metadata>
<files>
<file src="..\packages\Oracle.ManagedDataAccess.12.1.24160719\lib\net40\Oracle.ManagedDataAccess.dll" target="tools" />
<file src="LinqToDB.Oracle.x86.Tools.ttinclude" target="content\LinqToDB.Templates" />
<file src="CopyMe.Oracle.x86.tt.txt" target="content\LinqToDB.Templates" />
<file src="init.ps1" target="tools" />
</files>
</package>

Просмотреть файл

@ -2,7 +2,7 @@
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata>
<id>linq2db.PostgreSQL</id>
<version>1.7.5</version>
<version>1.8.0</version>
<title>LINQ to PostgreSQL</title>
<authors>Igor Tkachev</authors>
<owners />
@ -18,9 +18,7 @@
</summary>
<tags>linq linq2db Npgsql PostgreSQL LinqToDB ORM database DB SQL</tags>
<dependencies>
<dependency id="Npgsql" />
<dependency id="linq2db" />
<dependency id="linq2db.t4models" />
<dependency id="linq2db.t4models" version="1.8.0"/>
</dependencies>
</metadata>
<files>
@ -28,5 +26,8 @@
<file src="..\packages\Npgsql.2.2.6\lib\net40\Mono.Security.dll" target="tools" />
<file src="LinqToDB.PostgreSQL.Tools.ttinclude" target="content\LinqToDB.Templates" />
<file src="CopyMe.PostgreSQL.tt.txt" target="content\LinqToDB.Templates" />
<file src="init.ps1" target="tools" />
<file src="CopyMe.PostgreSQL.Core.tt.txt" target="tools" />
</files>
</package>

Просмотреть файл

@ -2,7 +2,7 @@
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata>
<id>linq2db.SQLite</id>
<version>1.7.5</version>
<version>1.8.0</version>
<title>LINQ to SQLite</title>
<authors>Igor Tkachev</authors>
<owners />
@ -18,9 +18,7 @@
</summary>
<tags>linq linq2db SQLite LinqToDB ORM database DB SQL</tags>
<dependencies>
<dependency id="System.Data.SQLite.Core" />
<dependency id="linq2db" />
<dependency id="linq2db.t4models" />
<dependency id="linq2db.t4models" version="1.8.0"/>
</dependencies>
</metadata>
<files>
@ -28,5 +26,8 @@
<file src="..\packages\System.Data.SQLite.Core.1.0.103\build\net40\x86\SQLite.Interop.dll" target="tools" />
<file src="LinqToDB.SQLite.Tools.ttinclude" target="content\LinqToDB.Templates" />
<file src="CopyMe.SQLite.tt.txt" target="content\LinqToDB.Templates" />
<file src="init.ps1" target="tools" />
<file src="CopyMe.SQLite.Core.tt.txt" target="tools" />
</files>
</package>

Просмотреть файл

@ -2,7 +2,7 @@
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata>
<id>linq2db.SapHana</id>
<version>1.7.5</version>
<version>1.8.0</version>
<title>LINQ to SAP HANA</title>
<authors>Igor Tkachev</authors>
<owners />
@ -19,13 +19,14 @@
</summary>
<tags>linq linq2db SapHana LinqToDB ORM database DB SQL</tags>
<dependencies>
<dependency id="linq2db" />
<dependency id="linq2db.t4models" />
<dependency id="linq2db.t4models" version="1.8.0"/>
</dependencies>
</metadata>
<files>
<file src="..\Redist\SapHana\Sap.Data.Hana.v4.5.dll" target="tools" />
<file src="LinqToDB.SapHana.Tools.ttinclude" target="content\LinqToDB.Templates" />
<file src="CopyMe.SapHana.tt.txt" target="content\LinqToDB.Templates" />
<file src="init.ps1" target="tools" />
</files>
</package>

Просмотреть файл

@ -2,7 +2,7 @@
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata>
<id>linq2db.SqlCe</id>
<version>1.7.5</version>
<version>1.8.0</version>
<title>LINQ to SqlCe</title>
<authors>Igor Tkachev</authors>
<owners />
@ -18,14 +18,14 @@
</summary>
<tags>linq linq2db SqlCe SqlServerCe SqlServer Compact LinqToDB ORM database DB SQL</tags>
<dependencies>
<dependency id="Microsoft.SqlServer.Compact" />
<dependency id="linq2db" />
<dependency id="linq2db.t4models" />
<dependency id="linq2db.t4models" version="1.8.0"/>
</dependencies>
</metadata>
<files>
<file src="..\packages\Microsoft.SqlServer.Compact.4.0.8876.1\lib\net40\System.Data.SqlServerCe.dll" target="tools" />
<file src="LinqToDB.SqlCe.Tools.ttinclude" target="content\LinqToDB.Templates" />
<file src="CopyMe.SqlCe.tt.txt" target="content\LinqToDB.Templates" />
<file src="init.ps1" target="tools" />
</files>
</package>

Просмотреть файл

@ -2,7 +2,7 @@
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata>
<id>linq2db.SqlServer</id>
<version>1.7.5</version>
<version>1.8.0</version>
<title>LINQ to SqlServer</title>
<authors>Igor Tkachev</authors>
<owners />
@ -18,14 +18,16 @@
</summary>
<tags>linq linq2db SqlServer LinqToDB ORM database DB SQL</tags>
<dependencies>
<dependency id="linq2db" />
<dependency id="linq2db.t4models" />
<dependency id="linq2db.t4models" version="1.8.0"/>
</dependencies>
</metadata>
<files>
<file src="..\packages\Microsoft.SqlServer.Types.11.0.2\lib\Net20\Microsoft.SqlServer.Types.dll" target="tools" />
<file src="LinqToDB.SqlServer.SqlTypes.Tools.ttinclude" target="content\LinqToDB.Templates" />
<file src="LinqToDB.SqlServer.Tools.ttinclude" target="content\LinqToDB.Templates" />
<file src="CopyMe.SqlServer.tt.txt" target="content\LinqToDB.Templates" />
<file src="..\packages\Microsoft.SqlServer.Types.14.0.314.76\lib\Net40\Microsoft.SqlServer.Types.dll" target="tools" />
<file src="LinqToDB.SqlServer.SqlTypes.Tools.ttinclude" target="content\LinqToDB.Templates" />
<file src="LinqToDB.SqlServer.Tools.ttinclude" target="content\LinqToDB.Templates" />
<file src="CopyMe.SqlServer.tt.txt" target="content\LinqToDB.Templates" />
<file src="init.ps1" target="tools" />
<file src="CopyMe.SqlServer.Core.tt.txt" target="tools" />
</files>
</package>

Просмотреть файл

@ -2,7 +2,7 @@
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata>
<id>linq2db.Sybase</id>
<version>1.7.5</version>
<version>1.8.0</version>
<title>LINQ to Sybase ASE</title>
<authors>Igor Tkachev</authors>
<owners />
@ -19,8 +19,7 @@
</summary>
<tags>linq linq2db Sybase LinqToDB ORM database DB SQL</tags>
<dependencies>
<dependency id="linq2db" />
<dependency id="linq2db.t4models" />
<dependency id="linq2db.t4models" version="1.8.0"/>
</dependencies>
</metadata>
<files>
@ -28,5 +27,7 @@
<file src="..\Redist\Sybase\sybdrvado20.dll" target="tools" />
<file src="LinqToDB.Sybase.Tools.ttinclude" target="content\LinqToDB.Templates" />
<file src="CopyMe.Sybase.tt.txt" target="content\LinqToDB.Templates" />
<file src="init.ps1" target="tools" />
</files>
</package>

Просмотреть файл

@ -2,7 +2,7 @@
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
<metadata>
<id>linq2db.t4models</id>
<version>1.7.5</version>
<version>1.8.0</version>
<title>LINQ to DB T4 Models</title>
<authors>Igor Tkachev</authors>
<owners />
@ -16,33 +16,32 @@
linq linq2db LinqToDB ORM database DB T4 datamodel SqlServer Access SqlCe SqlServerCe MySql Firebird SQLite Sybase
Oracle ODP PostgreSQL DB2 Informix SapHana
</tags>
<contentFiles>
<files include="**/*.*" buildAction="None" />
</contentFiles>
<dependencies>
<group targetFramework="netstandard1.6">
<dependency id="linq2db.Core" version="1.8.0"/>
</group>
<group targetFramework="net40">
<dependency id="linq2db" version="1.8.0"/>
</group>
</dependencies>
</metadata>
<files>
<file src="..\packages\linq2db.1.7.7-rc412\lib\net40\linq2db.dll" target="tools" />
<file src="..\packages\linq2db.1.8.0\lib\net40\linq2db.dll" target="tools" />
<file src="init.ps1" target="tools" />
<file src="..\Templates\ReadMe.LinqToDB.md" target="content\LinqToDB.Templates" />
<file src="..\Templates\DataAnnotations.ttinclude" target="content\LinqToDB.Templates" />
<file src="..\Templates\DataAnnotations.ttinclude" target="content\LinqToDB.Templates" />
<file src="..\Templates\DataModel.ttinclude" target="content\LinqToDB.Templates" />
<file src="..\Templates\EditableObject.ttinclude" target="content\LinqToDB.Templates" />
<file src="..\Templates\ObsoleteAttributes.ttinclude" target="content\LinqToDB.Templates" />
<file src="..\Templates\LinqToDB.Access.ttinclude" target="content\LinqToDB.Templates" />
<file src="..\Templates\LinqToDB.Firebird.ttinclude" target="content\LinqToDB.Templates" />
<file src="..\Templates\LinqToDB.MySql.ttinclude" target="content\LinqToDB.Templates" />
<file src="..\Templates\LinqToDB.Oracle.ttinclude" target="content\LinqToDB.Templates" />
<file src="..\Templates\LinqToDB.PostgreSQL.ttinclude" target="content\LinqToDB.Templates" />
<file src="..\Templates\LinqToDB.SqlCe.ttinclude" target="content\LinqToDB.Templates" />
<file src="..\Templates\LinqToDB.SQLite.ttinclude" target="content\LinqToDB.Templates" />
<file src="..\Templates\LinqToDB.SqlServer.ttinclude" target="content\LinqToDB.Templates" />
<file src="..\Templates\LinqToDB.SqlServer.SqlTypes.ttinclude" target="content\LinqToDB.Templates" />
<file src="..\Templates\LinqToDB.Sybase.ttinclude" target="content\LinqToDB.Templates" />
<file src="..\Templates\LinqToDB.DB2.ttinclude" target="content\LinqToDB.Templates" />
<file src="..\Templates\LinqToDB.Informix.ttinclude" target="content\LinqToDB.Templates" />
<file src="..\Templates\LinqToDB.ttinclude" target="content\LinqToDB.Templates" />
<file src="..\Templates\NotifyPropertyChanged.ttinclude" target="content\LinqToDB.Templates" />
<file src="..\Templates\PluralizationService.ttinclude" target="content\LinqToDB.Templates" />
<file src="..\Templates\T4Model.ttinclude" target="content\LinqToDB.Templates" />
<file src="..\Templates\Validation.ttinclude" target="content\LinqToDB.Templates" />
<file src="..\ReadMe.md" target="content\LinqToDB.Templates" />
<file src="..\Templates\*.ttinclude" target="content\LinqToDB.Templates" />
<file src="LinqToDB.Tools.ttinclude" target="content\LinqToDB.Templates" />
<file src="..\ReadMe.md" target="contentFiles\LinqToDB.Templates" />
<file src="..\Templates\*.ttinclude" target="contentFiles\LinqToDB.Templates" />
<file src="LinqToDB.Tools.ttinclude" target="contentFiles\LinqToDB.Templates" />
</files>
</package>

Просмотреть файл

@ -1,7 +1,44 @@
# t4models
To create a data model template take a look at one of the CopyMe.XXX.tt.txt file in your LinqToDB.Templates project folder.
# T4 Models
* Use the following initialization before you call the LoadMetadata() method.
T4 models are used to generate POCO's C# code using your database structure.
## Installation
Firstly you should install one of tools packages into your project:
`Install-Package linq2db.XXX`
Where XXX is one of supported databases, for example:
`Install-Package linq2db.SqlServer`
This also will install needed linq2db packages:
* linq2db.t4models
* linq2db
But **not** data provider packages (install them only if needed to compile your project, T4 models ships it's own data provider assemblies).
### .Net Core specific
Because of .Net Core projects do not support NuGet content files all stuff is not copied into project's folder, so to run T4 templates you'll need:
* open `$(SolutionDir).tools\linq2db.t4models` in Explorer
* copy `CopyMe.XXX.Core.tt.txt` to your project's folder or subfolder, then you should use it instead of `CopyMe.XXX.tt.txt`
# Running
After package installing you will see new `LinqToDB.Templates` folder in your project, this folder contains all needed T4 stuff to generate your model. Also would be created new folder in tour solution: `$(SolutionDir).tools\linq2db.t4models`, it is used to store and link assemblies, needed for generation (linq2db.dll and data provider assemblies).
To create a data model template take a look at one of the CopyMe.XXX.tt.txt file in your LinqToDB.Templates project folder. Copy this file to needed project location and rename it, like `MyModel.tt`
There are few main steps in this file:
1. Configuring generation process (read below)
1. Loading metadata - this is a call to `LoadMatadata()` function - it connects to your database and fetches all needed metadata (table structure, views, and so on)
1. Customizing generation process (read below)
1. Calling `GenerateModel()` - this will run model generation
## Configuring generation process
Use the following initialization **before** you call the `LoadMetadata()` method.
```c#
NamespaceName = "DataModels"; // Namespace of the generated classes.
@ -47,7 +84,9 @@ GetSchemaOptions.ExcludedCatalogs = new[] { "TestUser", "SYSSTAT" }; // Defines
GetSchemaOptions.IncludedCatalogs = new[] { "TestUser", "SYS" }; // Defines only included catalogs.
```
* Use the following code to modify your model befor you call the GenerateModel() method.
## Customizing generation process
Use the following code to modify your model **before** you call the `GenerateModel()` method.
```c#
GetTable("Person").TypeName = "MyName"; // Replaces table name.
@ -72,7 +111,7 @@ foreach (var t in Tables.Values)
c.MemberName = "ID";
```
* Useful members and data structues.
## Useful members and data structures
```c#
Dictionary<string,Table> Tables = new Dictionary<string,Table> ();

Двоичные данные
Redist/NuGet.exe

Двоичный файл не отображается.

156
T4Models.2017.sln Normal file
Просмотреть файл

@ -0,0 +1,156 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 15
VisualStudioVersion = 15.0.26430.6
MinimumVisualStudioVersion = 10.0.40219.1
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Templates", "Templates", "{2E57C99E-2603-4D59-9094-A5BB06639C10}"
ProjectSection(SolutionItems) = preProject
Templates\DataAnnotations.ttinclude = Templates\DataAnnotations.ttinclude
Templates\DataModel.ttinclude = Templates\DataModel.ttinclude
Templates\EditableObject.ttinclude = Templates\EditableObject.ttinclude
Templates\LinqToDB.Access.ttinclude = Templates\LinqToDB.Access.ttinclude
Templates\LinqToDB.DB2.ttinclude = Templates\LinqToDB.DB2.ttinclude
Templates\LinqToDB.Firebird.ttinclude = Templates\LinqToDB.Firebird.ttinclude
Templates\LinqToDB.Informix.ttinclude = Templates\LinqToDB.Informix.ttinclude
Templates\LinqToDB.MySql.ttinclude = Templates\LinqToDB.MySql.ttinclude
Templates\LinqToDB.Oracle.ttinclude = Templates\LinqToDB.Oracle.ttinclude
Templates\LinqToDB.PostgreSQL.ttinclude = Templates\LinqToDB.PostgreSQL.ttinclude
Templates\LinqToDB.SapHana.ttinclude = Templates\LinqToDB.SapHana.ttinclude
Templates\LinqToDB.SqlCe.ttinclude = Templates\LinqToDB.SqlCe.ttinclude
Templates\LinqToDB.SQLite.ttinclude = Templates\LinqToDB.SQLite.ttinclude
Templates\LinqToDB.SqlServer.SqlTypes.ttinclude = Templates\LinqToDB.SqlServer.SqlTypes.ttinclude
Templates\LinqToDB.SqlServer.ttinclude = Templates\LinqToDB.SqlServer.ttinclude
Templates\LinqToDB.Sybase.ttinclude = Templates\LinqToDB.Sybase.ttinclude
Templates\LinqToDB.ttinclude = Templates\LinqToDB.ttinclude
Templates\NotifyPropertyChanged.ttinclude = Templates\NotifyPropertyChanged.ttinclude
Templates\ObsoleteAttributes.ttinclude = Templates\ObsoleteAttributes.ttinclude
Templates\PluralizationService.ttinclude = Templates\PluralizationService.ttinclude
Templates\T4Model.ttinclude = Templates\T4Model.ttinclude
Templates\Validation.ttinclude = Templates\Validation.ttinclude
EndProjectSection
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "NuGet", "NuGet", "{2AA0D9F0-79B3-44DE-8F39-030D855077DE}"
ProjectSection(SolutionItems) = preProject
NuGet\CopyMe.Access.tt.txt = NuGet\CopyMe.Access.tt.txt
NuGet\CopyMe.DB2.tt.txt = NuGet\CopyMe.DB2.tt.txt
NuGet\CopyMe.Firebird.Core.tt.txt = NuGet\CopyMe.Firebird.Core.tt.txt
NuGet\CopyMe.Firebird.tt.txt = NuGet\CopyMe.Firebird.tt.txt
NuGet\CopyMe.Informix.tt.txt = NuGet\CopyMe.Informix.tt.txt
NuGet\CopyMe.MySql.Core.tt.txt = NuGet\CopyMe.MySql.Core.tt.txt
NuGet\CopyMe.MySql.tt.txt = NuGet\CopyMe.MySql.tt.txt
NuGet\CopyMe.Oracle.Managed.tt.txt = NuGet\CopyMe.Oracle.Managed.tt.txt
NuGet\CopyMe.Oracle.x64.tt.txt = NuGet\CopyMe.Oracle.x64.tt.txt
NuGet\CopyMe.Oracle.x86.tt.txt = NuGet\CopyMe.Oracle.x86.tt.txt
NuGet\CopyMe.PostgreSQL.Core.tt.txt = NuGet\CopyMe.PostgreSQL.Core.tt.txt
NuGet\CopyMe.PostgreSQL.tt.txt = NuGet\CopyMe.PostgreSQL.tt.txt
NuGet\CopyMe.SapHana.tt.txt = NuGet\CopyMe.SapHana.tt.txt
NuGet\CopyMe.SqlCe.tt.txt = NuGet\CopyMe.SqlCe.tt.txt
NuGet\CopyMe.SQLite.Core.tt.txt = NuGet\CopyMe.SQLite.Core.tt.txt
NuGet\CopyMe.SQLite.tt.txt = NuGet\CopyMe.SQLite.tt.txt
NuGet\CopyMe.SqlServer.Core.tt.txt = NuGet\CopyMe.SqlServer.Core.tt.txt
NuGet\CopyMe.SqlServer.tt.txt = NuGet\CopyMe.SqlServer.tt.txt
NuGet\CopyMe.Sybase.tt.txt = NuGet\CopyMe.Sybase.tt.txt
NuGet\CopyMe.tt.txt = NuGet\CopyMe.tt.txt
NuGet\Init.ps1 = NuGet\Init.ps1
NuGet\install.ps1 = NuGet\install.ps1
NuGet\linq2db.Access.nuspec = NuGet\linq2db.Access.nuspec
NuGet\linq2db.DB2.nuspec = NuGet\linq2db.DB2.nuspec
NuGet\linq2db.Firebird.nuspec = NuGet\linq2db.Firebird.nuspec
NuGet\linq2db.Informix.nuspec = NuGet\linq2db.Informix.nuspec
NuGet\linq2db.MySql.nuspec = NuGet\linq2db.MySql.nuspec
NuGet\linq2db.Oracle.Managed.nuspec = NuGet\linq2db.Oracle.Managed.nuspec
NuGet\linq2db.Oracle.x64.nuspec = NuGet\linq2db.Oracle.x64.nuspec
NuGet\linq2db.Oracle.x86.nuspec = NuGet\linq2db.Oracle.x86.nuspec
NuGet\linq2db.PostgreSQL.nuspec = NuGet\linq2db.PostgreSQL.nuspec
NuGet\linq2db.SapHana.nuspec = NuGet\linq2db.SapHana.nuspec
NuGet\linq2db.SqlCe.nuspec = NuGet\linq2db.SqlCe.nuspec
NuGet\linq2db.SQLite.nuspec = NuGet\linq2db.SQLite.nuspec
NuGet\linq2db.SqlServer.nuspec = NuGet\linq2db.SqlServer.nuspec
NuGet\linq2db.Sybase.nuspec = NuGet\linq2db.Sybase.nuspec
NuGet\linq2db.t4models.nuspec = NuGet\linq2db.t4models.nuspec
NuGet\Pack.bat = NuGet\Pack.bat
NuGet\Push.bat = NuGet\Push.bat
EndProjectSection
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "T4Model.LinqToDB", "Tests\LinqToDB\T4Model.LinqToDB.csproj", "{0C559939-7E45-4696-B293-F2943604D01D}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "T4Model.Silverlight.Web", "Tests\Silverlight.Web\T4Model.Silverlight.Web.csproj", "{D0F21871-382F-49C2-A298-3FE33B2D612C}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "T4Model.Tests", "Tests\Tests\T4Model.Tests.csproj", "{61B2E318-9756-468D-B43A-6A96C4BC8D52}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "T4Model.Wpf", "Tests\Wpf\T4Model.Wpf.csproj", "{12928697-5E5E-4935-B024-7DE232015EF7}"
EndProject
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ToolsGenerator", "ToolsGenerator\ToolsGenerator.csproj", "{F2AD4C5B-56A3-4CFF-AC97-A4D1D9B424B7}"
EndProject
Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Solution Items", "Solution Items", "{DECC80B7-6CC6-4BF6-A365-1220B37D5396}"
ProjectSection(SolutionItems) = preProject
appveyor.yml = appveyor.yml
NuGet\PackAV.bat = NuGet\PackAV.bat
README.md = README.md
EndProjectSection
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Debug|Mixed Platforms = Debug|Mixed Platforms
Debug|x86 = Debug|x86
Release|Any CPU = Release|Any CPU
Release|Mixed Platforms = Release|Mixed Platforms
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{0C559939-7E45-4696-B293-F2943604D01D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{0C559939-7E45-4696-B293-F2943604D01D}.Debug|Any CPU.Build.0 = Debug|Any CPU
{0C559939-7E45-4696-B293-F2943604D01D}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{0C559939-7E45-4696-B293-F2943604D01D}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{0C559939-7E45-4696-B293-F2943604D01D}.Debug|x86.ActiveCfg = Debug|Any CPU
{0C559939-7E45-4696-B293-F2943604D01D}.Release|Any CPU.ActiveCfg = Release|Any CPU
{0C559939-7E45-4696-B293-F2943604D01D}.Release|Any CPU.Build.0 = Release|Any CPU
{0C559939-7E45-4696-B293-F2943604D01D}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{0C559939-7E45-4696-B293-F2943604D01D}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{0C559939-7E45-4696-B293-F2943604D01D}.Release|x86.ActiveCfg = Release|Any CPU
{D0F21871-382F-49C2-A298-3FE33B2D612C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{D0F21871-382F-49C2-A298-3FE33B2D612C}.Debug|Any CPU.Build.0 = Debug|Any CPU
{D0F21871-382F-49C2-A298-3FE33B2D612C}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{D0F21871-382F-49C2-A298-3FE33B2D612C}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{D0F21871-382F-49C2-A298-3FE33B2D612C}.Debug|x86.ActiveCfg = Debug|Any CPU
{D0F21871-382F-49C2-A298-3FE33B2D612C}.Release|Any CPU.ActiveCfg = Release|Any CPU
{D0F21871-382F-49C2-A298-3FE33B2D612C}.Release|Any CPU.Build.0 = Release|Any CPU
{D0F21871-382F-49C2-A298-3FE33B2D612C}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{D0F21871-382F-49C2-A298-3FE33B2D612C}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{D0F21871-382F-49C2-A298-3FE33B2D612C}.Release|x86.ActiveCfg = Release|Any CPU
{61B2E318-9756-468D-B43A-6A96C4BC8D52}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{61B2E318-9756-468D-B43A-6A96C4BC8D52}.Debug|Any CPU.Build.0 = Debug|Any CPU
{61B2E318-9756-468D-B43A-6A96C4BC8D52}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{61B2E318-9756-468D-B43A-6A96C4BC8D52}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{61B2E318-9756-468D-B43A-6A96C4BC8D52}.Debug|x86.ActiveCfg = Debug|Any CPU
{61B2E318-9756-468D-B43A-6A96C4BC8D52}.Release|Any CPU.ActiveCfg = Release|Any CPU
{61B2E318-9756-468D-B43A-6A96C4BC8D52}.Release|Any CPU.Build.0 = Release|Any CPU
{61B2E318-9756-468D-B43A-6A96C4BC8D52}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{61B2E318-9756-468D-B43A-6A96C4BC8D52}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{61B2E318-9756-468D-B43A-6A96C4BC8D52}.Release|x86.ActiveCfg = Release|Any CPU
{12928697-5E5E-4935-B024-7DE232015EF7}.Debug|Any CPU.ActiveCfg = Debug|x86
{12928697-5E5E-4935-B024-7DE232015EF7}.Debug|Mixed Platforms.ActiveCfg = Debug|x86
{12928697-5E5E-4935-B024-7DE232015EF7}.Debug|Mixed Platforms.Build.0 = Debug|x86
{12928697-5E5E-4935-B024-7DE232015EF7}.Debug|x86.ActiveCfg = Debug|x86
{12928697-5E5E-4935-B024-7DE232015EF7}.Debug|x86.Build.0 = Debug|x86
{12928697-5E5E-4935-B024-7DE232015EF7}.Release|Any CPU.ActiveCfg = Release|x86
{12928697-5E5E-4935-B024-7DE232015EF7}.Release|Mixed Platforms.ActiveCfg = Release|x86
{12928697-5E5E-4935-B024-7DE232015EF7}.Release|Mixed Platforms.Build.0 = Release|x86
{12928697-5E5E-4935-B024-7DE232015EF7}.Release|x86.ActiveCfg = Release|x86
{12928697-5E5E-4935-B024-7DE232015EF7}.Release|x86.Build.0 = Release|x86
{F2AD4C5B-56A3-4CFF-AC97-A4D1D9B424B7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{F2AD4C5B-56A3-4CFF-AC97-A4D1D9B424B7}.Debug|Any CPU.Build.0 = Debug|Any CPU
{F2AD4C5B-56A3-4CFF-AC97-A4D1D9B424B7}.Debug|Mixed Platforms.ActiveCfg = Debug|Any CPU
{F2AD4C5B-56A3-4CFF-AC97-A4D1D9B424B7}.Debug|Mixed Platforms.Build.0 = Debug|Any CPU
{F2AD4C5B-56A3-4CFF-AC97-A4D1D9B424B7}.Debug|x86.ActiveCfg = Debug|Any CPU
{F2AD4C5B-56A3-4CFF-AC97-A4D1D9B424B7}.Release|Any CPU.ActiveCfg = Release|Any CPU
{F2AD4C5B-56A3-4CFF-AC97-A4D1D9B424B7}.Release|Any CPU.Build.0 = Release|Any CPU
{F2AD4C5B-56A3-4CFF-AC97-A4D1D9B424B7}.Release|Mixed Platforms.ActiveCfg = Release|Any CPU
{F2AD4C5B-56A3-4CFF-AC97-A4D1D9B424B7}.Release|Mixed Platforms.Build.0 = Release|Any CPU
{F2AD4C5B-56A3-4CFF-AC97-A4D1D9B424B7}.Release|x86.ActiveCfg = Release|Any CPU
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal

Просмотреть файл

@ -1,160 +0,0 @@
To create a data model template take a look at one of the CopyMe.XXX.tt.txt file in your LinqToDB.Templates project folder.
* Use the following initialization before you call the LoadMetadata() method.
```c#
NamespaceName = "DataModels"; // Namespace of the generated classes.
DataContextName = null; // DataContext class name. If null - database name + "DB".
BaseDataContextClass = null; // Base DataContext class name. If null - LinqToDB.Data.DataConnection.
GenerateConstructors = true; // Enforce generating DataContext constructors.
DefaultConfiguration = null; // Defines default configuration for default DataContext constructor.
BaseEntityClass = null; // Base Entity class name. If null - none.
DatabaseName = null; // Table database name - [Table(Database="DatabaseName")].
GenerateDatabaseName = false; // Always generate table database name, even though DatabaseName is null.
IncludeDefaultSchema = true; // Default schema name is generated - [Table(Database="Northwind", Schema="dbo", Name="Customers")]
OneToManyAssociationType = "IEnumerable<{0}>"; // One To Many association type. Change it to "List<{0}>" if needed.
GenerateAssociations = true; // Enforce generating associations.
GenerateBackReferences = true; // Enforce generating backreference associations.
ReplaceSimilarTables = true; // Replaces stored procedure result class names with similar to existing table class names.
GenerateFindExtensions = true; // Generates find extension methods based on PKs information.
IsCompactColumns = true; // If true, column compact view.
PluralizeClassNames = false; // If true, pluralizes table class names.
SingularizeClassNames = true; // If true, singularizes table class names.
PluralizeDataContextPropertyNames = true; // If true, pluralizes DataContext property names.
SingularizeDataContextPropertyNames = false; // If true, singularizes DataContex pProperty names.
GenerateDataTypes = false; // If true, generates the DataType/Length/Precision/Scale properties of the Column attribute (unless overriden by the properties below).
GenerateDataTypeProperty = null; // If true, generates the DataType property of the Column attribute. If false, excludes generation on the DataType property even if GenerateDataTypes == true.
GenerateLengthProperty = null; // If true, generates the Length property of the Column attribute. If false, excludes generation on the Length property even if GenerateDataTypes == true.
GeneratePrecisionProperty = null; // If true, generates the Precision property of the Column attribute. If false, excludes generation on the Precision property even if GenerateDataTypes == true.
GenerateScaleProperty = null; // If true, generates the Scale property of the Column attribute. If false, excludes generation on the Scale property even if GenerateDataTypes == true.
GenerateDbTypes = false; // If true, generates the DbType property of the Column attribute.
GenerateObsoleteAttributeForAliases = false; // If true, generates [Obsolete] attribute for aliases.
IsCompactColumnAliases = true; // If true, column alias compact view.
GetSchemaOptions.ExcludedSchemas = new[] { "TestUser", "SYSSTAT" }; // Defines excluded schemas.
GetSchemaOptions.IncludedSchemas = new[] { "TestUser", "SYS" }; // Defines only included schemas.
```
* Use the following code to modify your model befor you call the GenerateModel() method.
```c#
GetTable("Person").TypeName = "MyName"; // Replaces table name.
GetColumn("Person", "PersonID").MemberName = "ID"; // Replaces column PersonID of Person table with ID.
GetFK("Orders", "FK_Orders_Customers").MemberName = "Customers"; // Replaces association name.
GetFK("Orders", "FK_Orders_Customers").AssociationType = AssociationType.OneToMany; // Changes association type.
SetTable(string tableName,
string TypeName = null,
string DataContextPropertyName = null)
.Column(string columnName, string MemberName = null, string Type = null, bool? IsNullable = null)
.FK (string fkName, string MemberName = null, AssociationType? AssociationType = null)
;
Model.Usings.Add("MyNamespace"); // Adds using of namespace.
// Replaces all the columns where name is 'TableName' + 'ID' with 'ID'.
foreach (var t in Tables.Values)
foreach (var c in t.Columns.Values)
if (c.IsPrimaryKey && c.MemberName == t.TypeName + "ID")
c.MemberName = "ID";
```
* Useful members and data structues.
```c#
Dictionary<string,Table> Tables = new Dictionary<string,Table> ();
Dictionary<string,Procedure> Procedures = new Dictionary<string,Procedure>();
Table GetTable (string name);
Procedure GetProcedure (string name);
Column GetColumn (string tableName, string columnName);
ForeignKey GetFK (string tableName, string fkName);
ForeignKey GetForeignKey(string tableName, string fkName);
public class Table
{
public string Schema;
public string TableName;
public string DataContextPropertyName;
public bool IsView;
public string Description;
public string AliasPropertyName;
public string AliasTypeName;
public string TypeName;
public Dictionary<string,Column> Columns;
public Dictionary<string,ForeignKey> ForeignKeys;
}
public partial class Column : Property
{
public string ColumnName; // Column name in database
public bool IsNullable;
public bool IsIdentity;
public string ColumnType; // Type of the column in database
public DbType DbType;
public string Description;
public bool IsPrimaryKey;
public int PrimaryKeyOrder;
public bool SkipOnUpdate;
public bool SkipOnInsert;
public bool IsDuplicateOrEmpty;
public string AliasName;
public string MemberName;
}
public enum AssociationType
{
Auto,
OneToOne,
OneToMany,
ManyToOne,
}
public partial class ForeignKey : Property
{
public string KeyName;
public Table OtherTable;
public List<Column> ThisColumns;
public List<Column> OtherColumns;
public bool CanBeNull;
public ForeignKey BackReference;
public string MemberName;
public AssociationType AssociationType;
}
public partial class Procedure : Method
{
public string Schema;
public string ProcedureName;
public bool IsFunction;
public bool IsTableFunction;
public bool IsDefaultSchema;
public Table ResultTable;
public Exception ResultException;
public List<Table> SimilarTables;
public List<Parameter> ProcParameters;
}
public class Parameter
{
public string SchemaName;
public string SchemaType;
public bool IsIn;
public bool IsOut;
public bool IsResult;
public int? Size;
public string ParameterName;
public string ParameterType;
public Type SystemType;
public string DataType;
}
```

Просмотреть файл

@ -7,7 +7,7 @@ namespace SqlServerTypes
/// <summary>
/// Utility methods related to CLR Types for SQL Server
/// </summary>
internal class Utilities
public class Utilities
{
[DllImport("kernel32.dll", CharSet = CharSet.Auto, SetLastError = true)]
private static extern IntPtr LoadLibrary(string libname);
@ -25,8 +25,8 @@ namespace SqlServerTypes
? Path.Combine(rootApplicationPath, @"SqlServerTypes\x64\")
: Path.Combine(rootApplicationPath, @"SqlServerTypes\x86\");
LoadNativeAssembly(nativeBinaryPath, "msvcr100.dll");
LoadNativeAssembly(nativeBinaryPath, "SqlServerSpatial110.dll");
LoadNativeAssembly(nativeBinaryPath, "msvcr120.dll");
LoadNativeAssembly(nativeBinaryPath, "SqlServerSpatial140.dll");
}
private static void LoadNativeAssembly(string nativeBinaryPath, string assemblyName)

Просмотреть файл

@ -19,17 +19,39 @@
<div id="main">
<h1>Action required to load native assemblies</h1>
<p>
To deploy an application that uses spatial data types to a machine that does not have 'System CLR Types for SQL Server' installed you also need to deploy the native assembly SqlServerSpatial110.dll. Both x86 (32 bit) and x64 (64 bit) versions of this assembly have been added to your project under the SqlServerTypes\x86 and SqlServerTypes\x64 subdirectories. The native assembly msvcr100.dll is also included in case the C++ runtime is not installed.
To deploy an application that uses spatial data types to a machine that does not have 'System CLR Types for SQL Server' installed you also need to deploy the native assembly SqlServerSpatial140.dll. Both x86 (32 bit) and x64 (64 bit) versions of this assembly have been added to your project under the SqlServerTypes\x86 and SqlServerTypes\x64 subdirectories. The native assembly msvcr120.dll is also included in case the C++ runtime is not installed.
</p>
<p>
You need to add code to load the correct one of these assemblies at runtime (depending on the current architecture).
</p>
<h2>ASP.NET applications</h2>
<h2>ASP.NET Web Sites</h2>
<p>
For ASP.NET applications, add the following line of code to the Application_Start method in Global.asax.cs:
For ASP.NET Web Sites, add the following block of code to the code behind file of the Web Form where you have added Report Viewer Control:
<pre>
Default.aspx.cs:
public partial class _Default : System.Web.UI.Page
{
static bool _isSqlTypesLoaded = false;
public _Default()
{
if (!_isSqlTypesLoaded)
{
SqlServerTypes.Utilities.LoadNativeAssemblies(Server.MapPath("~"));
_isSqlTypesLoaded = true;
}
}
}
</pre>
</p>
<h2>ASP.NET Web Applications</h2>
<p>
For ASP.NET Web Applications, add the following line of code to the Application_Start method in Global.asax.cs:
<pre> SqlServerTypes.Utilities.LoadNativeAssemblies(Server.MapPath("~/bin"));</pre>
</p>
<h2>Desktop applications</h2>
<h2>Desktop Applications</h2>
<p>
For desktop applications, add the following line of code to run before any spatial operations are performed:
<pre> SqlServerTypes.Utilities.LoadNativeAssemblies(AppDomain.CurrentDomain.BaseDirectory);</pre>

Двоичные данные
Tests/LinqToDB/SqlServerTypes/x64/SqlServerSpatial140.dll Normal file

Двоичный файл не отображается.

Двоичные данные
Tests/LinqToDB/SqlServerTypes/x64/msvcr120.dll Normal file

Двоичный файл не отображается.

Двоичные данные
Tests/LinqToDB/SqlServerTypes/x86/SqlServerSpatial140.dll Normal file

Двоичный файл не отображается.

Двоичные данные
Tests/LinqToDB/SqlServerTypes/x86/msvcr120.dll Normal file

Двоичный файл не отображается.

Просмотреть файл

@ -41,13 +41,11 @@
<HintPath>..\..\packages\FirebirdSql.Data.FirebirdClient.5.6.0\lib\net45\FirebirdSql.Data.FirebirdClient.dll</HintPath>
<Private>True</Private>
</Reference>
<Reference Include="linq2db, Version=1.7.7.0, Culture=neutral, PublicKeyToken=f19f8aed7feff67e, processorArchitecture=MSIL">
<HintPath>..\..\packages\linq2db.1.7.7-rc412\lib\net45\linq2db.dll</HintPath>
<Private>True</Private>
<Reference Include="linq2db, Version=1.8.0.0, Culture=neutral, PublicKeyToken=f19f8aed7feff67e, processorArchitecture=MSIL">
<HintPath>..\..\packages\linq2db.1.8.0\lib\net45\linq2db.dll</HintPath>
</Reference>
<Reference Include="Microsoft.SqlServer.Types, Version=11.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL">
<HintPath>..\..\packages\Microsoft.SqlServer.Types.11.0.2\lib\net20\Microsoft.SqlServer.Types.dll</HintPath>
<Private>True</Private>
<Reference Include="Microsoft.SqlServer.Types, Version=14.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91, processorArchitecture=MSIL">
<HintPath>..\..\packages\Microsoft.SqlServer.Types.14.0.314.76\lib\net40\Microsoft.SqlServer.Types.dll</HintPath>
</Reference>
<Reference Include="Mono.Security, Version=4.0.0.0, Culture=neutral, PublicKeyToken=0738eb9f132ed756, processorArchitecture=MSIL">
<HintPath>..\..\packages\Npgsql.2.2.6\lib\net45\Mono.Security.dll</HintPath>
@ -207,23 +205,19 @@
<Service Include="{508349B6-6B84-4DF5-91F0-309BEEBAD82D}" />
</ItemGroup>
<ItemGroup>
<Content Include="..\..\packages\Microsoft.SqlServer.Types.11.0.2\nativeBinaries\x64\msvcr100.dll">
<Link>SqlServerTypes\x64\msvcr100.dll</Link>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="..\..\packages\Microsoft.SqlServer.Types.11.0.2\nativeBinaries\x64\SqlServerSpatial110.dll">
<Link>SqlServerTypes\x64\SqlServerSpatial110.dll</Link>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="..\..\packages\Microsoft.SqlServer.Types.11.0.2\nativeBinaries\x86\msvcr100.dll">
<Link>SqlServerTypes\x86\msvcr100.dll</Link>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="..\..\packages\Microsoft.SqlServer.Types.11.0.2\nativeBinaries\x86\SqlServerSpatial110.dll">
<Link>SqlServerTypes\x86\SqlServerSpatial110.dll</Link>
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="SqlServerTypes\readme.htm" />
<Content Include="SqlServerTypes\x64\msvcr120.dll">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="SqlServerTypes\x64\SqlServerSpatial140.dll">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="SqlServerTypes\x86\msvcr120.dll">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
<Content Include="SqlServerTypes\x86\SqlServerSpatial140.dll">
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
</Content>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<PropertyGroup>

Просмотреть файл

@ -1,9 +1,9 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="FirebirdSql.Data.FirebirdClient" version="5.6.0" targetFramework="net45" />
<package id="linq2db" version="1.7.7-rc412" targetFramework="net45" />
<package id="linq2db" version="1.8.0" targetFramework="net45" />
<package id="Microsoft.SqlServer.Compact" version="4.0.8876.1" targetFramework="net40" />
<package id="Microsoft.SqlServer.Types" version="11.0.2" targetFramework="net45" />
<package id="Microsoft.SqlServer.Types" version="14.0.314.76" targetFramework="net45" />
<package id="MySql.Data" version="6.9.9" targetFramework="net45" />
<package id="Npgsql" version="2.2.6" targetFramework="net45" />
<package id="Oracle.ManagedDataAccess" version="12.1.24160719" targetFramework="net45" />

Просмотреть файл

@ -34,7 +34,7 @@ namespace ToolsGenerator
nugetDir = Path.Combine(nugetDir, "NuGet");
CreateToolsFile(nugetDir, "linq2db.t4models.nuspec", "LinqToDB.Tools.ttinclude",
@"<#@ assembly name=""$(SolutionDir)packages\linq2db.t4models.{0}\tools\linq2db.dll"" #>");
@"<#@ assembly name=""$(SolutionDir).tools\linq2db.t4models\linq2db.dll"" #>");
CreateProviderFile (nugetDir, "Access");
CreateProviderFile (nugetDir, "Firebird", "FirebirdSql.Data.FirebirdClient.dll");
@ -52,7 +52,7 @@ namespace ToolsGenerator
CreateProviderFile (nugetDir, "PostgreSQL", "Npgsql.dll", "Mono.Security.dll");
CreateProviderFile(nugetDir, "SqlCe",
@"<#@ assembly name=""$(SolutionDir)packages\Microsoft.SqlServer.Compact.4.0.8876.1\lib\net40\System.Data.SqlServerCe.dll"" #>");
@"<#@ assembly name=""$(SolutionDir).tools\System.Data.SqlServerCe.dll"" #>");
return 0;
}
@ -84,7 +84,7 @@ namespace ToolsGenerator
return t;
else
return string.Format(
@"<#@ assembly name=""$(SolutionDir)packages\linq2db.{0}.{1}\tools\{2}"" #>",
@"<#@ assembly name=""$(SolutionDir).tools\linq2db.t4models\{2}"" #>",
nuspec,
version,
t);

Просмотреть файл

@ -1,8 +1,8 @@
configuration: Release
environment:
packageVersion: 1.7.7
linq2dbVersion: 1.7.7-rc412
packageVersion: 1.8.0
linq2dbVersion: 1.8.0
version: $(packageVersion).{build}
@ -51,3 +51,6 @@ deploy:
secure: oTYw2IwTnz4qMD8c/MR/6mo+Nx3wa5Pp8MYfsKBCKCVuU6QCHlj+6QMXpnQses8G
on:
branch: release
skip_commits:
message: /skip_ci./ # Regex for matching commit message

Двоичные данные
packages/Microsoft.SqlServer.Types.11.0.2/Microsoft.SqlServer.Types.11.0.2.nupkg поставляемый

Двоичный файл не отображается.

Двоичные данные
packages/Microsoft.SqlServer.Types.11.0.2/lib/net20/Microsoft.SqlServer.Types.dll поставляемый

Двоичный файл не отображается.

Двоичные данные
packages/Microsoft.SqlServer.Types.11.0.2/nativeBinaries/x64/SqlServerSpatial110.dll поставляемый

Двоичный файл не отображается.

Двоичные данные
packages/Microsoft.SqlServer.Types.11.0.2/nativeBinaries/x64/msvcr100.dll поставляемый

Двоичный файл не отображается.

Двоичные данные
packages/Microsoft.SqlServer.Types.11.0.2/nativeBinaries/x86/SqlServerSpatial110.dll поставляемый

Двоичный файл не отображается.

Двоичные данные
packages/Microsoft.SqlServer.Types.11.0.2/nativeBinaries/x86/msvcr100.dll поставляемый

Двоичный файл не отображается.

Просмотреть файл

@ -1,52 +0,0 @@
param($installPath, $toolsPath, $package, $project)
$packagePath = (New-Object system.IO.DirectoryInfo $toolsPath).Parent.FullName
$cppBinaryPathx86 = Join-Path $packagePath "nativeBinaries\x86\msvcr100.dll"
$cppBinaryPathx64 = Join-Path $packagePath "nativeBinaries\x64\msvcr100.dll"
$sqlBinaryPathx86 = Join-Path $packagePath "nativeBinaries\x86\SqlServerSpatial110.dll"
$sqlBinaryPathx64 = Join-Path $packagePath "nativeBinaries\x64\SqlServerSpatial110.dll"
$sqlServerTypes = $project.ProjectItems.Item("SqlServerTypes")
$folderx86 = $sqlServerTypes.ProjectItems | where Name -eq "x86"
if (!$folderx86)
{
$folderx86 = $sqlServerTypes.ProjectItems.AddFolder("x86")
}
$folderx64 = $sqlServerTypes.ProjectItems | where Name -eq "x64"
if (!$folderx64)
{
$folderx64 = $sqlServerTypes.ProjectItems.AddFolder("x64")
}
$cppLinkx86 = $folderx86.ProjectItems | where Name -eq "msvcr100.dll"
if (!$cppLinkx86)
{
$cppLinkx86 = $folderx86.ProjectItems.AddFromFile($cppBinaryPathx86)
$cppLinkx86.Properties.Item("CopyToOutputDirectory").Value = 2
}
$sqlLinkx86 = $folderx86.ProjectItems | where Name -eq "SqlServerSpatial110.dll"
if (!$sqlLinkx86)
{
$sqlLinkx86 = $folderx86.ProjectItems.AddFromFile($sqlBinaryPathx86)
$sqlLinkx86.Properties.Item("CopyToOutputDirectory").Value = 2
}
$cppLinkx64 = $folderx64.ProjectItems | where Name -eq "msvcr100.dll"
if (!$cppLinkx64)
{
$cppLinkx64 = $folderx64.ProjectItems.AddFromFile($cppBinaryPathx64)
$cppLinkx64.Properties.Item("CopyToOutputDirectory").Value = 2
}
$sqlLinkx64 = $folderx64.ProjectItems | where Name -eq "SqlServerSpatial110.dll"
if (!$sqlLinkx64)
{
$sqlLinkx64 = $folderx64.ProjectItems.AddFromFile($sqlBinaryPathx64)
$sqlLinkx64.Properties.Item("CopyToOutputDirectory").Value = 2
}
$readmefile = Join-Path (Split-Path $project.FileName) "SqlServerTypes\readme.htm"
$dte.ItemOperations.Navigate($readmefile)

Двоичные данные
packages/Microsoft.SqlServer.Types.14.0.314.76/Microsoft.SqlServer.Types.14.0.314.76.nupkg поставляемый Normal file

Двоичный файл не отображается.

Просмотреть файл

@ -1,45 +1,45 @@
using System;
using System.IO;
using System.Runtime.InteropServices;
namespace SqlServerTypes
{
/// <summary>
/// Utility methods related to CLR Types for SQL Server
/// </summary>
internal class Utilities
{
[DllImport("kernel32.dll", CharSet = CharSet.Auto, SetLastError = true)]
private static extern IntPtr LoadLibrary(string libname);
/// <summary>
/// Loads the required native assemblies for the current architecture (x86 or x64)
/// </summary>
/// <param name="rootApplicationPath">
/// Root path of the current application. Use Server.MapPath(".") for ASP.NET applications
/// and AppDomain.CurrentDomain.BaseDirectory for desktop applications.
/// </param>
public static void LoadNativeAssemblies(string rootApplicationPath)
{
var nativeBinaryPath = IntPtr.Size > 4
? Path.Combine(rootApplicationPath, @"SqlServerTypes\x64\")
: Path.Combine(rootApplicationPath, @"SqlServerTypes\x86\");
LoadNativeAssembly(nativeBinaryPath, "msvcr100.dll");
LoadNativeAssembly(nativeBinaryPath, "SqlServerSpatial110.dll");
}
private static void LoadNativeAssembly(string nativeBinaryPath, string assemblyName)
{
var path = Path.Combine(nativeBinaryPath, assemblyName);
var ptr = LoadLibrary(path);
if (ptr == IntPtr.Zero)
{
throw new Exception(string.Format(
"Error loading {0} (ErrorCode: {1})",
assemblyName,
Marshal.GetLastWin32Error()));
}
}
}
using System;
using System.IO;
using System.Runtime.InteropServices;
namespace SqlServerTypes
{
/// <summary>
/// Utility methods related to CLR Types for SQL Server
/// </summary>
public class Utilities
{
[DllImport("kernel32.dll", CharSet = CharSet.Auto, SetLastError = true)]
private static extern IntPtr LoadLibrary(string libname);
/// <summary>
/// Loads the required native assemblies for the current architecture (x86 or x64)
/// </summary>
/// <param name="rootApplicationPath">
/// Root path of the current application. Use Server.MapPath(".") for ASP.NET applications
/// and AppDomain.CurrentDomain.BaseDirectory for desktop applications.
/// </param>
public static void LoadNativeAssemblies(string rootApplicationPath)
{
var nativeBinaryPath = IntPtr.Size > 4
? Path.Combine(rootApplicationPath, @"SqlServerTypes\x64\")
: Path.Combine(rootApplicationPath, @"SqlServerTypes\x86\");
LoadNativeAssembly(nativeBinaryPath, "msvcr120.dll");
LoadNativeAssembly(nativeBinaryPath, "SqlServerSpatial140.dll");
}
private static void LoadNativeAssembly(string nativeBinaryPath, string assemblyName)
{
var path = Path.Combine(nativeBinaryPath, assemblyName);
var ptr = LoadLibrary(path);
if (ptr == IntPtr.Zero)
{
throw new Exception(string.Format(
"Error loading {0} (ErrorCode: {1})",
assemblyName,
Marshal.GetLastWin32Error()));
}
}
}
}

Просмотреть файл

@ -1,39 +1,61 @@
<html lang="en-US">
<head>
<meta charset="utf-8" />
<title>Microsoft.SqlServer.Types</title>
<style>
body {
background: #fff;
color: #505050;
margin: 20px;
}
#main {
background: #efefef;
padding: 5px 30px;
}
</style>
</head>
<body>
<div id="main">
<h1>Action required to load native assemblies</h1>
<p>
To deploy an application that uses spatial data types to a machine that does not have 'System CLR Types for SQL Server' installed you also need to deploy the native assembly SqlServerSpatial110.dll. Both x86 (32 bit) and x64 (64 bit) versions of this assembly have been added to your project under the SqlServerTypes\x86 and SqlServerTypes\x64 subdirectories. The native assembly msvcr100.dll is also included in case the C++ runtime is not installed.
</p>
<p>
You need to add code to load the correct one of these assemblies at runtime (depending on the current architecture).
</p>
<h2>ASP.NET applications</h2>
<p>
For ASP.NET applications, add the following line of code to the Application_Start method in Global.asax.cs:
<pre> SqlServerTypes.Utilities.LoadNativeAssemblies(Server.MapPath("~/bin"));</pre>
</p>
<h2>Desktop applications</h2>
<p>
For desktop applications, add the following line of code to run before any spatial operations are performed:
<pre> SqlServerTypes.Utilities.LoadNativeAssemblies(AppDomain.CurrentDomain.BaseDirectory);</pre>
</p>
</div>
</body>
<html lang="en-US">
<head>
<meta charset="utf-8" />
<title>Microsoft.SqlServer.Types</title>
<style>
body {
background: #fff;
color: #505050;
margin: 20px;
}
#main {
background: #efefef;
padding: 5px 30px;
}
</style>
</head>
<body>
<div id="main">
<h1>Action required to load native assemblies</h1>
<p>
To deploy an application that uses spatial data types to a machine that does not have 'System CLR Types for SQL Server' installed you also need to deploy the native assembly SqlServerSpatial140.dll. Both x86 (32 bit) and x64 (64 bit) versions of this assembly have been added to your project under the SqlServerTypes\x86 and SqlServerTypes\x64 subdirectories. The native assembly msvcr120.dll is also included in case the C++ runtime is not installed.
</p>
<p>
You need to add code to load the correct one of these assemblies at runtime (depending on the current architecture).
</p>
<h2>ASP.NET Web Sites</h2>
<p>
For ASP.NET Web Sites, add the following block of code to the code behind file of the Web Form where you have added Report Viewer Control:
<pre>
Default.aspx.cs:
public partial class _Default : System.Web.UI.Page
{
static bool _isSqlTypesLoaded = false;
public _Default()
{
if (!_isSqlTypesLoaded)
{
SqlServerTypes.Utilities.LoadNativeAssemblies(Server.MapPath("~"));
_isSqlTypesLoaded = true;
}
}
}
</pre>
</p>
<h2>ASP.NET Web Applications</h2>
<p>
For ASP.NET Web Applications, add the following line of code to the Application_Start method in Global.asax.cs:
<pre> SqlServerTypes.Utilities.LoadNativeAssemblies(Server.MapPath("~/bin"));</pre>
</p>
<h2>Desktop Applications</h2>
<p>
For desktop applications, add the following line of code to run before any spatial operations are performed:
<pre> SqlServerTypes.Utilities.LoadNativeAssemblies(AppDomain.CurrentDomain.BaseDirectory);</pre>
</p>
</div>
</body>
</html>

Двоичные данные
packages/Microsoft.SqlServer.Types.14.0.314.76/lib/net40/Microsoft.SqlServer.Types.dll поставляемый Normal file

Двоичный файл не отображается.

Просмотреть файл

@ -0,0 +1,499 @@
{\rtf1\adeflang1025\ansi\ansicpg1252\uc1\adeff40\deff0\stshfdbch0\stshfloch31506\stshfhich31506\stshfbi31506\deflang1033\deflangfe1033\themelang1033\themelangfe0\themelangcs0{\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 Times};}
{\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\'a7??????????};}{\f34\fbidi \froman\fcharset0\fprq2{\*\panose 02040503050406030204}Cambria Math{\*\falt Calisto MT};}
{\f40\fbidi \fswiss\fcharset0\fprq2{\*\panose 020b0604030504040204}Tahoma{\*\falt ?? ??};}{\f41\fbidi \fmodern\fcharset128\fprq1{\*\panose 02020609040205080304}@MS Mincho{\*\falt @MS Gothic};}
{\f42\fbidi \fnil\fcharset134\fprq2{\*\panose 02010600030101010101}@SimSun{\*\falt Minion Web};}{\f43\fbidi \fswiss\fcharset0\fprq2{\*\panose 020b0603020202020204}Trebuchet MS{\*\falt Univers};}
{\f44\fbidi \fswiss\fcharset0\fprq2{\*\panose 020b0502040204020203}Segoe UI{\*\falt Century Gothic};}{\flomajor\f31500\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman{\*\falt Times};}
{\fdbmajor\f31501\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman{\*\falt Times};}{\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 \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman{\*\falt Times};}{\fhiminor\f31506\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0502020204030204}Calibri;}
{\fbiminor\f31507\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman{\*\falt Times};}{\f46\fbidi \froman\fcharset238\fprq2 Times New Roman CE{\*\falt Times};}
{\f47\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr{\*\falt Times};}{\f49\fbidi \froman\fcharset161\fprq2 Times New Roman Greek{\*\falt Times};}{\f50\fbidi \froman\fcharset162\fprq2 Times New Roman Tur{\*\falt Times};}
{\f51\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew){\*\falt Times};}{\f52\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic){\*\falt Times};}{\f53\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic{\*\falt Times};}
{\f54\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese){\*\falt Times};}{\f66\fbidi \fmodern\fcharset238\fprq1 Courier New CE{\*\falt Arial};}{\f67\fbidi \fmodern\fcharset204\fprq1 Courier New Cyr{\*\falt Arial};}
{\f69\fbidi \fmodern\fcharset161\fprq1 Courier New Greek{\*\falt Arial};}{\f70\fbidi \fmodern\fcharset162\fprq1 Courier New Tur{\*\falt Arial};}{\f71\fbidi \fmodern\fcharset177\fprq1 Courier New (Hebrew){\*\falt Arial};}
{\f72\fbidi \fmodern\fcharset178\fprq1 Courier New (Arabic){\*\falt Arial};}{\f73\fbidi \fmodern\fcharset186\fprq1 Courier New Baltic{\*\falt Arial};}{\f74\fbidi \fmodern\fcharset163\fprq1 Courier New (Vietnamese){\*\falt Arial};}
{\f158\fbidi \fmodern\fcharset0\fprq1 MS Mincho Western{\*\falt ?l?r ??\'81\'66c};}{\f156\fbidi \fmodern\fcharset238\fprq1 MS Mincho CE{\*\falt ?l?r ??\'81\'66c};}{\f157\fbidi \fmodern\fcharset204\fprq1 MS Mincho Cyr{\*\falt ?l?r ??\'81\'66c};}
{\f159\fbidi \fmodern\fcharset161\fprq1 MS Mincho Greek{\*\falt ?l?r ??\'81\'66c};}{\f160\fbidi \fmodern\fcharset162\fprq1 MS Mincho Tur{\*\falt ?l?r ??\'81\'66c};}{\f163\fbidi \fmodern\fcharset186\fprq1 MS Mincho Baltic{\*\falt ?l?r ??\'81\'66c};}
{\f178\fbidi \fnil\fcharset0\fprq2 SimSun Western{\*\falt ????????????????????\'a1\'a7??????????};}{\f386\fbidi \froman\fcharset238\fprq2 Cambria Math CE{\*\falt Calisto MT};}{\f387\fbidi \froman\fcharset204\fprq2 Cambria Math Cyr{\*\falt Calisto MT};}
{\f389\fbidi \froman\fcharset161\fprq2 Cambria Math Greek{\*\falt Calisto MT};}{\f390\fbidi \froman\fcharset162\fprq2 Cambria Math Tur{\*\falt Calisto MT};}{\f393\fbidi \froman\fcharset186\fprq2 Cambria Math Baltic{\*\falt Calisto MT};}
{\f394\fbidi \froman\fcharset163\fprq2 Cambria Math (Vietnamese){\*\falt Calisto MT};}{\f446\fbidi \fswiss\fcharset238\fprq2 Tahoma CE{\*\falt ?? ??};}{\f447\fbidi \fswiss\fcharset204\fprq2 Tahoma Cyr{\*\falt ?? ??};}
{\f449\fbidi \fswiss\fcharset161\fprq2 Tahoma Greek{\*\falt ?? ??};}{\f450\fbidi \fswiss\fcharset162\fprq2 Tahoma Tur{\*\falt ?? ??};}{\f451\fbidi \fswiss\fcharset177\fprq2 Tahoma (Hebrew){\*\falt ?? ??};}
{\f452\fbidi \fswiss\fcharset178\fprq2 Tahoma (Arabic){\*\falt ?? ??};}{\f453\fbidi \fswiss\fcharset186\fprq2 Tahoma Baltic{\*\falt ?? ??};}{\f454\fbidi \fswiss\fcharset163\fprq2 Tahoma (Vietnamese){\*\falt ?? ??};}
{\f455\fbidi \fswiss\fcharset222\fprq2 Tahoma (Thai){\*\falt ?? ??};}{\f458\fbidi \fmodern\fcharset0\fprq1 @MS Mincho Western{\*\falt @MS Gothic};}{\f456\fbidi \fmodern\fcharset238\fprq1 @MS Mincho CE{\*\falt @MS Gothic};}
{\f457\fbidi \fmodern\fcharset204\fprq1 @MS Mincho Cyr{\*\falt @MS Gothic};}{\f459\fbidi \fmodern\fcharset161\fprq1 @MS Mincho Greek{\*\falt @MS Gothic};}{\f460\fbidi \fmodern\fcharset162\fprq1 @MS Mincho Tur{\*\falt @MS Gothic};}
{\f463\fbidi \fmodern\fcharset186\fprq1 @MS Mincho Baltic{\*\falt @MS Gothic};}{\f468\fbidi \fnil\fcharset0\fprq2 @SimSun Western{\*\falt Minion Web};}{\f476\fbidi \fswiss\fcharset238\fprq2 Trebuchet MS CE{\*\falt Univers};}
{\f477\fbidi \fswiss\fcharset204\fprq2 Trebuchet MS Cyr{\*\falt Univers};}{\f479\fbidi \fswiss\fcharset161\fprq2 Trebuchet MS Greek{\*\falt Univers};}{\f480\fbidi \fswiss\fcharset162\fprq2 Trebuchet MS Tur{\*\falt Univers};}
{\f483\fbidi \fswiss\fcharset186\fprq2 Trebuchet MS Baltic{\*\falt Univers};}{\f486\fbidi \fswiss\fcharset238\fprq2 Segoe UI CE{\*\falt Century Gothic};}{\f487\fbidi \fswiss\fcharset204\fprq2 Segoe UI Cyr{\*\falt Century Gothic};}
{\f489\fbidi \fswiss\fcharset161\fprq2 Segoe UI Greek{\*\falt Century Gothic};}{\f490\fbidi \fswiss\fcharset162\fprq2 Segoe UI Tur{\*\falt Century Gothic};}{\f491\fbidi \fswiss\fcharset177\fprq2 Segoe UI (Hebrew){\*\falt Century Gothic};}
{\f492\fbidi \fswiss\fcharset178\fprq2 Segoe UI (Arabic){\*\falt Century Gothic};}{\f493\fbidi \fswiss\fcharset186\fprq2 Segoe UI Baltic{\*\falt Century Gothic};}{\f494\fbidi \fswiss\fcharset163\fprq2 Segoe UI (Vietnamese){\*\falt Century Gothic};}
{\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\f31518\fbidi \froman\fcharset238\fprq2 Times New Roman CE{\*\falt Times};}{\fdbmajor\f31519\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr{\*\falt Times};}
{\fdbmajor\f31521\fbidi \froman\fcharset161\fprq2 Times New Roman Greek{\*\falt Times};}{\fdbmajor\f31522\fbidi \froman\fcharset162\fprq2 Times New Roman Tur{\*\falt Times};}
{\fdbmajor\f31523\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew){\*\falt Times};}{\fdbmajor\f31524\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic){\*\falt Times};}
{\fdbmajor\f31525\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic{\*\falt Times};}{\fdbmajor\f31526\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese){\*\falt Times};}{\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\f31558\fbidi \froman\fcharset238\fprq2 Times New Roman CE{\*\falt Times};}
{\fdbminor\f31559\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr{\*\falt Times};}{\fdbminor\f31561\fbidi \froman\fcharset161\fprq2 Times New Roman Greek{\*\falt Times};}
{\fdbminor\f31562\fbidi \froman\fcharset162\fprq2 Times New Roman Tur{\*\falt Times};}{\fdbminor\f31563\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew){\*\falt Times};}
{\fdbminor\f31564\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic){\*\falt Times};}{\fdbminor\f31565\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic{\*\falt Times};}
{\fdbminor\f31566\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese){\*\falt Times};}{\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 \froman\fcharset238\fprq2 Times New Roman CE{\*\falt Times};}{\fbiminor\f31579\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr{\*\falt Times};}
{\fbiminor\f31581\fbidi \froman\fcharset161\fprq2 Times New Roman Greek{\*\falt Times};}{\fbiminor\f31582\fbidi \froman\fcharset162\fprq2 Times New Roman Tur{\*\falt Times};}
{\fbiminor\f31583\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew){\*\falt Times};}{\fbiminor\f31584\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic){\*\falt Times};}
{\fbiminor\f31585\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic{\*\falt Times};}{\fbiminor\f31586\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese){\*\falt Times};}}{\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;\ctextone\ctint255\cshade255\red0\green0\blue0;}{\*\defchp \f31506\fs22 }{\*\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 \af40\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\f40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033 \snext0 \sautoupd \sqformat \spriority0 \styrsid12846663 Normal;}{\s1\ql \fi-357\li357\ri0\sb120\sa120\widctlpar
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls5\outlinelevel0\adjustright\rin0\lin357\itap0 \rtlch\fcs1 \ab\af40\afs19\alang1025 \ltrch\fcs0 \b\fs19\lang1033\langfe1033\loch\f40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033
\sbasedon0 \snext1 \slink15 \sqformat \styrsid12846663 heading 1;}{\s2\ql \fi-363\li720\ri0\sb120\sa120\widctlpar\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls5\ilvl1\outlinelevel1\adjustright\rin0\lin720\itap0 \rtlch\fcs1
\ab\af40\afs19\alang1025 \ltrch\fcs0 \b\fs19\lang1033\langfe1033\loch\f40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext2 \slink16 \sqformat \styrsid12846663 heading 2;}{\s3\ql \fi-357\li1077\ri0\sb120\sa120\widctlpar
\tx1077\jclisttab\tx1440\wrapdefault\aspalpha\aspnum\faauto\ls5\ilvl2\outlinelevel2\adjustright\rin0\lin1077\itap0 \rtlch\fcs1 \af40\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033
\sbasedon0 \snext3 \slink17 \sqformat \styrsid12846663 heading 3;}{\s4\ql \fi-358\li1435\ri0\sb120\sa120\widctlpar\jclisttab\tx1437\wrapdefault\aspalpha\aspnum\faauto\ls5\ilvl3\outlinelevel3\adjustright\rin0\lin1435\itap0 \rtlch\fcs1
\af40\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext4 \slink18 \sqformat \styrsid12846663 heading 4;}{\s5\ql \fi-357\li1792\ri0\sb120\sa120\widctlpar
\tx1792\jclisttab\tx2155\wrapdefault\aspalpha\aspnum\faauto\ls5\ilvl4\outlinelevel4\adjustright\rin0\lin1792\itap0 \rtlch\fcs1 \af40\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033
\sbasedon0 \snext5 \slink19 \sqformat \styrsid12846663 heading 5;}{\s6\ql \fi-357\li2149\ri0\sb120\sa120\widctlpar\jclisttab\tx2152\wrapdefault\aspalpha\aspnum\faauto\ls5\ilvl5\outlinelevel5\adjustright\rin0\lin2149\itap0 \rtlch\fcs1
\af40\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext6 \slink20 \sqformat \styrsid12846663 heading 6;}{\s7\ql \fi-357\li2506\ri0\sb120\sa120\widctlpar
\jclisttab\tx2509\wrapdefault\aspalpha\aspnum\faauto\ls5\ilvl6\outlinelevel6\adjustright\rin0\lin2506\itap0 \rtlch\fcs1 \af40\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033
\sbasedon0 \snext7 \slink21 \sqformat \styrsid12846663 heading 7;}{\s8\ql \fi-357\li2863\ri0\sb120\sa120\widctlpar\jclisttab\tx2866\wrapdefault\aspalpha\aspnum\faauto\ls5\ilvl7\outlinelevel7\adjustright\rin0\lin2863\itap0 \rtlch\fcs1
\af40\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext8 \slink22 \sqformat \styrsid12846663 heading 8;}{\s9\ql \fi-358\li3221\ri0\sb120\sa120\widctlpar
\jclisttab\tx3223\wrapdefault\aspalpha\aspnum\faauto\ls5\ilvl8\outlinelevel8\adjustright\rin0\lin3221\itap0 \rtlch\fcs1 \af40\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033
\sbasedon0 \snext9 \slink23 \sqformat \styrsid12846663 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 \af31506\afs22\alang1025 \ltrch\fcs0 \f31506\fs22\lang1033\langfe1033\cgrid\langnp1033\langfenp1033 \snext11 \ssemihidden \sunhideused Normal Table;}{\*\cs15 \additive
\rtlch\fcs1 \ab\af40\afs19 \ltrch\fcs0 \b\fs19\loch\f40\hich\af40\dbch\af11 \sbasedon10 \slink1 \slocked \styrsid12846663 Heading 1 Char;}{\*\cs16 \additive \rtlch\fcs1 \ab\af40\afs19 \ltrch\fcs0 \b\fs19\loch\f40\hich\af40\dbch\af11
\sbasedon10 \slink2 \slocked \styrsid12846663 Heading 2 Char;}{\*\cs17 \additive \rtlch\fcs1 \af40\afs19 \ltrch\fcs0 \fs19\loch\f40\hich\af40\dbch\af11 \sbasedon10 \slink3 \slocked \styrsid12846663 Heading 3 Char;}{\*\cs18 \additive \rtlch\fcs1
\af40\afs19 \ltrch\fcs0 \fs19\loch\f40\hich\af40\dbch\af11 \sbasedon10 \slink4 \slocked \styrsid12846663 Heading 4 Char;}{\*\cs19 \additive \rtlch\fcs1 \af40\afs19 \ltrch\fcs0 \fs19\loch\f40\hich\af40\dbch\af11
\sbasedon10 \slink5 \slocked \styrsid12846663 Heading 5 Char;}{\*\cs20 \additive \rtlch\fcs1 \af40\afs19 \ltrch\fcs0 \fs19\loch\f40\hich\af40\dbch\af11 \sbasedon10 \slink6 \slocked \styrsid12846663 Heading 6 Char;}{\*\cs21 \additive \rtlch\fcs1
\af40\afs19 \ltrch\fcs0 \fs19\loch\f40\hich\af40\dbch\af11 \sbasedon10 \slink7 \slocked \styrsid12846663 Heading 7 Char;}{\*\cs22 \additive \rtlch\fcs1 \af40\afs19 \ltrch\fcs0 \fs19\loch\f40\hich\af40\dbch\af11
\sbasedon10 \slink8 \slocked \styrsid12846663 Heading 8 Char;}{\*\cs23 \additive \rtlch\fcs1 \af40\afs19 \ltrch\fcs0 \fs19\loch\f40\hich\af40\dbch\af11 \sbasedon10 \slink9 \slocked \styrsid12846663 Heading 9 Char;}{
\s24\ql \li357\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin357\itap0 \rtlch\fcs1 \af40\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033
\sbasedon0 \snext24 \styrsid12846663 Body 1;}{\s25\ql \fi-363\li720\ri0\sb120\sa120\widctlpar\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls1\adjustright\rin0\lin720\itap0 \rtlch\fcs1 \af40\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\f40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext25 \styrsid12846663 Bullet 2;}{\s26\ql \fi-358\li1435\ri0\sb120\sa120\widctlpar
\jclisttab\tx1437\wrapdefault\aspalpha\aspnum\faauto\ls2\adjustright\rin0\lin1435\itap0 \rtlch\fcs1 \af40\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033
\sbasedon0 \snext26 \styrsid12846663 Bullet 4;}{\s27\ql \fi-357\li1792\ri0\sb120\sa120\widctlpar\jclisttab\tx1795\wrapdefault\aspalpha\aspnum\faauto\ls3\adjustright\rin0\lin1792\itap0 \rtlch\fcs1 \af40\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\f40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext27 \styrsid12846663 Bullet 5;}{\s28\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1
\ab\af40\afs28\alang1025 \ltrch\fcs0 \b\fs28\lang1033\langfe1033\loch\f40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext0 \styrsid12846663 Heading EULA;}{\s29\ql \li0\ri0\sb120\sa120\widctlpar\brdrb\brdrs\brdrw10\brsp20
\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \ab\af40\afs28\alang1025 \ltrch\fcs0 \b\fs28\lang1033\langfe1033\loch\f40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext0 \styrsid12846663
Heading Software Title;}{\s30\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \ab\af40\afs19\alang1025 \ltrch\fcs0
\b\fs19\lang1033\langfe1033\loch\f40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext30 \styrsid12846663 Preamble;}{\s31\ql \fi-357\li1077\ri0\sb120\sa120\widctlpar
\tx1077\jclisttab\tx1440\wrapdefault\aspalpha\aspnum\faauto\ls4\ilvl2\outlinelevel2\adjustright\rin0\lin1077\itap0 \rtlch\fcs1 \ab\af40\afs19\alang1025 \ltrch\fcs0 \b\fs19\lang1033\langfe1033\loch\f40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033
\sbasedon3 \snext31 \styrsid12846663 Heading 3 Bold;}{\s32\ql \fi-358\li1435\ri0\sb120\sa120\widctlpar\jclisttab\tx1437\wrapdefault\aspalpha\aspnum\faauto\ls2\adjustright\rin0\lin1435\itap0 \rtlch\fcs1 \af40\afs19\alang1025 \ltrch\fcs0
\fs19\ul\lang1033\langfe1033\loch\f40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon26 \snext32 \styrsid12846663 Bullet 4 Underline;}{\*\cs33 \additive \rtlch\fcs1 \af40 \ltrch\fcs0 \f40\lang1033\langfe1033\langnp1033\langfenp1033
\sbasedon10 \styrsid12846663 Body 2 Char;}{\*\cs34 \additive \rtlch\fcs1 \af40 \ltrch\fcs0 \f40\lang1033\langfe1033\langnp1033\langfenp1033 \sbasedon10 \styrsid12846663 Body 3 Char;}{\s35\ql \li0\ri0\sb120\sa120\widctlpar\brdrt\brdrs\brdrw10\brsp20
\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \ab\af40\afs19\alang1025 \ltrch\fcs0 \b\fs19\lang1033\langfe1033\loch\f40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon30 \snext35 \styrsid12846663
Preamble Border Above;}{\*\cs36 \additive \rtlch\fcs1 \af0 \ltrch\fcs0 \ul\cf2 \sbasedon10 \styrsid12846663 Hyperlink;}{\s37\ql \li0\ri0\sb120\sa120\widctlpar\tqc\tx4320\tqr\tx8640\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0
\rtlch\fcs1 \af40\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext37 \slink38 \styrsid12846663 header;}{\*\cs38 \additive \rtlch\fcs1 \af40\afs19 \ltrch\fcs0
\fs19\loch\f40\hich\af40\dbch\af11 \sbasedon10 \slink37 \slocked \styrsid12846663 Header Char;}{\s39\ql \li0\ri0\sb120\sa120\widctlpar\tqc\tx4320\tqr\tx8640\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af40\afs19\alang1025
\ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext39 \slink40 \styrsid12846663 footer;}{\*\cs40 \additive \rtlch\fcs1 \af40\afs19 \ltrch\fcs0 \fs19\loch\f40\hich\af40\dbch\af11
\sbasedon10 \slink39 \slocked \styrsid12846663 Footer Char;}{\s41\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af40\afs16\alang1025 \ltrch\fcs0
\fs16\lang1033\langfe1033\loch\f40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext41 \slink42 \ssemihidden \sunhideused \styrsid5587114 Balloon Text;}{\*\cs42 \additive \rtlch\fcs1 \af40\afs16 \ltrch\fcs0
\fs16\loch\f40\hich\af40\dbch\af11 \sbasedon10 \slink41 \slocked \ssemihidden \styrsid5587114 Balloon Text Char;}{\s43\ql \fi-357\li1077\ri0\sb120\sa120\widctlpar\jclisttab\tx1080\wrapdefault\aspalpha\aspnum\faauto\ls7\adjustright\rin0\lin1077\itap0
\rtlch\fcs1 \af40\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext43 \styrsid4153599 Bullet 3;}}{\*\listtable{\list\listtemplateid1928476992{\listlevel\levelnfc0\levelnfcn0
\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'00.;}{\levelnumbers\'01;}\rtlch\fcs1 \ab\ai0\af43\afs20 \ltrch\fcs0 \b\i0\f43\fs20\fbias0\hres0\chhres0 \fi-357\li357\jclisttab\tx360\lin357 }{\listlevel\levelnfc4
\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'01.;}{\levelnumbers\'01;}\rtlch\fcs1 \ab\ai0\af43\afs20 \ltrch\fcs0 \b\i0\f43\fs20\fbias0\hres0\chhres0 \fi-363\li720\jclisttab\tx720\lin720 }{\listlevel
\levelnfc2\levelnfcn2\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'02.;}{\levelnumbers\'01;}\rtlch\fcs1 \ab\ai0\af40\afs20 \ltrch\fcs0 \b\i0\f40\fs20\fbias0\hres0\chhres0 \s31\fi-357\li1077
\jclisttab\tx1440\lin1077 }{\listlevel\levelnfc3\levelnfcn3\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'03.;}{\levelnumbers\'01;}\rtlch\fcs1 \ab0\ai0\af43\afs20 \ltrch\fcs0
\b0\i0\strike0\f43\fs20\ulnone\fbias0\hres0\chhres0 \fi-358\li1435\jclisttab\tx1437\lin1435 }{\listlevel\levelnfc1\levelnfcn1\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'04.;}{\levelnumbers\'01;}\rtlch\fcs1
\ab0\ai0\af43\afs20 \ltrch\fcs0 \b0\i0\strike0\f43\fs20\ulnone\fbias0\hres0\chhres0 \fi-357\li1792\jclisttab\tx2155\lin1792 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\'02\'05.;}{\levelnumbers\'01;}\rtlch\fcs1 \ab0\ai0\af43\afs20 \ltrch\fcs0 \b0\i0\f43\fs20\fbias0\hres0\chhres0 \fi-357\li2149\jclisttab\tx2152\lin2149 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0
\levelindent0{\leveltext\'02\'06.;}{\levelnumbers\'01;}\rtlch\fcs1 \ab0\ai0\af43\afs20 \ltrch\fcs0 \b0\i0\f43\fs20\fbias0\hres0\chhres0 \fi-357\li2506\jclisttab\tx2509\lin2506 }{\listlevel\levelnfc255\levelnfcn255\leveljc0\leveljcn0\levelfollow0
\levelstartat1\levelspace0\levelindent0{\leveltext\'02i.;}{\levelnumbers;}\rtlch\fcs1 \ab0\ai0\af43\afs20 \ltrch\fcs0 \b0\i0\f43\fs20\fbias0\hres0\chhres0 \fi-357\li2863\jclisttab\tx2866\lin2863 }{\listlevel\levelnfc255\levelnfcn255\leveljc0\leveljcn0
\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02A.;}{\levelnumbers;}\rtlch\fcs1 \ab0\ai0\af43\afs20 \ltrch\fcs0 \b0\i0\f43\fs20\fbias0\hres0\chhres0 \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\hres0\chhres0 \s25
\fi-363\li720\jclisttab\tx720\lin720 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhres0 \fi-360\li1440
\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0\hres0\chhres0 \fi-360\li2160
\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0\hres0\chhres0 \fi-360\li2880
\jclisttab\tx2880\lin2880 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhres0 \fi-360\li3600\jclisttab\tx3600\lin3600
}{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0\hres0\chhres0 \fi-360\li4320\jclisttab\tx4320\lin4320 }{\listlevel
\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0\hres0\chhres0 \fi-360\li5040\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc23
\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhres0 \fi-360\li5760\jclisttab\tx5760\lin5760 }{\listlevel\levelnfc23\levelnfcn23\leveljc0
\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0\hres0\chhres0 \fi-360\li6480\jclisttab\tx6480\lin6480 }{\listname ;}\listid477573462}
{\list\listtemplateid-943676316{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'00.;}{\levelnumbers\'01;}\rtlch\fcs1 \ab\ai0\af40\afs20 \ltrch\fcs0
\b\i0\f40\fs20\cf0\fbias0\hres0\chhres0 \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\af40\afs20 \ltrch\fcs0 \b\i0\f40\fs20\cf0\fbias0\hres0\chhres0 \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\af40\afs20 \ltrch\fcs0 \b\i0\f40\fs20\fbias0\hres0\chhres0 \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\af43\afs20 \ltrch\fcs0 \b0\i0\strike0\f43\fs20\ulnone\fbias0\hres0\chhres0 \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\af43\afs20 \ltrch\fcs0 \b0\i0\strike0\f43\fs20\ulnone\fbias0\hres0\chhres0 \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\af43\afs20 \ltrch\fcs0 \b0\i0\f43\fs20\fbias0\hres0\chhres0 \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\af43\afs20 \ltrch\fcs0 \b0\i0\f43\fs20\fbias0\hres0\chhres0 \s7\fi-357\li2506\jclisttab\tx2509\lin2506 }
{\listlevel\levelnfc255\levelnfcn255\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02i.;}{\levelnumbers;}\rtlch\fcs1 \ab0\ai0\af43\afs20 \ltrch\fcs0 \b0\i0\f43\fs20\fbias0\hres0\chhres0 \s8\fi-357\li2863
\jclisttab\tx2866\lin2863 }{\listlevel\levelnfc255\levelnfcn255\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02A.;}{\levelnumbers;}\rtlch\fcs1 \ab0\ai0\af43\afs20 \ltrch\fcs0 \b0\i0\f43\fs20\fbias0\hres0\chhres0 \s9
\fi-358\li3221\jclisttab\tx3223\lin3221 }{\listname ;}\listid752163927}{\list\listtemplateid303218272\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid612407812
\'01\u-3913 ?;}{\levelnumbers;}\f3\cf17\fbias0\hres0\chhres0 \s26\fi-358\li1435\jclisttab\tx1437\lin1435 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}
\f2\fbias0\hres0\chhres0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0\hres0\chhres0 \fi-360\li2160
\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0\hres0\chhres0 \fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel
\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhres0 \fi-360\li3600\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0
\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0\hres0\chhres0 \fi-360\li4320\jclisttab\tx4320\lin4320 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0
\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0\hres0\chhres0 \fi-360\li5040\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhres0 \fi-360\li5760\jclisttab\tx5760\lin5760 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}
\f10\fbias0\hres0\chhres0 \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\hres0\chhres0 \s43\fi-357\li1077\jclisttab\tx1080\lin1077 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhres0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693
\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0\hres0\chhres0 \fi-360\li2160\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689
\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0\hres0\chhres0 \fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691
\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhres0 \fi-360\li3600\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693
\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0\hres0\chhres0 \fi-360\li4320\jclisttab\tx4320\lin4320 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689
\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0\hres0\chhres0 \fi-360\li5040\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691
\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhres0 \fi-360\li5760\jclisttab\tx5760\lin5760 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693
\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0\hres0\chhres0 \fi-360\li6480\jclisttab\tx6480\lin6480 }{\listname ;}\listid1567649130}{\list\listtemplateid-961874242\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1
\levelspace0\levelindent0{\leveltext\leveltemplateid-1175557160\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0\hres0\chhres0 \s27\fi-357\li1792\jclisttab\tx1795\lin1792 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1
\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhres0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0
{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0\hres0\chhres0 \fi-360\li2160\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0\hres0\chhres0 \fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhres0 \fi-360\li3600\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693
\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0\hres0\chhres0 \fi-360\li4320\jclisttab\tx4320\lin4320 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689
\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0\hres0\chhres0 \fi-360\li5040\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691
\'01o;}{\levelnumbers;}\f2\fbias0\hres0\chhres0 \fi-360\li5760\jclisttab\tx5760\lin5760 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693
\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0\hres0\chhres0 \fi-360\li6480\jclisttab\tx6480\lin6480 }{\listname ;}\listid1848404271}}{\*\listoverridetable{\listoverride\listid477573462\listoverridecount0\ls1}{\listoverride\listid1559511898
\listoverridecount0\ls2}{\listoverride\listid1848404271\listoverridecount0\ls3}{\listoverride\listid398796681\listoverridecount0\ls4}{\listoverride\listid752163927\listoverridecount0\ls5}{\listoverride\listid398796681\listoverridecount9{\lfolevel
\listoverridestartat\levelstartat1}{\lfolevel\listoverridestartat\levelstartat1}{\lfolevel\listoverridestartat\levelstartat1}{\lfolevel\listoverridestartat\levelstartat1}{\lfolevel\listoverridestartat\levelstartat1}{\lfolevel\listoverridestartat
\levelstartat1}{\lfolevel\listoverridestartat\levelstartat1}{\lfolevel\listoverridestartat\levelstartat1}{\lfolevel\listoverridestartat\levelstartat1}\ls6}{\listoverride\listid1567649130\listoverridecount0\ls7}}{\*\rsidtbl \rsid424556\rsid525911
\rsid1585315\rsid3345554\rsid3482790\rsid3806972\rsid4153599\rsid5378582\rsid5587114\rsid6116157\rsid6694147\rsid7996727\rsid8221426\rsid8736785\rsid9321419\rsid9922559\rsid10895587\rsid10956741\rsid11076948\rsid11862451\rsid11870155\rsid11998741
\rsid12390263\rsid12587109\rsid12846663\rsid12938746\rsid13186280\rsid13322195\rsid14553105\rsid14955613\rsid15747613\rsid15823709\rsid15861188\rsid16582651}{\mmathPr\mmathFont34\mbrkBin0\mbrkBinSub0\msmallFrac0\mdispDef1\mlMargin0\mrMargin0\mdefJc1
\mwrapIndent1440\mintLim0\mnaryLim1}{\info{\author Microsoft}{\operator Marie Lazarenko (Virtuosity Consulting Group)}{\creatim\yr2016\mo3\dy31\hr20\min39}{\revtim\yr2016\mo10\dy12\hr22\min32}{\version3}{\edmins1}{\nofpages3}{\nofwords1356}{\nofchars7734}
{\*\company Microsoft Corporation}{\nofcharsws9072}{\vern89}}{\*\xmlnstbl {\xmlns1 http://schemas.microsoft.com/office/word/2003/wordml}}\paperw12240\paperh15840\margl720\margr720\margt720\margb720\gutter0\ltrsect
\widowctrl\ftnbj\aenddoc\trackmoves0\trackformatting1\donotembedsysfont1\relyonvml0\donotembedlingdata0\grfdocevents0\validatexml1\showplaceholdtext0\ignoremixedcontent0\saveinvalidxml0\showxmlerrors1\noxlattoyen
\expshrtn\noultrlspc\dntblnsbdb\nospaceforul\formshade\horzdoc\dgmargin\dghspace180\dgvspace180\dghorigin720\dgvorigin720\dghshow1\dgvshow1
\jexpand\viewkind1\viewscale100\pgbrdrhead\pgbrdrfoot\splytwnine\ftnlytwnine\htmautsp\nolnhtadjtbl\useltbaln\alntblind\lytcalctblwd\lyttblrtgr\lnbrkrule\nobrkwrptbl\snaptogridincell\allowfieldendsel\wrppunct
\asianbrkrule\rsidroot12846663\newtblstyruls\nogrowautofit\usenormstyforlist\noindnmbrts\felnbrelev\nocxsptable\indrlsweleven\noafcnsttbl\afelev\utinl\hwelev\spltpgpar\notcvasp\notbrkcnstfrctbl\notvatxbx\krnprsnet\cachedcolbal \nouicompat \fet0
{\*\wgrffmtfilter 2450}\nofeaturethrottle1\ilfomacatclnup0{\*\ftnsep \ltrpar \pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af40\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\af40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af40 \ltrch\fcs0 \insrsid13322195 \chftnsep
\par }}{\*\ftnsepc \ltrpar \pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af40\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\af40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af40 \ltrch\fcs0 \insrsid13322195 \chftnsepc
\par }}{\*\aftnsep \ltrpar \pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af40\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\af40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af40 \ltrch\fcs0 \insrsid13322195 \chftnsep
\par }}{\*\aftnsepc \ltrpar \pard\plain \ltrpar\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af40\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\af40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af40 \ltrch\fcs0 \insrsid13322195 \chftnsepc
\par }}\ltrpar \sectd \ltrsect\psz1\linex0\headery0\footery0\endnhere\sectlinegrid360\sectdefaultcl\sftnbj {\headerl \ltrpar \pard\plain \ltrpar\s37\ql \li0\ri0\sb120\sa120\widctlpar
\tqc\tx4320\tqr\tx8640\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af40\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\af40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af40 \ltrch\fcs0
\insrsid15823709
\par }\pard\plain \ltrpar\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af40\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\af40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033 {
\rtlch\fcs1 \af40 \ltrch\fcs0 \insrsid12390263
\par }}{\headerr \ltrpar \pard\plain \ltrpar\s37\ql \li0\ri0\sb120\sa120\widctlpar\tqc\tx4320\tqr\tx8640\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af40\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\af40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af40 \ltrch\fcs0 \insrsid15823709
\par }\pard\plain \ltrpar\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af40\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\af40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033 {
\rtlch\fcs1 \af40 \ltrch\fcs0 \insrsid12390263
\par }}{\headerf \ltrpar \pard\plain \ltrpar\s37\ql \li0\ri0\sb120\sa120\widctlpar\tqc\tx4320\tqr\tx8640\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af40\afs19\alang1025 \ltrch\fcs0
\fs19\lang1033\langfe1033\loch\af40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af40 \ltrch\fcs0 \insrsid15823709
\par }\pard\plain \ltrpar\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af40\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\af40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033 {
\rtlch\fcs1 \af40 \ltrch\fcs0 \insrsid12390263
\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
\ql \li0\ri0\sb120\sa120\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4153599 \rtlch\fcs1 \af40\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\af40\hich\af40\dbch\af11\cgrid\langnp1033\langfenp1033 {
\rtlch\fcs1 \ab\af44\afs20 \ltrch\fcs0 \b\fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599 \hich\af44\dbch\af13\loch\f44 MICROSOFT PRE-RELEASE SOFTWARE LICENSE TERMS{\*\bkmkstart _GoBack}{\*\bkmkend _GoBack}
\par }\pard \ltrpar\qj \li0\ri0\sb120\sa120\nowidctlpar\brdrb\brdrs\brdrw10\brsp20 \wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4153599 {\rtlch\fcs1 \ab\af44\afs20 \ltrch\fcs0
\b\fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599 \hich\af44\dbch\af13\loch\f44 MICROSOFT SQL SERVER VNEXT COMMUNITY TECHNOLOGY PREVIEW 1 (CTP1)
\par }\pard \ltrpar\ql \li0\ri0\sb120\sa120\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4153599 {\rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\hich\af44\dbch\af13\loch\f44
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 pre-release software named above, which includes the media on which you received it, if any
.\hich\af44\dbch\af13\loch\f44 The terms also apply to any Microsoft
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid4153599\charrsid4153599 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard \ltrpar\ql \fi-360\li360\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls1\adjustright\rin0\lin360\itap0\pararsid4153599 {\rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599 \hich\af44\dbch\af13\loch\f44 updates,
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid4153599\charrsid4153599 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af44\dbch\af13\loch\f44 supplements,
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid4153599\charrsid4153599 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af44\dbch\af13\loch\f44 Internet-based services, and
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid4153599\charrsid4153599 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af44\dbch\af13\loch\f44 support services
\par }\pard \ltrpar\ql \li0\ri0\sb120\sa120\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4153599 {\rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\hich\af44\dbch\af13\loch\f44 for this software, unless other terms accompany those items. If so, those terms apply.
\par }\pard \ltrpar\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4153599 {\rtlch\fcs1 \ab\af44\afs20 \ltrch\fcs0 \b\fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\hich\af44\dbch\af13\loch\f44 BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. YOU M\hich\af44\dbch\af13\loch\f44
AY CHOOSE NOT TO ACCEPT THESE TERMS, IN WHICH CASE YOU MAY NOT USE THE SOFTWARE (IF YOU HAVE NOT ALREADY INSTALLED IT) OR WITHDRAW YOUR ACCEPTANCE ANY TIME BY UNINSTALLING THE SOFTWARE.
\par }{\rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599 \hich\af44\dbch\af13\loch\f44 We collect data about how you interact with this software. This inclu\hich\af44\dbch\af13\loch\f44
des data about the performance of the services, any problems you experience with them, and the features you use. This also includes data about your device and the network you use to connect to our services, including IP address, device identifiers, region
\hich\af44\dbch\af13\loch\f44 a\hich\af44\dbch\af13\loch\f44 l and language settings. It includes information about the operating systems and other software installed on your device, including product keys. }{\rtlch\fcs1 \af44\afs20 \ltrch\fcs0
\b\i\fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599 \hich\af44\dbch\af13\loch\f44 By using this software, you consent to Microsoft\hich\f44 \rquote \loch\f44 s collection of usage and performance data related to your us
\hich\af44\dbch\af13\loch\f44 e of the software.
\par }{\rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\par }\pard \ltrpar\ql \li0\ri0\sb120\sa120\nowidctlpar\brdrt\brdrs\brdrw10\brsp20 \wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4153599 {\rtlch\fcs1 \ab\af44\afs20 \ltrch\fcs0
\b\fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599 \hich\af44\dbch\af13\loch\f44 If you comply with these license terms, you have the rights below.
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \ab\af40\afs20 \ltrch\fcs0 \b\fs20\loch\af40\hich\af40\dbch\af13\insrsid4153599\charrsid4153599 \hich\af40\dbch\af13\loch\f40 1.\tab}}\pard \ltrpar\ql \li0\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls5\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid4153599 {\rtlch\fcs1 \ab\af44\afs20 \ltrch\fcs0 \b\fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599 \hich\af44\dbch\af13\loch\f44
INSTALLATION AND USE RIGHTS.
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \ab\af40\afs20 \ltrch\fcs0 \b\fs20\loch\af40\hich\af40\dbch\af11\insrsid4153599\charrsid4153599 \hich\af40\dbch\af11\loch\f40 a.\tab}}\pard \ltrpar\ql \li0\ri0\sb120\sa120\widctlpar
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls5\ilvl1\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid4153599 {\rtlch\fcs1 \ab\af44 \ltrch\fcs0 \b\f44\insrsid4153599\charrsid4153599 \hich\af44\dbch\af11\loch\f44 Installation and Use.
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid4153599\charrsid4153599 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard \ltrpar\ql \fi-357\li720\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx720\jclisttab\tx1080\wrapdefault\aspalpha\aspnum\faauto\ls7\adjustright\rin0\lin720\itap0\pararsid4153599 {\rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599 \hich\af44\dbch\af13\loch\f44
You may install any number of copies of the software on your premises solely to internally evaluate it and pr\hich\af44\dbch\af13\loch\f44 ovide feedback to Microsoft.
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid4153599\charrsid4153599 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af44\dbch\af13\loch\f44
You may not test the software in a live operating environment unless Microsoft permits you to do so under another agreement.
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \ab\af40\afs20 \ltrch\fcs0 \b\fs20\loch\af40\hich\af40\dbch\af11\insrsid4153599\charrsid4153599 \hich\af40\dbch\af11\loch\f40 b.\tab}}\pard \ltrpar\ql \li0\ri0\sb120\sa120\widctlpar
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls5\ilvl1\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid4153599 {\rtlch\fcs1 \ab\af44 \ltrch\fcs0 \b\f44\insrsid4153599\charrsid4153599 \hich\af44\dbch\af11\loch\f44 Third Party Programs. }{
\rtlch\fcs1 \ab\af44 \ltrch\fcs0 \b\f44\ul\cf2\insrsid4153599\charrsid4153599 \hich\af44\dbch\af11\loch\f44
\par }\pard \ltrpar\ql \li720\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel1\adjustright\rin0\lin720\itap0\pararsid4153599 {\rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\hich\af44\dbch\af13\loch\f44 The software may include third party components with separate legal noti\hich\af44\dbch\af13\loch\f44
ces or governed by other agreements, as may be described in the ThirdPartyNotices file accompanying the software. Even if such components are governed by other agreements, the disclaimers and the limitations on and exclusions of damages below also apply.
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \ab\af40\afs20 \ltrch\fcs0 \b\fs20\loch\af40\hich\af40\dbch\af13\insrsid4153599\charrsid4153599 \hich\af40\dbch\af13\loch\f40 2.\tab}}\pard \ltrpar\ql \li0\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls5\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid4153599 {\rtlch\fcs1 \ab\af44\afs20 \ltrch\fcs0 \b\fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599 \hich\af44\dbch\af13\loch\f44
TERM.}{\rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599 \hich\af44\dbch\af13\loch\f44 The term of this agreement is until 6\hich\af44\dbch\af13\loch\f44 /30/2017.}{\rtlch\fcs1 \ab\af44\afs20
\ltrch\fcs0 \b\fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \ab\af40\afs20 \ltrch\fcs0 \b\fs20\loch\af40\hich\af40\dbch\af13\insrsid4153599\charrsid4153599 \hich\af40\dbch\af13\loch\f40 3.\tab}\hich\af44\dbch\af13\loch\f44 PRE-RELEASE SOFTWARE. }{\rtlch\fcs1 \af44\afs20
\ltrch\fcs0 \fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599 \hich\af44\dbch\af13\loch\f44
This software is a pre-release version. It may not work the way a final version of the software will. We may change it for the final, commercial version. We also may not release a commercial version.}{\rtlch\fcs1 \ab\af44\afs20 \ltrch\fcs0
\b\fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \ab\af40\afs20 \ltrch\fcs0 \b\fs20\loch\af40\hich\af40\dbch\af11\insrsid4153599\charrsid4153599 \hich\af40\dbch\af11\loch\f40 4.\tab}}\pard \ltrpar\ql \li0\ri0\sb120\sa120\widctlpar
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls5\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid4153599 {\rtlch\fcs1 \ab\af44 \ltrch\fcs0 \b\f44\insrsid4153599\charrsid4153599 \hich\af44\dbch\af11\loch\f44 FEEDBACK. }{\rtlch\fcs1 \af44\afs20
\ltrch\fcs0 \fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599 \hich\af44\dbch\af13\loch\f44 If you give feedback about the software to \hich\af44\dbch\af13\loch\f44
Microsoft, you give to Microsoft, without charge, the right to use, share and commercialize your feedback in any way and for any purpose. You also give to third parties, without charge, any patent rights needed for their products, technologies and service
\hich\af44\dbch\af13\loch\f44 s\hich\af44\dbch\af13\loch\f44
to use or interface with any specific parts of a Microsoft software or service that includes the feedback. You will not give feedback that is subject to a license that requires Microsoft to license its software or documentation to third parties because w
\hich\af44\dbch\af13\loch\f44 e\hich\af44\dbch\af13\loch\f44 include your feedback in them. These rights survive this agreement.
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \ab\af40\afs20 \ltrch\fcs0 \b\caps\fs20\loch\af40\hich\af40\dbch\af13\insrsid4153599\charrsid4153599 \hich\af40\dbch\af13\loch\f40 5.\tab}}\pard \ltrpar\ql \li0\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls5\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid4153599 {\rtlch\fcs1 \ab\af44\afs20 \ltrch\fcs0 \b\caps\fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\hich\af44\dbch\af13\loch\f44 Scope of License}{\rtlch\fcs1 \ab\af44\afs20 \ltrch\fcs0 \b\fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599 .}{\rtlch\fcs1 \af44\afs20 \ltrch\fcs0
\fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599 \hich\af44\dbch\af13\loch\f44 The software is licensed, not sold. This agreement only gives you some rights to use the software. Microsoft reserves all other ri
\hich\af44\dbch\af13\loch\f44
ghts. 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 the software that only allow you to use it in
\hich\af44\dbch\af13\loch\f44 \hich\af44\dbch\af13\loch\f44 certain ways. You may not}{\rtlch\fcs1 \ab\af44\afs20 \ltrch\fcs0 \b\fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid4153599\charrsid4153599 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard \ltrpar\ql \fi-363\li720\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls1\adjustright\rin0\lin720\itap0\pararsid4153599 {\rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599 \hich\af44\dbch\af13\loch\f44
disclose the results of any benchmark tests of the software to any third party without Microsoft\hich\f44 \rquote \loch\f44 s prior written approval}{\rtlch\fcs1 \af44 \ltrch\fcs0 \f44\insrsid4153599\charrsid4153599 \hich\af44\dbch\af11\loch\f44 ;}{
\rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid4153599\charrsid4153599 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af44\dbch\af13\loch\f44 work around any technical limitations in the software}{
\rtlch\fcs1 \af44 \ltrch\fcs0 \f44\insrsid4153599\charrsid4153599 \hich\af44\dbch\af11\loch\f44 ;}{\rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid4153599\charrsid4153599 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af44\dbch\af13\loch\f44 reverse engineer, decompile or disassemble the
\hich\af44\dbch\af13\loch\f44 software, except and only to the extent that applicable law expressly permits, despite this limitation}{\rtlch\fcs1 \af44 \ltrch\fcs0 \f44\insrsid4153599\charrsid4153599 \hich\af44\dbch\af11\loch\f44 ;}{\rtlch\fcs1
\af44\afs20 \ltrch\fcs0 \fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid4153599\charrsid4153599 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af44\dbch\af13\loch\f44
make more copies of the software than specified in this agreement or allowed by applicable law, despite this limitation}{\rtlch\fcs1 \af44 \ltrch\fcs0 \f44\insrsid4153599\charrsid4153599 \hich\af44\dbch\af11\loch\f44 ;}{\rtlch\fcs1 \af44\afs20
\ltrch\fcs0 \fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid4153599\charrsid4153599 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af44\dbch\af13\loch\f44 publish the software for o\hich\af44\dbch\af13\loch\f44
thers to copy}{\rtlch\fcs1 \af44 \ltrch\fcs0 \f44\insrsid4153599\charrsid4153599 \hich\af44\dbch\af11\loch\f44 ;}{\rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid4153599\charrsid4153599 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af44\dbch\af13\loch\f44 rent, lease or lend the software}{\rtlch\fcs1 \af44
\ltrch\fcs0 \f44\insrsid4153599\charrsid4153599 \hich\af44\dbch\af11\loch\f44 ;}{\rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid4153599\charrsid4153599 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af44\dbch\af13\loch\f44 transfer the software or this agreement to any third party
}{\rtlch\fcs1 \af44 \ltrch\fcs0 \f44\insrsid4153599\charrsid4153599 \hich\af44\dbch\af11\loch\f44 ; or}{\rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid4153599\charrsid4153599 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af44\dbch\af13\loch\f44 use the software for commercial software hosting services}
{\rtlch\fcs1 \af44 \ltrch\fcs0 \f44\insrsid4153599\charrsid4153599 .}{\rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \ab\af40\afs20 \ltrch\fcs0 \b\caps\fs20\loch\af40\hich\af40\dbch\af13\insrsid4153599\charrsid4153599 \hich\af40\dbch\af13\loch\f40 6.\tab}}\pard \ltrpar\ql \li0\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls5\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid4153599 {\rtlch\fcs1 \ab\af44\afs20 \ltrch\fcs0 \b\caps\fs20\cf1\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\hich\af44\dbch\af13\loch\f44 Export Restrictions}{\rtlch\fcs1 \ab\af44\afs20 \ltrch\fcs0 \b\fs20\cf1\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599 .}{\rtlch\fcs1 \af44\afs20 \ltrch\fcs0
\fs20\cf1\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599 \hich\af44\dbch\af13\loch\f44 The softw\hich\af44\dbch\af13\loch\f44
are is subject to United States export laws and regulations. You must comply with all domestic and international export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional
\hich\af44\dbch\af13\loch\f44 \hich\af44\dbch\af13\loch\f44 information, see }{\field\flddirty{\*\fldinst {\rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\ul\cf1\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599 \hich\af44\dbch\af13\loch\f44
HYPERLINK "http://www.microsoft.com/exporting" }{\rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\ul\cf1\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599 {\*\datafield
00d0c9ea79f9bace118c8200aa004ba90b0200000003000000e0c9ea79f9bace118c8200aa004ba90b5e00000068007400740070003a002f002f007700770077002e006d006900630072006f0073006f00660074002e0063006f006d002f006500780070006f007200740069006e0067000000795881f43b1d7f48af2c825d
c485276300000000a5ab0000e1ff1e0000000049110000000000540000000000f3723200001c}}}{\fldrslt {\rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\ul\cf2\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599 \hich\af44\dbch\af13\loch\f44
www.microsoft.com/exporting}}}\sectd \ltrsect\psz1\linex0\headery0\footery0\endnhere\sectlinegrid360\sectdefaultcl\sftnbj {\rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\cf1\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\hich\af44\dbch\af13\loch\f44 . }{\rtlch\fcs1 \ab\af44\afs20 \ltrch\fcs0 \b\fs20\ul\cf1\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \ab\af40\afs20 \ltrch\fcs0 \b\caps\fs20\loch\af40\hich\af40\dbch\af13\insrsid4153599\charrsid4153599 \hich\af40\dbch\af13\loch\f40 7.\tab}}{\rtlch\fcs1 \ab\af44\afs20 \ltrch\fcs0
\b\caps\fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599 \hich\af44\dbch\af13\loch\f44 SUPPORT SERVICES.}{\rtlch\fcs1 \ab\af44\afs20 \ltrch\fcs0 \b\fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\hich\af44\dbch\af13\loch\f44 }{\rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599 \hich\af44\dbch\af13\loch\f44 \hich\f44 Because this software is \'93\loch\f44 \hich\f44 as is,\'94\loch\f44
we may not provide support services for it.}{\rtlch\fcs1 \ab\af44\afs20 \ltrch\fcs0 \b\fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \ab\af40\afs20 \ltrch\fcs0 \b\caps\fs20\loch\af40\hich\af40\dbch\af13\insrsid4153599\charrsid4153599 \hich\af40\dbch\af13\loch\f40 8.\tab}}{\rtlch\fcs1 \ab\af44\afs20 \ltrch\fcs0
\b\caps\fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599 \hich\af44\dbch\af13\loch\f44 Entire Agreement.}{\rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\hich\af44\dbch\af13\loch\f44 This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software \hich\af44\dbch\af13\loch\f44 and support services.
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \ab\af40\afs20 \ltrch\fcs0 \b\caps\fs20\loch\af40\hich\af40\dbch\af13\insrsid4153599\charrsid4153599 \hich\af40\dbch\af13\loch\f40 9.\tab}}\pard \ltrpar\ql \fi-360\li360\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls5\outlinelevel0\adjustright\rin0\lin360\itap0\pararsid4153599 {\rtlch\fcs1 \ab\af44\afs20 \ltrch\fcs0 \b\caps\fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\hich\af44\dbch\af13\loch\f44 Applicable Law}{\rtlch\fcs1 \ab\af44\afs20 \ltrch\fcs0 \b\fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599 .
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \ab\af40\afs20 \ltrch\fcs0 \b\fs20\loch\af40\hich\af40\dbch\af13\insrsid4153599\charrsid4153599 \hich\af40\dbch\af13\loch\f40 a.\tab}}\pard \ltrpar\ql \li0\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls5\ilvl1\outlinelevel1\adjustright\rin0\lin0\itap0\pararsid4153599 {\rtlch\fcs1 \ab\af44\afs20 \ltrch\fcs0 \b\fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\hich\af44\dbch\af13\loch\f44 United States.}{\rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599 \hich\af44\dbch\af13\loch\f44
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 principle\hich\af44\dbch\af13\loch\f44
s. The laws of the state where you live govern all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.}{\rtlch\fcs1 \ab\af44\afs20 \ltrch\fcs0
\b\fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \ab\af40\afs20 \ltrch\fcs0 \b\fs20\loch\af40\hich\af40\dbch\af13\insrsid4153599\charrsid4153599 \hich\af40\dbch\af13\loch\f40 b.\tab}\hich\af44\dbch\af13\loch\f44 Outside the United States.}{\rtlch\fcs1
\af44\afs20 \ltrch\fcs0 \fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599 \hich\af44\dbch\af13\loch\f44 If you acquired the software in any other country, the laws of that \hich\af44\dbch\af13\loch\f44 country apply.}{\rtlch\fcs1
\ab\af44\afs20 \ltrch\fcs0 \b\fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \ab\af40\afs20 \ltrch\fcs0 \b\caps\fs20\loch\af40\hich\af40\dbch\af13\insrsid4153599\charrsid4153599 \hich\af40\dbch\af13\loch\f40 10.\tab}}\pard \ltrpar\ql \li0\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls5\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid4153599 {\rtlch\fcs1 \ab\af44\afs20 \ltrch\fcs0 \b\caps\fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\hich\af44\dbch\af13\loch\f44 Legal Effect.}{\rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599 \hich\af44\dbch\af13\loch\f44
This agreement 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\hich\af44\dbch\af13\loch\f44
your rights under the laws of your country if the laws of your country do not permit it to do so.}{\rtlch\fcs1 \ab\af44\afs20 \ltrch\fcs0 \b\caps\fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \ab\af40\afs20 \ltrch\fcs0 \b\caps\fs20\loch\af40\hich\af40\dbch\af13\insrsid4153599\charrsid4153599 \hich\af40\dbch\af13\loch\f40 11.\tab}\hich\af44\dbch\af13\loch\f44 Disclaimer of Warranty.}{\rtlch\fcs1
\ab\af44\afs20 \ltrch\fcs0 \b\fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599 \hich\af44\dbch\af13\loch\f44 }{\rtlch\fcs1 \ab\af44\afs20 \ltrch\fcs0 \b\caps\fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\hich\af44\dbch\af13\loch\f44 \hich\f44 The software is licensed \'93\loch\f44 \hich\f44 as-is.\'94\loch\f44 You bear the risk of using it. Microsoft gives no express warranties, guarantees or conditions.\hich\af44\dbch\af13\loch\f44
You may have additional consumer rights OR STATUTORY GUARANTEES 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 particula
\hich\af44\dbch\af13\loch\f44 r\hich\af44\dbch\af13\loch\f44 purpose and non-infringement.
\par }\pard \ltrpar\ql \li357\ri0\sb120\sa120\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin357\itap0\pararsid4153599 {\rtlch\fcs1 \ab\af44\afs20 \ltrch\fcs0
\b\caps\fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599 \hich\af44\dbch\af13\loch\f44 FOR AUSTRALIA \hich\f44 \endash \loch\f44
You have statutory guarantees under the Australian Consumer Law and nothing in these terms is intended to affect those rights.
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \ab\af40\afs20 \ltrch\fcs0 \b\caps\fs20\loch\af40\hich\af40\dbch\af13\insrsid4153599\charrsid4153599 \hich\af40\dbch\af13\loch\f40 12.\tab}}\pard \ltrpar\ql \fi-360\li360\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls5\outlinelevel0\adjustright\rin0\lin360\itap0\pararsid4153599 {\rtlch\fcs1 \ab\af44\afs20 \ltrch\fcs0 \b\caps\fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\hich\af44\dbch\af13\loch\f44 Limitation on and Exclusion of Remedies and Damages. You can recover from Micr\hich\af44\dbch\af13\loch\f44
osoft 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.
\par }\pard \ltrpar\ql \li357\ri0\sb120\sa120\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin357\itap0\pararsid4153599 {\rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\hich\af44\dbch\af13\loch\f44 This limitation applies to
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid4153599\charrsid4153599 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard \ltrpar\ql \fi-363\li720\ri0\sb120\sa120\nowidctlpar
\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls1\adjustright\rin0\lin720\itap0\pararsid4153599 {\rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599 \hich\af44\dbch\af13\loch\f44
anything related to the software, services, con\hich\af44\dbch\af13\loch\f44 tent (including code) on third party Internet sites, or third party programs; and
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid4153599\charrsid4153599 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af44\dbch\af13\loch\f44
claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other tort to the extent permitted by applicable law.
\par }\pard \ltrpar\ql \li360\ri0\sb120\sa120\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin360\itap0\pararsid4153599 {\rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\hich\af44\dbch\af13\loch\f44
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 limitation of incidental, consequential or other d
\hich\af44\dbch\af13\loch\f44 a\hich\af44\dbch\af13\loch\f44 mages.
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \ab\af43\afs20 \ltrch\fcs0 \b\fs20\loch\af43\hich\af43\dbch\af13\insrsid4153599\charrsid4153599 \hich\af43\dbch\af13\loch\f43 1.\tab}}\pard \ltrpar
\ql \li0\ri0\sb120\sa120\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\ls4\adjustright\rin0\lin0\itap0\pararsid4153599 {\rtlch\fcs1 \ab\af44\afs20 \ltrch\fcs0 \b\fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\hich\af44\dbch\af13\loch\f44 Please note: As this software is distributed in Quebec, Canada, these license terms are provided below in French.
\par }\pard \ltrpar\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4153599 {\rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \b\fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\hich\af44\dbch\af13\loch\f44 \hich\f44 Remarque : Ce logiciel \'e9\loch\f44 \hich\f44 tant distribu\'e9\loch\f44 \hich\f44 au Qu\'e9\loch\f44 \hich\f44 bec, Canada, certaines des clauses dans ce contrat sont fournies ci-dessous en fran\'e7\loch\f44 ais.
\par }\pard \ltrpar\ql \li0\ri0\sb120\sa120\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid4153599 {\rtlch\fcs1 \ab\af44\afs20 \ltrch\fcs0
\b\fs20\lang1036\langfe1033\loch\af44\hich\af44\dbch\af13\langnp1036\insrsid4153599\charrsid4153599 \hich\af44\dbch\af13\loch\f44 \hich\f44 EXCLUSIONS DE GARANTIE. Le logiciel est conc\'e9\loch\f44 \hich\f44 d\'e9\loch\f44 \hich\f44 sous licence \'ab\~
\loch\f44 en l\hich\f44 \rquote \'e9\loch\f44 tat\~\hich\f44 \'bb\loch\f44 \hich\f44 . Vous assumez tous les risques li\'e9\loch\f44 \hich\f44 s \'e0\loch\f44 son utilisation. \hich\af44\dbch\af13\loch\f44 Microsoft n\hich\f44 \rquote \loch\f44
accorde aucune garantie\hich\af44\dbch\af13\loch\f44 ou condition\hich\af44\dbch\af13\loch\f44 expresse.\hich\af44\dbch\af13\loch\f44 \hich\f44 Vous pouvez b\'e9\loch\f44 \hich\f44 n\'e9\loch\f44 \hich\f44 ficier de droits des consommateurs suppl\'e9
\loch\f44 mentaires \hich\af44\dbch\af13\loch\f44 \hich\f44 dans le cadre du droit local, que ce contrat ne peut modifier. Lorsque cela est autoris\'e9\loch\f44 \hich\f44 par le droit local, Microsoft exclut les garanties implicites de qualit\'e9
\loch\f44 , d\hich\f44 \rquote \loch\f44 \hich\f44 ad\'e9\loch\f44 \hich\f44 quation \'e0\loch\f44 un usage particulier et d\hich\f44 \rquote \loch\f44 \hich\f44 absence de contrefa\'e7\loch\f44 on.
\par }\pard \ltrpar\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4153599 {\rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\par }\pard \ltrpar\ql \li0\ri0\sb120\sa120\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\outlinelevel0\adjustright\rin0\lin0\itap0\pararsid4153599 {\rtlch\fcs1 \ab\af44\afs20 \ltrch\fcs0
\b\fs20\lang1036\langfe1033\loch\af44\hich\af44\dbch\af13\langnp1036\insrsid4153599\charrsid4153599 \hich\af44\dbch\af13\loch\f44 LIMITATION ET EXCLUSION DE \hich\af44\dbch\af13\loch\f44 \hich\f44
RECOURS ET DE DOMMAGES. Vous pouvez obtenir de Microsoft et de ses fournisseurs une indemnisation en cas de dommages directs limit\'e9\loch\f44 \hich\f44 e uniquement \'e0\loch\f44 \hich\f44 hauteur de 5,00 $ US. Vous ne pouvez pr\'e9\loch\f44 \hich\f44
tendre \'e0\loch\f44 aucune indemnisation pour les autres dommages, y compris les\hich\af44\dbch\af13\loch\f44 \hich\af44\dbch\af13\loch\f44 \hich\f44 dommages sp\'e9\loch\f44 \hich\f44 ciaux, indirects ou accessoires et pertes de b\'e9\loch\f44
\hich\f44 n\'e9\loch\f44 fices.
\par }\pard \ltrpar\ql \li357\ri0\sb120\sa120\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin357\itap0\pararsid4153599 {\rtlch\fcs1 \af44\afs20 \ltrch\fcs0
\fs20\lang1036\langfe1033\loch\af44\hich\af44\dbch\af13\langnp1036\insrsid4153599\charrsid4153599 \hich\af44\dbch\af13\loch\f44 Cette limitation concerne\~:
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\lang1036\langfe1033\loch\af3\hich\af3\dbch\af13\langnp1036\insrsid4153599\charrsid4153599 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard \ltrpar
\ql \fi-363\li720\ri0\sb120\sa120\nowidctlpar\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls1\adjustright\rin0\lin720\itap0\pararsid4153599 {\rtlch\fcs1 \af44\afs20 \ltrch\fcs0
\fs20\lang1036\langfe1033\loch\af44\hich\af44\dbch\af13\langnp1036\insrsid4153599\charrsid4153599 \hich\af44\dbch\af13\loch\f44 \hich\f44 toute affaire li\'e9\loch\f44
e au logiciel, aux services ou au contenu (y compris le code) figurant sur des sites Internet tiers ou dans des programmes tiers et
\par {\listtext\pard\plain\ltrpar \rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\lang1036\langfe1033\loch\af3\hich\af3\dbch\af13\langnp1036\insrsid4153599\charrsid4153599 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af44\dbch\af13\loch\f44 \hich\f44 les r\'e9
\loch\f44 c\hich\af44\dbch\af13\loch\f44 \hich\f44 lamations au titre de violation de contrat ou de garantie, ou au titre de responsabilit\'e9\loch\f44 \hich\f44 stricte, de n\'e9\loch\f44 gligence ou d\hich\f44 \rquote \loch\f44 \hich\f44
une autre faute dans la limite autoris\'e9\loch\f44 e par la loi en vigueur.
\par }\pard \ltrpar\ql \li360\ri0\sb120\sa120\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin360\itap0\pararsid4153599 {\rtlch\fcs1 \af44\afs20 \ltrch\fcs0
\fs20\lang1036\langfe1033\loch\af44\hich\af44\dbch\af13\langnp1036\insrsid4153599\charrsid4153599 \hich\af44\dbch\af13\loch\f44 Elle s\hich\f44 \rquote \loch\f44 \hich\f44 applique \'e9\loch\f44 \hich\f44 galement m\'ea\loch\f44 \hich\f44
me si Microsoft connaissait l'\'e9\loch\f44 \hich\f44 ventualit\'e9\loch\f44 d'un \hich\af44\dbch\af13\loch\f44 \hich\f44 tel dommage. La limitation ou exclusion ci-dessus peut \'e9\loch\f44 \hich\f44 galement ne pas vous \'ea\loch\f44
tre applicable, car votre pays n\hich\f44 \rquote \loch\f44 autorise pas l\hich\f44 \rquote \loch\f44 \hich\f44 exclusion ou la limitation de responsabilit\'e9\loch\f44 pour les dommages indirects, accessoires ou de quelque nature que ce soit.
\par }\pard \ltrpar\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid4153599 {\rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599
\par }{\rtlch\fcs1 \af44\afs20 \ltrch\fcs0 \b\fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599 \hich\af44\dbch\af13\loch\f44 EFFET JUR\hich\af44\dbch\af13\loch\f44 IDIQUE}{\rtlch\fcs1 \af44\afs20 \ltrch\fcs0
\fs20\loch\af44\hich\af44\dbch\af13\insrsid4153599\charrsid4153599 \hich\af44\dbch\af13\loch\f44 \hich\f44 . Le pr\'e9\loch\f44 \hich\f44 sent contrat d\'e9\loch\f44 crit certains droits juridiques. Vous pourriez avoir d\hich\f44 \rquote \loch\f44
\hich\f44 autres droits pr\'e9\loch\f44 \hich\f44 vus par les lois de votre pays. Le pr\'e9\loch\f44 \hich\f44 sent contrat ne modifie pas les droits que vous conf\'e8\loch\f44 rent les lois de votre pays si celles-ci ne le permettent pas.}{\rtlch\fcs1
\af44\afs20 \ltrch\fcs0 \fs20\lang1036\langfe1033\loch\af44\hich\af44\dbch\af13\langnp1036\insrsid15861188\charrsid4153599
\par }{\*\themedata 504b030414000600080000002100e9de0fbfff0000001c020000130000005b436f6e74656e745f54797065735d2e786d6cac91cb4ec3301045f748fc83e52d4a
9cb2400825e982c78ec7a27cc0c8992416c9d8b2a755fbf74cd25442a820166c2cd933f79e3be372bd1f07b5c3989ca74aaff2422b24eb1b475da5df374fd9ad
5689811a183c61a50f98f4babebc2837878049899a52a57be670674cb23d8e90721f90a4d2fa3802cb35762680fd800ecd7551dc18eb899138e3c943d7e503b6
b01d583deee5f99824e290b4ba3f364eac4a430883b3c092d4eca8f946c916422ecab927f52ea42b89a1cd59c254f919b0e85e6535d135a8de20f20b8c12c3b0
0c895fcf6720192de6bf3b9e89ecdbd6596cbcdd8eb28e7c365ecc4ec1ff1460f53fe813d3cc7f5b7f020000ffff0300504b030414000600080000002100a5d6
a7e7c0000000360100000b0000005f72656c732f2e72656c73848fcf6ac3300c87ef85bd83d17d51d2c31825762fa590432fa37d00e1287f68221bdb1bebdb4f
c7060abb0884a4eff7a93dfeae8bf9e194e720169aaa06c3e2433fcb68e1763dbf7f82c985a4a725085b787086a37bdbb55fbc50d1a33ccd311ba548b6309512
0f88d94fbc52ae4264d1c910d24a45db3462247fa791715fd71f989e19e0364cd3f51652d73760ae8fa8c9ffb3c330cc9e4fc17faf2ce545046e37944c69e462
a1a82fe353bd90a865aad41ed0b5b8f9d6fd010000ffff0300504b0304140006000800000021006b799616830000008a0000001c0000007468656d652f746865
6d652f7468656d654d616e616765722e786d6c0ccc4d0ac3201040e17da17790d93763bb284562b2cbaebbf600439c1a41c7a0d29fdbd7e5e38337cedf14d59b
4b0d592c9c070d8a65cd2e88b7f07c2ca71ba8da481cc52c6ce1c715e6e97818c9b48d13df49c873517d23d59085adb5dd20d6b52bd521ef2cdd5eb9246a3d8b
4757e8d3f729e245eb2b260a0238fd010000ffff0300504b03041400060008000000210030dd4329a8060000a41b0000160000007468656d652f7468656d652f
7468656d65312e786d6cec594f6fdb3614bf0fd87720746f6327761a07758ad8b19b2d4d1bc46e871e698996d850a240d2497d1bdae38001c3ba618715d86d87
615b8116d8a5fb34d93a6c1dd0afb0475292c5585e9236d88aad3e2412f9e3fbff1e1fa9abd7eec70c1d1221294fda5efd72cd4324f1794093b0eddd1ef62fad
79482a9c0498f184b4bd2991deb58df7dfbb8ad755446282607d22d771db8b944ad79796a40fc3585ee62949606ecc458c15bc8a702910f808e8c66c69b9565b
5d8a314d3c94e018c8de1a8fa94fd05093f43672e23d06af89927ac06762a049136785c10607758d9053d965021d62d6f6804fc08f86e4bef210c352c144dbab
999fb7b4717509af678b985ab0b6b4ae6f7ed9ba6c4170b06c788a705430adf71bad2b5b057d03606a1ed7ebf5babd7a41cf00b0ef83a6569632cd467faddec9
699640f6719e76b7d6ac355c7c89feca9cccad4ea7d36c65b258a206641f1b73f8b5da6a6373d9c11b90c537e7f08dce66b7bbeae00dc8e257e7f0fd2badd586
8b37a088d1e4600ead1ddaef67d40bc898b3ed4af81ac0d76a197c86826828a24bb318f3442d8ab518dfe3a20f000d6458d104a9694ac6d88728eee2782428d6
0cf03ac1a5193be4cbb921cd0b495fd054b5bd0f530c1931a3f7eaf9f7af9e3f45c70f9e1d3ff8e9f8e1c3e3073f5a42ceaa6d9c84e5552fbffdeccfc71fa33f
9e7ef3f2d117d57859c6fffac327bffcfc793510d26726ce8b2f9ffcf6ecc98baf3efdfdbb4715f04d814765f890c644a29be408edf3181433567125272371be
15c308d3f28acd249438c19a4b05fd9e8a1cf4cd296699771c393ac4b5e01d01e5a30a787d72cf1178108989a2159c77a2d801ee72ce3a5c545a6147f32a9979
3849c26ae66252c6ed637c58c5bb8b13c7bfbd490a75330f4b47f16e441c31f7184e140e494214d273fc80900aedee52ead87597fa824b3e56e82e451d4c2b4d
32a423279a668bb6690c7e9956e90cfe766cb37b077538abd27a8b1cba48c80acc2a841f12e698f13a9e281c57911ce298950d7e03aba84ac8c154f8655c4f2a
f074481847bd804859b5e696007d4b4edfc150b12addbecba6b18b148a1e54d1bc81392f23b7f84137c2715a851dd0242a633f900710a218ed715505dfe56e86
e877f0034e16bafb0e258ebb4faf06b769e888340b103d331115bebc4eb813bf83291b63624a0d1475a756c734f9bbc2cd28546ecbe1e20a3794ca175f3fae90
fb6d2dd99bb07b55e5ccf68942bd0877b23c77b908e8db5f9db7f024d9239010f35bd4bbe2fcae387bfff9e2bc289f2fbe24cfaa301468dd8bd846dbb4ddf1c2
ae7b4c191ba8292337a469bc25ec3d411f06f53a73e224c5292c8de0516732307070a1c0660d125c7d44553488700a4d7bddd3444299910e254ab984c3a219ae
a4adf1d0f82b7bd46cea4388ad1c12ab5d1ed8e1153d9c9f350a3246aad01c6873462b9ac05999ad5cc988826eafc3acae853a33b7ba11cd1445875ba1b236b1
399483c90bd560b0b0263435085a21b0f22a9cf9356b38ec6046026d77eba3dc2dc60b17e92219e180643ed27acffba86e9c94c7ca9c225a0f1b0cfae0788ad5
4adc5a9aec1b703b8b93caec1a0bd8e5de7b132fe5113cf312503b998e2c2927274bd051db6b35979b1ef271daf6c6704e86c73805af4bdd476216c26593af84
0dfb5393d964f9cc9bad5c313709ea70f561ed3ea7b053075221d51696910d0d339585004b34272bff7213cc7a510a5454a3b349b1b206c1f0af490176745d4b
c663e2abb2b34b23da76f6352ba57ca2881844c1111ab189d8c7e07e1daaa04f40255c77988aa05fe06e4e5bdb4cb9c5394bbaf28d98c1d971ccd20867e556a7
689ec9166e0a522183792b8907ba55ca6e943bbf2a26e52f48957218ffcf54d1fb09dc3eac04da033e5c0d0b8c74a6b43d2e54c4a10aa511f5fb021a07533b20
5ae07e17a621a8e082dafc17e450ffb739676998b48643a4daa7211214f623150942f6a02c99e83b85583ddbbb2c4996113211551257a656ec1139246ca86be0
aadedb3d1441a89b6a929501833b197fee7b9641a3503739e57c732a59b1f7da1cf8a73b1f9bcca0945b874d4393dbbf10b1680f66bbaa5d6f96e77b6f59113d
316bb31a795600b3d256d0cad2fe354538e7566b2bd69cc6cbcd5c38f0e2bcc63058344429dc2121fd07f63f2a7c66bf76e80d75c8f7a1b622f878a18941d840
545fb28d07d205d20e8ea071b283369834296bdaac75d256cb37eb0bee740bbe278cad253b8bbfcf69eca23973d939b97891c6ce2cecd8da8e2d343578f6648a
c2d0383fc818c798cf64e52f597c740f1cbd05df0c264c49134cf09d4a60e8a107260f20f92d47b374e32f000000ffff0300504b030414000600080000002100
0dd1909fb60000001b010000270000007468656d652f7468656d652f5f72656c732f7468656d654d616e616765722e786d6c2e72656c73848f4d0ac2301484f7
8277086f6fd3ba109126dd88d0add40384e4350d363f2451eced0dae2c082e8761be9969bb979dc9136332de3168aa1a083ae995719ac16db8ec8e4052164e89
d93b64b060828e6f37ed1567914b284d262452282e3198720e274a939cd08a54f980ae38a38f56e422a3a641c8bbd048f7757da0f19b017cc524bd62107bd500
1996509affb3fd381a89672f1f165dfe514173d9850528a2c6cce0239baa4c04ca5bbabac4df000000ffff0300504b01022d0014000600080000002100e9de0f
bfff0000001c0200001300000000000000000000000000000000005b436f6e74656e745f54797065735d2e786d6c504b01022d0014000600080000002100a5d6
a7e7c0000000360100000b00000000000000000000000000300100005f72656c732f2e72656c73504b01022d00140006000800000021006b799616830000008a
0000001c00000000000000000000000000190200007468656d652f7468656d652f7468656d654d616e616765722e786d6c504b01022d00140006000800000021
0030dd4329a8060000a41b00001600000000000000000000000000d60200007468656d652f7468656d652f7468656d65312e786d6c504b01022d001400060008
00000021000dd1909fb60000001b0100002700000000000000000000000000b20900007468656d652f7468656d652f5f72656c732f7468656d654d616e616765722e786d6c2e72656c73504b050600000000050005005d010000ad0a00000000}
{\*\colorschememapping 3c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d225554462d3822207374616e64616c6f6e653d22796573223f3e0d0a3c613a636c724d
617020786d6c6e733a613d22687474703a2f2f736368656d61732e6f70656e786d6c666f726d6174732e6f72672f64726177696e676d6c2f323030362f6d6169
6e22206267313d226c743122207478313d22646b3122206267323d226c743222207478323d22646b322220616363656e74313d22616363656e74312220616363
656e74323d22616363656e74322220616363656e74333d22616363656e74332220616363656e74343d22616363656e74342220616363656e74353d22616363656e74352220616363656e74363d22616363656e74362220686c696e6b3d22686c696e6b2220666f6c486c696e6b3d22666f6c486c696e6b222f3e}
{\*\latentstyles\lsdstimax371\lsdlockeddef0\lsdsemihiddendef0\lsdunhideuseddef0\lsdqformatdef0\lsdprioritydef99{\lsdlockedexcept \lsdqformat1 \lsdpriority0 \lsdlocked0 Normal;\lsdqformat1 \lsdlocked0 heading 1;
\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdlocked0 heading 2;\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdlocked0 heading 3;\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdlocked0 heading 4;
\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdlocked0 heading 5;\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdlocked0 heading 6;\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdlocked0 heading 7;
\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdlocked0 heading 8;\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdlocked0 heading 9;\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 1;
\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 2;\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 3;\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 4;
\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 5;\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 6;\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 7;
\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 8;\lsdsemihidden1 \lsdunhideused1 \lsdpriority39 \lsdlocked0 toc 9;\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority35 \lsdlocked0 caption;
\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List Number;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List 4;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 List 5;\lsdqformat1 \lsdpriority10 \lsdlocked0 Title;
\lsdsemihidden1 \lsdunhideused1 \lsdpriority1 \lsdlocked0 Default Paragraph Font;\lsdqformat1 \lsdpriority11 \lsdlocked0 Subtitle;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Salutation;\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Date;
\lsdsemihidden1 \lsdunhideused1 \lsdlocked0 Body Text First Indent;\lsdqformat1 \lsdpriority22 \lsdlocked0 Strong;\lsdqformat1 \lsdpriority20 \lsdlocked0 Emphasis;\lsdpriority59 \lsdlocked0 Table Grid;\lsdsemihidden1 \lsdlocked0 Placeholder Text;
\lsdqformat1 \lsdpriority1 \lsdlocked0 No Spacing;\lsdpriority60 \lsdlocked0 Light Shading;\lsdpriority61 \lsdlocked0 Light List;\lsdpriority62 \lsdlocked0 Light Grid;\lsdpriority63 \lsdlocked0 Medium Shading 1;\lsdpriority64 \lsdlocked0 Medium Shading 2;
\lsdpriority65 \lsdlocked0 Medium List 1;\lsdpriority66 \lsdlocked0 Medium List 2;\lsdpriority67 \lsdlocked0 Medium Grid 1;\lsdpriority68 \lsdlocked0 Medium Grid 2;\lsdpriority69 \lsdlocked0 Medium Grid 3;\lsdpriority70 \lsdlocked0 Dark List;
\lsdpriority71 \lsdlocked0 Colorful Shading;\lsdpriority72 \lsdlocked0 Colorful List;\lsdpriority73 \lsdlocked0 Colorful Grid;\lsdpriority60 \lsdlocked0 Light Shading Accent 1;\lsdpriority61 \lsdlocked0 Light List Accent 1;
\lsdpriority62 \lsdlocked0 Light Grid Accent 1;\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 1;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 1;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 1;\lsdsemihidden1 \lsdlocked0 Revision;
\lsdqformat1 \lsdpriority34 \lsdlocked0 List Paragraph;\lsdqformat1 \lsdpriority29 \lsdlocked0 Quote;\lsdqformat1 \lsdpriority30 \lsdlocked0 Intense Quote;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 1;\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 1;
\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 1;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 1;\lsdpriority70 \lsdlocked0 Dark List Accent 1;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 1;\lsdpriority72 \lsdlocked0 Colorful List Accent 1;
\lsdpriority73 \lsdlocked0 Colorful Grid Accent 1;\lsdpriority60 \lsdlocked0 Light Shading Accent 2;\lsdpriority61 \lsdlocked0 Light List Accent 2;\lsdpriority62 \lsdlocked0 Light Grid Accent 2;\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 2;
\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 2;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 2;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 2;\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 2;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 2;
\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 2;\lsdpriority70 \lsdlocked0 Dark List Accent 2;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 2;\lsdpriority72 \lsdlocked0 Colorful List Accent 2;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 2;
\lsdpriority60 \lsdlocked0 Light Shading Accent 3;\lsdpriority61 \lsdlocked0 Light List Accent 3;\lsdpriority62 \lsdlocked0 Light Grid Accent 3;\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 3;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 3;
\lsdpriority65 \lsdlocked0 Medium List 1 Accent 3;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 3;\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 3;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 3;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 3;
\lsdpriority70 \lsdlocked0 Dark List Accent 3;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 3;\lsdpriority72 \lsdlocked0 Colorful List Accent 3;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 3;\lsdpriority60 \lsdlocked0 Light Shading Accent 4;
\lsdpriority61 \lsdlocked0 Light List Accent 4;\lsdpriority62 \lsdlocked0 Light Grid Accent 4;\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 4;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 4;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 4;
\lsdpriority66 \lsdlocked0 Medium List 2 Accent 4;\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 4;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 4;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 4;\lsdpriority70 \lsdlocked0 Dark List Accent 4;
\lsdpriority71 \lsdlocked0 Colorful Shading Accent 4;\lsdpriority72 \lsdlocked0 Colorful List Accent 4;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 4;\lsdpriority60 \lsdlocked0 Light Shading Accent 5;\lsdpriority61 \lsdlocked0 Light List Accent 5;
\lsdpriority62 \lsdlocked0 Light Grid Accent 5;\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 5;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 5;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 5;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 5;
\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 5;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 5;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 5;\lsdpriority70 \lsdlocked0 Dark List Accent 5;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 5;
\lsdpriority72 \lsdlocked0 Colorful List Accent 5;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 5;\lsdpriority60 \lsdlocked0 Light Shading Accent 6;\lsdpriority61 \lsdlocked0 Light List Accent 6;\lsdpriority62 \lsdlocked0 Light Grid Accent 6;
\lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 6;\lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 6;\lsdpriority65 \lsdlocked0 Medium List 1 Accent 6;\lsdpriority66 \lsdlocked0 Medium List 2 Accent 6;
\lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 6;\lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 6;\lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 6;\lsdpriority70 \lsdlocked0 Dark List Accent 6;\lsdpriority71 \lsdlocked0 Colorful Shading Accent 6;
\lsdpriority72 \lsdlocked0 Colorful List Accent 6;\lsdpriority73 \lsdlocked0 Colorful Grid Accent 6;\lsdqformat1 \lsdpriority19 \lsdlocked0 Subtle Emphasis;\lsdqformat1 \lsdpriority21 \lsdlocked0 Intense Emphasis;
\lsdqformat1 \lsdpriority31 \lsdlocked0 Subtle Reference;\lsdqformat1 \lsdpriority32 \lsdlocked0 Intense Reference;\lsdqformat1 \lsdpriority33 \lsdlocked0 Book Title;\lsdsemihidden1 \lsdunhideused1 \lsdpriority37 \lsdlocked0 Bibliography;
\lsdsemihidden1 \lsdunhideused1 \lsdqformat1 \lsdpriority39 \lsdlocked0 TOC Heading;\lsdpriority41 \lsdlocked0 Plain Table 1;\lsdpriority42 \lsdlocked0 Plain Table 2;\lsdpriority43 \lsdlocked0 Plain Table 3;\lsdpriority44 \lsdlocked0 Plain Table 4;
\lsdpriority45 \lsdlocked0 Plain Table 5;\lsdpriority40 \lsdlocked0 Grid Table Light;\lsdpriority46 \lsdlocked0 Grid Table 1 Light;\lsdpriority47 \lsdlocked0 Grid Table 2;\lsdpriority48 \lsdlocked0 Grid Table 3;\lsdpriority49 \lsdlocked0 Grid Table 4;
\lsdpriority50 \lsdlocked0 Grid Table 5 Dark;\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful;\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful;\lsdpriority46 \lsdlocked0 Grid Table 1 Light Accent 1;\lsdpriority47 \lsdlocked0 Grid Table 2 Accent 1;
\lsdpriority48 \lsdlocked0 Grid Table 3 Accent 1;\lsdpriority49 \lsdlocked0 Grid Table 4 Accent 1;\lsdpriority50 \lsdlocked0 Grid Table 5 Dark Accent 1;\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful Accent 1;
\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful Accent 1;\lsdpriority46 \lsdlocked0 Grid Table 1 Light Accent 2;\lsdpriority47 \lsdlocked0 Grid Table 2 Accent 2;\lsdpriority48 \lsdlocked0 Grid Table 3 Accent 2;
\lsdpriority49 \lsdlocked0 Grid Table 4 Accent 2;\lsdpriority50 \lsdlocked0 Grid Table 5 Dark Accent 2;\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful Accent 2;\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful Accent 2;
\lsdpriority46 \lsdlocked0 Grid Table 1 Light Accent 3;\lsdpriority47 \lsdlocked0 Grid Table 2 Accent 3;\lsdpriority48 \lsdlocked0 Grid Table 3 Accent 3;\lsdpriority49 \lsdlocked0 Grid Table 4 Accent 3;
\lsdpriority50 \lsdlocked0 Grid Table 5 Dark Accent 3;\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful Accent 3;\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful Accent 3;\lsdpriority46 \lsdlocked0 Grid Table 1 Light Accent 4;
\lsdpriority47 \lsdlocked0 Grid Table 2 Accent 4;\lsdpriority48 \lsdlocked0 Grid Table 3 Accent 4;\lsdpriority49 \lsdlocked0 Grid Table 4 Accent 4;\lsdpriority50 \lsdlocked0 Grid Table 5 Dark Accent 4;
\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful Accent 4;\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful Accent 4;\lsdpriority46 \lsdlocked0 Grid Table 1 Light Accent 5;\lsdpriority47 \lsdlocked0 Grid Table 2 Accent 5;
\lsdpriority48 \lsdlocked0 Grid Table 3 Accent 5;\lsdpriority49 \lsdlocked0 Grid Table 4 Accent 5;\lsdpriority50 \lsdlocked0 Grid Table 5 Dark Accent 5;\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful Accent 5;
\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful Accent 5;\lsdpriority46 \lsdlocked0 Grid Table 1 Light Accent 6;\lsdpriority47 \lsdlocked0 Grid Table 2 Accent 6;\lsdpriority48 \lsdlocked0 Grid Table 3 Accent 6;
\lsdpriority49 \lsdlocked0 Grid Table 4 Accent 6;\lsdpriority50 \lsdlocked0 Grid Table 5 Dark Accent 6;\lsdpriority51 \lsdlocked0 Grid Table 6 Colorful Accent 6;\lsdpriority52 \lsdlocked0 Grid Table 7 Colorful Accent 6;
\lsdpriority46 \lsdlocked0 List Table 1 Light;\lsdpriority47 \lsdlocked0 List Table 2;\lsdpriority48 \lsdlocked0 List Table 3;\lsdpriority49 \lsdlocked0 List Table 4;\lsdpriority50 \lsdlocked0 List Table 5 Dark;
\lsdpriority51 \lsdlocked0 List Table 6 Colorful;\lsdpriority52 \lsdlocked0 List Table 7 Colorful;\lsdpriority46 \lsdlocked0 List Table 1 Light Accent 1;\lsdpriority47 \lsdlocked0 List Table 2 Accent 1;\lsdpriority48 \lsdlocked0 List Table 3 Accent 1;
\lsdpriority49 \lsdlocked0 List Table 4 Accent 1;\lsdpriority50 \lsdlocked0 List Table 5 Dark Accent 1;\lsdpriority51 \lsdlocked0 List Table 6 Colorful Accent 1;\lsdpriority52 \lsdlocked0 List Table 7 Colorful Accent 1;
\lsdpriority46 \lsdlocked0 List Table 1 Light Accent 2;\lsdpriority47 \lsdlocked0 List Table 2 Accent 2;\lsdpriority48 \lsdlocked0 List Table 3 Accent 2;\lsdpriority49 \lsdlocked0 List Table 4 Accent 2;
\lsdpriority50 \lsdlocked0 List Table 5 Dark Accent 2;\lsdpriority51 \lsdlocked0 List Table 6 Colorful Accent 2;\lsdpriority52 \lsdlocked0 List Table 7 Colorful Accent 2;\lsdpriority46 \lsdlocked0 List Table 1 Light Accent 3;
\lsdpriority47 \lsdlocked0 List Table 2 Accent 3;\lsdpriority48 \lsdlocked0 List Table 3 Accent 3;\lsdpriority49 \lsdlocked0 List Table 4 Accent 3;\lsdpriority50 \lsdlocked0 List Table 5 Dark Accent 3;
\lsdpriority51 \lsdlocked0 List Table 6 Colorful Accent 3;\lsdpriority52 \lsdlocked0 List Table 7 Colorful Accent 3;\lsdpriority46 \lsdlocked0 List Table 1 Light Accent 4;\lsdpriority47 \lsdlocked0 List Table 2 Accent 4;
\lsdpriority48 \lsdlocked0 List Table 3 Accent 4;\lsdpriority49 \lsdlocked0 List Table 4 Accent 4;\lsdpriority50 \lsdlocked0 List Table 5 Dark Accent 4;\lsdpriority51 \lsdlocked0 List Table 6 Colorful Accent 4;
\lsdpriority52 \lsdlocked0 List Table 7 Colorful Accent 4;\lsdpriority46 \lsdlocked0 List Table 1 Light Accent 5;\lsdpriority47 \lsdlocked0 List Table 2 Accent 5;\lsdpriority48 \lsdlocked0 List Table 3 Accent 5;
\lsdpriority49 \lsdlocked0 List Table 4 Accent 5;\lsdpriority50 \lsdlocked0 List Table 5 Dark Accent 5;\lsdpriority51 \lsdlocked0 List Table 6 Colorful Accent 5;\lsdpriority52 \lsdlocked0 List Table 7 Colorful Accent 5;
\lsdpriority46 \lsdlocked0 List Table 1 Light Accent 6;\lsdpriority47 \lsdlocked0 List Table 2 Accent 6;\lsdpriority48 \lsdlocked0 List Table 3 Accent 6;\lsdpriority49 \lsdlocked0 List Table 4 Accent 6;
\lsdpriority50 \lsdlocked0 List Table 5 Dark Accent 6;\lsdpriority51 \lsdlocked0 List Table 6 Colorful Accent 6;\lsdpriority52 \lsdlocked0 List Table 7 Colorful Accent 6;}}{\*\datastore 010500000200000018000000
4d73786d6c322e534158584d4c5265616465722e362e3000000000000000000000060000
d0cf11e0a1b11ae1000000000000000000000000000000003e000300feff090006000000000000000000000001000000010000000000000000100000feffffff00000000feffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
fffffffffffffffffdfffffffeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
ffffffffffffffffffffffffffffffff52006f006f007400200045006e00740072007900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000500ffffffffffffffffffffffff0c6ad98892f1d411a65f0040963251e5000000000000000000000000e0d7
16201325d201feffffff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff00000000000000000000000000000000000000000000000000000000
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff000000000000000000000000000000000000000000000000
0000000000000000000000000000000000000000000000000105000000000000}}

Двоичные данные
packages/Microsoft.SqlServer.Types.14.0.314.76/nativeBinaries/x64/SqlServerSpatial140.dll поставляемый Normal file

Двоичный файл не отображается.

Двоичные данные
packages/Microsoft.SqlServer.Types.14.0.314.76/nativeBinaries/x64/msvcr120.dll поставляемый Normal file

Двоичный файл не отображается.

Двоичные данные
packages/Microsoft.SqlServer.Types.14.0.314.76/nativeBinaries/x86/SqlServerSpatial140.dll поставляемый Normal file

Двоичный файл не отображается.

Двоичные данные
packages/Microsoft.SqlServer.Types.14.0.314.76/nativeBinaries/x86/msvcr120.dll поставляемый Normal file

Двоичный файл не отображается.

Просмотреть файл

@ -0,0 +1,70 @@
param($installPath, $toolsPath, $package, $project)
$packagePath = (New-Object system.IO.DirectoryInfo $toolsPath).Parent.FullName
$cppBinaryPathx86 = Join-Path $packagePath "nativeBinaries\x86\msvcr120.dll"
$cppBinaryPathx64 = Join-Path $packagePath "nativeBinaries\x64\msvcr120.dll"
$sqlBinaryPathx86 = Join-Path $packagePath "nativeBinaries\x86\SqlServerSpatial140.dll"
$sqlBinaryPathx64 = Join-Path $packagePath "nativeBinaries\x64\SqlServerSpatial140.dll"
$sqlServerTypes = $project.ProjectItems.Item("SqlServerTypes")
$isAspNetProject = !$project.FullName.EndsWith('proj')
$folderx86 = $sqlServerTypes.ProjectItems | where Name -eq "x86"
if (!$folderx86)
{
$folderx86 = $sqlServerTypes.ProjectItems.AddFolder("x86")
}
$folderx64 = $sqlServerTypes.ProjectItems | where Name -eq "x64"
if (!$folderx64)
{
$folderx64 = $sqlServerTypes.ProjectItems.AddFolder("x64")
}
$cppLinkx86 = $folderx86.ProjectItems | where Name -eq "msvcr120.dll"
if (!$cppLinkx86)
{
$cppLinkx86 = $folderx86.ProjectItems.AddFromFileCopy($cppBinaryPathx86)
if (!$isAspNetProject)
{
$cppLinkx86.Properties.Item("CopyToOutputDirectory").Value = 2
}
}
$sqlLinkx86 = $folderx86.ProjectItems | where Name -eq "SqlServerSpatial140.dll"
if (!$sqlLinkx86)
{
$sqlLinkx86 = $folderx86.ProjectItems.AddFromFileCopy($sqlBinaryPathx86)
if (!$isAspNetProject)
{
$sqlLinkx86.Properties.Item("CopyToOutputDirectory").Value = 2
}
}
$cppLinkx64 = $folderx64.ProjectItems | where Name -eq "msvcr120.dll"
if (!$cppLinkx64)
{
$cppLinkx64 = $folderx64.ProjectItems.AddFromFileCopy($cppBinaryPathx64)
if (!$isAspNetProject)
{
$cppLinkx64.Properties.Item("CopyToOutputDirectory").Value = 2
}
}
$sqlLinkx64 = $folderx64.ProjectItems | where Name -eq "SqlServerSpatial140.dll"
if (!$sqlLinkx64)
{
$sqlLinkx64 = $folderx64.ProjectItems.AddFromFileCopy($sqlBinaryPathx64)
if (!$isAspNetProject)
{
$sqlLinkx64.Properties.Item("CopyToOutputDirectory").Value = 2
}
}
$readmefile = Join-Path $project.FullName "SqlServerTypes\readme.htm"
if (!$isAspNetProject)
{
$readmefile = Join-Path (Split-Path $project.FullName) "SqlServerTypes\readme.htm"
}
$dte.ItemOperations.Navigate($readmefile)

Просмотреть файл

@ -1,52 +1,52 @@
param($installPath, $toolsPath, $package, $project)
$sqlServerTypes = $project.ProjectItems | where Name -eq "SqlServerTypes"
if($sqlServerTypes)
{
$folderx86 = $sqlServerTypes.ProjectItems | where Name -eq "x86"
if ($folderx86)
{
$cppFilex86 = $folderx86.ProjectItems | where Name -eq "msvcr100.dll"
if($cppFilex86)
{
$cppFilex86.Delete();
}
$sqlFilex86 = $folderx86.ProjectItems | where Name -eq "SqlServerSpatial110.dll"
if($sqlFilex86)
{
$sqlFilex86.Delete();
}
if($folderx86.ProjectItems.Count -eq 0)
{
$folderx86.Delete()
}
}
$folderx64 = $sqlServerTypes.ProjectItems | where Name -eq "x64"
if ($folderx64)
{
$cppFilex64 = $folderx64.ProjectItems | where Name -eq "msvcr100.dll"
if($cppFilex64)
{
$cppFilex64.Delete();
}
$sqlFilex64 = $folderx64.ProjectItems | where Name -eq "SqlServerSpatial110.dll"
if($sqlFilex64)
{
$sqlFilex64.Delete();
}
if($folderx64.ProjectItems.Count -eq 0)
{
$folderx64.Delete()
}
}
if($sqlServerTypes.ProjectItems.Count -eq 0)
{
$sqlServerTypes.Delete()
}
param($installPath, $toolsPath, $package, $project)
$sqlServerTypes = $project.ProjectItems | where Name -eq "SqlServerTypes"
if($sqlServerTypes)
{
$folderx86 = $sqlServerTypes.ProjectItems | where Name -eq "x86"
if ($folderx86)
{
$cppFilex86 = $folderx86.ProjectItems | where Name -eq "msvcr120.dll"
if($cppFilex86)
{
$cppFilex86.Delete();
}
$sqlFilex86 = $folderx86.ProjectItems | where Name -eq "SqlServerSpatial140.dll"
if($sqlFilex86)
{
$sqlFilex86.Delete();
}
if($folderx86.ProjectItems.Count -eq 0)
{
$folderx86.Delete()
}
}
$folderx64 = $sqlServerTypes.ProjectItems | where Name -eq "x64"
if ($folderx64)
{
$cppFilex64 = $folderx64.ProjectItems | where Name -eq "msvcr120.dll"
if($cppFilex64)
{
$cppFilex64.Delete();
}
$sqlFilex64 = $folderx64.ProjectItems | where Name -eq "SqlServerSpatial140.dll"
if($sqlFilex64)
{
$sqlFilex64.Delete();
}
if($folderx64.ProjectItems.Count -eq 0)
{
$folderx64.Delete()
}
}
if($sqlServerTypes.ProjectItems.Count -eq 0)
{
$sqlServerTypes.Delete()
}
}

Двоичный файл не отображается.

Двоичный файл не отображается.

Двоичный файл не отображается.

Двоичный файл не отображается.

Двоичный файл не отображается.

Двоичный файл не отображается.

Двоичный файл не отображается.

Двоичный файл не отображается.

Двоичный файл не отображается.

Двоичный файл не отображается.

Двоичный файл не отображается.

Двоичный файл не отображается.

Двоичный файл не отображается.

Просмотреть файл

@ -1,3 +1,18 @@
LINQ to DB 1.8.0 Release Notes
---------------------------------
Added support for Window (Analytic) Functions: https://github.com/linq2db/linq2db/pull/613
Now ObjectDisposedException will be thrown while trying to use disposed IDataContext instance: https://github.com/linq2db/linq2db/issues/445
Added experimental support for big logical expressions optimization: https://github.com/linq2db/linq2db/issues/447
Optimized use of different MappingSchemas: https://github.com/linq2db/linq2db/issues/615
Added CROSS JOIN support
Added support of TAKE hints: https://github.com/linq2db/linq2db/issues/560
Added protection from writing GroupBy queries that lead to unexpected behaviour: https://github.com/linq2db/linq2db/issues/365
MySql: string.Length is now properly returns number of characters instead of size in bytes when used in query: https://github.com/linq2db/linq2db/issues/343
Fluent mapping enchantments (fixed inheritance & changing attributes several times)
Number of bug fixes and optimizations
LINQ to DB 1.7.6 Release Notes
---------------------------------
@ -14,7 +29,7 @@ F# options support
What's new in 1.0.7.5
---------------------
Added JOIN LITERAL support for PostgreSQL.
Added JOIN LATERAL support for PostgreSQL.

Двоичные данные
packages/linq2db.1.8.0/lib/net40/linq2db.dll поставляемый Normal file

Двоичный файл не отображается.

Двоичные данные
packages/linq2db.1.8.0/lib/net40/linq2db.pdb поставляемый Normal file

Двоичный файл не отображается.

Двоичные данные
packages/linq2db.1.8.0/lib/net45/linq2db.dll поставляемый Normal file

Двоичный файл не отображается.

Двоичные данные
packages/linq2db.1.8.0/lib/net45/linq2db.pdb поставляемый Normal file

Двоичный файл не отображается.

Двоичные данные
packages/linq2db.1.8.0/lib/netcore45/linq2db.WindowsStore.dll поставляемый Normal file

Двоичный файл не отображается.

Двоичные данные
packages/linq2db.1.8.0/lib/netcore45/linq2db.WindowsStore.pdb поставляемый Normal file

Двоичный файл не отображается.

Двоичные данные
packages/linq2db.1.8.0/lib/sl4/linq2db.Silverlight.dll поставляемый Normal file

Двоичный файл не отображается.

Двоичные данные
packages/linq2db.1.8.0/lib/sl4/linq2db.Silverlight.pdb поставляемый Normal file

Двоичный файл не отображается.

Двоичные данные
packages/linq2db.1.8.0/lib/sl5/linq2db.Silverlight.dll поставляемый Normal file

Двоичный файл не отображается.

Двоичные данные
packages/linq2db.1.8.0/lib/sl5/linq2db.Silverlight.pdb поставляемый Normal file

Двоичный файл не отображается.

Двоичные данные
packages/linq2db.1.8.0/lib/windows8/linq2db.WindowsStore.dll поставляемый Normal file

Двоичный файл не отображается.

Двоичные данные
packages/linq2db.1.8.0/lib/windows8/linq2db.WindowsStore.pdb поставляемый Normal file

Двоичный файл не отображается.

Двоичные данные
packages/linq2db.1.8.0/linq2db.1.8.0.nupkg поставляемый Normal file

Двоичный файл не отображается.