Removed nuget packages from repo
This commit is contained in:
parent
5a1039ed8d
commit
f94eda3c20
|
@ -57,6 +57,10 @@
|
||||||
<SpecificVersion>False</SpecificVersion>
|
<SpecificVersion>False</SpecificVersion>
|
||||||
<HintPath>..\packages\Exceptron.Client.1.0.7\lib\net20\Exceptron.Client.dll</HintPath>
|
<HintPath>..\packages\Exceptron.Client.1.0.7\lib\net20\Exceptron.Client.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
|
<Reference Include="Newtonsoft.Json, Version=4.5.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||||
|
<SpecificVersion>False</SpecificVersion>
|
||||||
|
<HintPath>..\packages\Newtonsoft.Json.4.5.11\lib\net40\Newtonsoft.Json.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
<Reference Include="Ninject, Version=3.0.0.0, Culture=neutral, PublicKeyToken=c7192dc5380945e7, processorArchitecture=MSIL">
|
<Reference Include="Ninject, Version=3.0.0.0, Culture=neutral, PublicKeyToken=c7192dc5380945e7, processorArchitecture=MSIL">
|
||||||
<SpecificVersion>False</SpecificVersion>
|
<SpecificVersion>False</SpecificVersion>
|
||||||
<HintPath>..\packages\Ninject.3.0.1.10\lib\net40\Ninject.dll</HintPath>
|
<HintPath>..\packages\Ninject.3.0.1.10\lib\net40\Ninject.dll</HintPath>
|
||||||
|
|
|
@ -112,6 +112,10 @@
|
||||||
<SpecificVersion>False</SpecificVersion>
|
<SpecificVersion>False</SpecificVersion>
|
||||||
<HintPath>..\packages\Prowlin 0.9.4163.39219\Prowlin.dll</HintPath>
|
<HintPath>..\packages\Prowlin 0.9.4163.39219\Prowlin.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
|
<Reference Include="SignalR, Version=0.5.1.10822, Culture=neutral, processorArchitecture=MSIL">
|
||||||
|
<SpecificVersion>False</SpecificVersion>
|
||||||
|
<HintPath>..\packages\SignalR.Server.0.5.3\lib\net40\SignalR.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
<Reference Include="System" />
|
<Reference Include="System" />
|
||||||
<Reference Include="System.ComponentModel.DataAnnotations" />
|
<Reference Include="System.ComponentModel.DataAnnotations" />
|
||||||
<Reference Include="System.Configuration" />
|
<Reference Include="System.Configuration" />
|
||||||
|
|
|
@ -163,6 +163,10 @@
|
||||||
<Reference Include="MiniProfiler">
|
<Reference Include="MiniProfiler">
|
||||||
<HintPath>..\packages\MiniProfiler.2.0.2\lib\net40\MiniProfiler.dll</HintPath>
|
<HintPath>..\packages\MiniProfiler.2.0.2\lib\net40\MiniProfiler.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
|
<Reference Include="Newtonsoft.Json, Version=4.5.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||||
|
<SpecificVersion>False</SpecificVersion>
|
||||||
|
<HintPath>..\packages\Newtonsoft.Json.4.5.11\lib\net40\Newtonsoft.Json.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
<Reference Include="Ninject, Version=3.0.0.0, Culture=neutral, PublicKeyToken=c7192dc5380945e7, processorArchitecture=MSIL">
|
<Reference Include="Ninject, Version=3.0.0.0, Culture=neutral, PublicKeyToken=c7192dc5380945e7, processorArchitecture=MSIL">
|
||||||
<SpecificVersion>False</SpecificVersion>
|
<SpecificVersion>False</SpecificVersion>
|
||||||
<HintPath>..\packages\Ninject.3.0.1.10\lib\net40\Ninject.dll</HintPath>
|
<HintPath>..\packages\Ninject.3.0.1.10\lib\net40\Ninject.dll</HintPath>
|
||||||
|
|
|
@ -67,6 +67,10 @@
|
||||||
<SpecificVersion>False</SpecificVersion>
|
<SpecificVersion>False</SpecificVersion>
|
||||||
<HintPath>..\..\Libraries\Migrator.NET\Migrator.Providers.dll</HintPath>
|
<HintPath>..\..\Libraries\Migrator.NET\Migrator.Providers.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
|
<Reference Include="Newtonsoft.Json, Version=4.5.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||||
|
<SpecificVersion>False</SpecificVersion>
|
||||||
|
<HintPath>..\..\packages\Newtonsoft.Json.4.5.11\lib\net40\Newtonsoft.Json.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
<Reference Include="Ninject, Version=3.0.0.0, Culture=neutral, PublicKeyToken=c7192dc5380945e7, processorArchitecture=MSIL">
|
<Reference Include="Ninject, Version=3.0.0.0, Culture=neutral, PublicKeyToken=c7192dc5380945e7, processorArchitecture=MSIL">
|
||||||
<SpecificVersion>False</SpecificVersion>
|
<SpecificVersion>False</SpecificVersion>
|
||||||
<HintPath>..\..\packages\Ninject.3.0.1.10\lib\net40\Ninject.dll</HintPath>
|
<HintPath>..\..\packages\Ninject.3.0.1.10\lib\net40\Ninject.dll</HintPath>
|
||||||
|
|
|
@ -59,6 +59,9 @@
|
||||||
<Reference Include="Ionic.Zip, Version=1.9.1.8, Culture=neutral, PublicKeyToken=edbe51ad942a3f5c, processorArchitecture=MSIL">
|
<Reference Include="Ionic.Zip, Version=1.9.1.8, Culture=neutral, PublicKeyToken=edbe51ad942a3f5c, processorArchitecture=MSIL">
|
||||||
<HintPath>..\packages\DotNetZip.1.9.1.8\lib\net20\Ionic.Zip.dll</HintPath>
|
<HintPath>..\packages\DotNetZip.1.9.1.8\lib\net20\Ionic.Zip.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
|
<Reference Include="Newtonsoft.Json">
|
||||||
|
<HintPath>..\packages\Newtonsoft.Json.4.5.11\lib\net40\Newtonsoft.Json.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
<Reference Include="nunit.framework">
|
<Reference Include="nunit.framework">
|
||||||
<HintPath>..\packages\NUnit.2.6.0.12054\lib\nunit.framework.dll</HintPath>
|
<HintPath>..\packages\NUnit.2.6.0.12054\lib\nunit.framework.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
|
|
|
@ -76,6 +76,10 @@
|
||||||
<SpecificVersion>False</SpecificVersion>
|
<SpecificVersion>False</SpecificVersion>
|
||||||
<HintPath>..\packages\MiniProfiler.2.0.2\lib\net40\MiniProfiler.dll</HintPath>
|
<HintPath>..\packages\MiniProfiler.2.0.2\lib\net40\MiniProfiler.dll</HintPath>
|
||||||
</Reference>
|
</Reference>
|
||||||
|
<Reference Include="Newtonsoft.Json, Version=4.5.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
|
||||||
|
<SpecificVersion>False</SpecificVersion>
|
||||||
|
<HintPath>..\packages\Newtonsoft.Json.4.5.11\lib\net40\Newtonsoft.Json.dll</HintPath>
|
||||||
|
</Reference>
|
||||||
<Reference Include="Ninject, Version=3.0.0.0, Culture=neutral, PublicKeyToken=c7192dc5380945e7, processorArchitecture=MSIL">
|
<Reference Include="Ninject, Version=3.0.0.0, Culture=neutral, PublicKeyToken=c7192dc5380945e7, processorArchitecture=MSIL">
|
||||||
<SpecificVersion>False</SpecificVersion>
|
<SpecificVersion>False</SpecificVersion>
|
||||||
<HintPath>..\packages\Ninject.3.0.1.10\lib\net40\Ninject.dll</HintPath>
|
<HintPath>..\packages\Ninject.3.0.1.10\lib\net40\Ninject.dll</HintPath>
|
||||||
|
|
Binary file not shown.
|
@ -1,15 +0,0 @@
|
||||||
<?xml version="1.0"?>
|
|
||||||
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
|
|
||||||
<metadata>
|
|
||||||
<id>AutoMapper</id>
|
|
||||||
<version>2.2.0</version>
|
|
||||||
<authors>Jimmy Bogard</authors>
|
|
||||||
<owners>Jimmy Bogard</owners>
|
|
||||||
<licenseUrl>https://github.com/AutoMapper/AutoMapper/blob/master/LICENSE.txt</licenseUrl>
|
|
||||||
<projectUrl>http://automapper.org/</projectUrl>
|
|
||||||
<iconUrl>https://s3.amazonaws.com/automapper/icon.png</iconUrl>
|
|
||||||
<requireLicenseAcceptance>false</requireLicenseAcceptance>
|
|
||||||
<description>A convention-based object-object mapper. AutoMapper uses a fluent configuration API to define an object-object mapping strategy. AutoMapper uses a convention-based matching algorithm to match up source to destination values. Currently, AutoMapper is geared towards model projection scenarios to flatten complex object models to DTOs and other simple objects, whose design is better suited for serialization, communication, messaging, or simply an anti-corruption layer between the domain and application layer.</description>
|
|
||||||
<summary>A convention-based object-object mapper</summary>
|
|
||||||
</metadata>
|
|
||||||
</package>
|
|
Binary file not shown.
|
@ -1,15 +0,0 @@
|
||||||
<?xml version="1.0"?>
|
|
||||||
<doc>
|
|
||||||
<assembly>
|
|
||||||
<name>AutoMapper</name>
|
|
||||||
</assembly>
|
|
||||||
<members>
|
|
||||||
<member name="T:AutoMapper.MappingEngine.ConversionVisitor">
|
|
||||||
<summary>
|
|
||||||
This expression visitor will replace an input parameter by another one
|
|
||||||
|
|
||||||
see http://stackoverflow.com/questions/4601844/expression-tree-copy-or-convert
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
</members>
|
|
||||||
</doc>
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -1,18 +0,0 @@
|
||||||
<?xml version="1.0"?>
|
|
||||||
<package xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
|
|
||||||
<metadata>
|
|
||||||
<id>Backbone.js</id>
|
|
||||||
<version>0.9.2</version>
|
|
||||||
<authors>Jeremy Ashkenas</authors>
|
|
||||||
<owners>Jeremy Ashkenas</owners>
|
|
||||||
<licenseUrl>https://github.com/documentcloud/backbone/blob/master/LICENSE</licenseUrl>
|
|
||||||
<projectUrl>http://documentcloud.github.com/backbone/</projectUrl>
|
|
||||||
<requireLicenseAcceptance>true</requireLicenseAcceptance>
|
|
||||||
<description>Backbone supplies structure to JavaScript-heavy applications by providing models key-value binding and custom events, collections with a rich API of enumerable functions, views with declarative event handling, and connects it all to your existing application over a RESTful JSON interface.</description>
|
|
||||||
<tags>MVC JavaScript clientside framework browser</tags>
|
|
||||||
<dependencies>
|
|
||||||
<dependency id="jQuery" version="1.7.1" />
|
|
||||||
<dependency id="underscore.js" version="1.3.1" />
|
|
||||||
</dependencies>
|
|
||||||
</metadata>
|
|
||||||
</package>
|
|
File diff suppressed because it is too large
Load Diff
|
@ -1,39 +0,0 @@
|
||||||
// Backbone.js 0.9.2
|
|
||||||
|
|
||||||
// (c) 2010-2012 Jeremy Ashkenas, DocumentCloud Inc.
|
|
||||||
// Backbone may be freely distributed under the MIT license.
|
|
||||||
// For all details and documentation:
|
|
||||||
// http://backbonejs.org
|
|
||||||
(function(){var l=this,y=l.Backbone,z=Array.prototype.slice,A=Array.prototype.splice,g;g=typeof exports!=="undefined"?exports:l.Backbone={};g.VERSION="0.9.2";var f=l._;!f&&typeof require!=="undefined"&&(f=require("underscore"));var i=l.jQuery||l.Zepto||l.ender;g.setDomLibrary=function(a){i=a};g.noConflict=function(){l.Backbone=y;return this};g.emulateHTTP=false;g.emulateJSON=false;var p=/\s+/,k=g.Events={on:function(a,b,c){var d,e,f,g,j;if(!b)return this;a=a.split(p);for(d=this._callbacks||(this._callbacks=
|
|
||||||
{});e=a.shift();)f=(j=d[e])?j.tail:{},f.next=g={},f.context=c,f.callback=b,d[e]={tail:g,next:j?j.next:f};return this},off:function(a,b,c){var d,e,h,g,j,q;if(!(e=this._callbacks))return this;if(!a&&!b&&!c)return delete this._callbacks,this;for(a=a?a.split(p):f.keys(e);d=a.shift();)if(h=e[d],delete e[d],h&&(b||c))for(g=h.tail;(h=h.next)!==g;)if(j=h.callback,q=h.context,b&&j!==b||c&&q!==c)this.on(d,j,q);return this},trigger:function(a){var b,c,d,e,f,g;if(!(d=this._callbacks))return this;f=d.all;a=a.split(p);
|
|
||||||
for(g=z.call(arguments,1);b=a.shift();){if(c=d[b])for(e=c.tail;(c=c.next)!==e;)c.callback.apply(c.context||this,g);if(c=f){e=c.tail;for(b=[b].concat(g);(c=c.next)!==e;)c.callback.apply(c.context||this,b)}}return this}};k.bind=k.on;k.unbind=k.off;var o=g.Model=function(a,b){var c;a||(a={});b&&b.parse&&(a=this.parse(a));if(c=n(this,"defaults"))a=f.extend({},c,a);if(b&&b.collection)this.collection=b.collection;this.attributes={};this._escapedAttributes={};this.cid=f.uniqueId("c");this.changed={};this._silent=
|
|
||||||
{};this._pending={};this.set(a,{silent:true});this.changed={};this._silent={};this._pending={};this._previousAttributes=f.clone(this.attributes);this.initialize.apply(this,arguments)};f.extend(o.prototype,k,{changed:null,_silent:null,_pending:null,idAttribute:"id",initialize:function(){},toJSON:function(){return f.clone(this.attributes)},get:function(a){return this.attributes[a]},escape:function(a){var b;if(b=this._escapedAttributes[a])return b;b=this.get(a);return this._escapedAttributes[a]=f.escape(b==
|
|
||||||
null?"":""+b)},has:function(a){return this.get(a)!=null},set:function(a,b,c){var d,e;f.isObject(a)||a==null?(d=a,c=b):(d={},d[a]=b);c||(c={});if(!d)return this;if(d instanceof o)d=d.attributes;if(c.unset)for(e in d)d[e]=void 0;if(!this._validate(d,c))return false;if(this.idAttribute in d)this.id=d[this.idAttribute];var b=c.changes={},h=this.attributes,g=this._escapedAttributes,j=this._previousAttributes||{};for(e in d){a=d[e];if(!f.isEqual(h[e],a)||c.unset&&f.has(h,e))delete g[e],(c.silent?this._silent:
|
|
||||||
b)[e]=true;c.unset?delete h[e]:h[e]=a;!f.isEqual(j[e],a)||f.has(h,e)!=f.has(j,e)?(this.changed[e]=a,c.silent||(this._pending[e]=true)):(delete this.changed[e],delete this._pending[e])}c.silent||this.change(c);return this},unset:function(a,b){(b||(b={})).unset=true;return this.set(a,null,b)},clear:function(a){(a||(a={})).unset=true;return this.set(f.clone(this.attributes),a)},fetch:function(a){var a=a?f.clone(a):{},b=this,c=a.success;a.success=function(d,e,f){if(!b.set(b.parse(d,f),a))return false;
|
|
||||||
c&&c(b,d)};a.error=g.wrapError(a.error,b,a);return(this.sync||g.sync).call(this,"read",this,a)},save:function(a,b,c){var d,e;f.isObject(a)||a==null?(d=a,c=b):(d={},d[a]=b);c=c?f.clone(c):{};if(c.wait){if(!this._validate(d,c))return false;e=f.clone(this.attributes)}a=f.extend({},c,{silent:true});if(d&&!this.set(d,c.wait?a:c))return false;var h=this,i=c.success;c.success=function(a,b,e){b=h.parse(a,e);c.wait&&(delete c.wait,b=f.extend(d||{},b));if(!h.set(b,c))return false;i?i(h,a):h.trigger("sync",
|
|
||||||
h,a,c)};c.error=g.wrapError(c.error,h,c);b=this.isNew()?"create":"update";b=(this.sync||g.sync).call(this,b,this,c);c.wait&&this.set(e,a);return b},destroy:function(a){var a=a?f.clone(a):{},b=this,c=a.success,d=function(){b.trigger("destroy",b,b.collection,a)};if(this.isNew())return d(),false;a.success=function(e){a.wait&&d();c?c(b,e):b.trigger("sync",b,e,a)};a.error=g.wrapError(a.error,b,a);var e=(this.sync||g.sync).call(this,"delete",this,a);a.wait||d();return e},url:function(){var a=n(this,"urlRoot")||
|
|
||||||
n(this.collection,"url")||t();return this.isNew()?a:a+(a.charAt(a.length-1)=="/"?"":"/")+encodeURIComponent(this.id)},parse:function(a){return a},clone:function(){return new this.constructor(this.attributes)},isNew:function(){return this.id==null},change:function(a){a||(a={});var b=this._changing;this._changing=true;for(var c in this._silent)this._pending[c]=true;var d=f.extend({},a.changes,this._silent);this._silent={};for(c in d)this.trigger("change:"+c,this,this.get(c),a);if(b)return this;for(;!f.isEmpty(this._pending);){this._pending=
|
|
||||||
{};this.trigger("change",this,a);for(c in this.changed)!this._pending[c]&&!this._silent[c]&&delete this.changed[c];this._previousAttributes=f.clone(this.attributes)}this._changing=false;return this},hasChanged:function(a){return!arguments.length?!f.isEmpty(this.changed):f.has(this.changed,a)},changedAttributes:function(a){if(!a)return this.hasChanged()?f.clone(this.changed):false;var b,c=false,d=this._previousAttributes,e;for(e in a)if(!f.isEqual(d[e],b=a[e]))(c||(c={}))[e]=b;return c},previous:function(a){return!arguments.length||
|
|
||||||
!this._previousAttributes?null:this._previousAttributes[a]},previousAttributes:function(){return f.clone(this._previousAttributes)},isValid:function(){return!this.validate||!this.validate(this.attributes)},_validate:function(a,b){if(b.silent||!this.validate)return true;var a=f.extend({},this.attributes,a),c=this.validate(a,b);if(!c)return true;b&&b.error?b.error(this,c,b):this.trigger("error",this,c,b);return false}});var r=g.Collection=function(a,b){b||(b={});if(b.model)this.model=b.model;if(b.comparator)this.comparator=
|
|
||||||
b.comparator;this._reset();this.initialize.apply(this,arguments);a&&this.reset(a,{silent:true,parse:b.parse})};f.extend(r.prototype,k,{model:o,initialize:function(){},toJSON:function(a){return this.map(function(b){return b.toJSON(a)})},add:function(a,b){var c,d,e,g,i,j={},k={},l=[];b||(b={});a=f.isArray(a)?a.slice():[a];for(c=0,d=a.length;c<d;c++){if(!(e=a[c]=this._prepareModel(a[c],b)))throw Error("Can't add an invalid model to a collection");g=e.cid;i=e.id;j[g]||this._byCid[g]||i!=null&&(k[i]||
|
|
||||||
this._byId[i])?l.push(c):j[g]=k[i]=e}for(c=l.length;c--;)a.splice(l[c],1);for(c=0,d=a.length;c<d;c++)(e=a[c]).on("all",this._onModelEvent,this),this._byCid[e.cid]=e,e.id!=null&&(this._byId[e.id]=e);this.length+=d;A.apply(this.models,[b.at!=null?b.at:this.models.length,0].concat(a));this.comparator&&b.at==null&&this.sort({silent:true});if(b.silent)return this;for(c=0,d=this.models.length;c<d;c++)if(j[(e=this.models[c]).cid])b.index=c,e.trigger("add",e,this,b);return this},remove:function(a,b){var c,
|
|
||||||
d,e,g;b||(b={});a=f.isArray(a)?a.slice():[a];for(c=0,d=a.length;c<d;c++)if(g=this.getByCid(a[c])||this.get(a[c])){delete this._byId[g.id];delete this._byCid[g.cid];e=this.indexOf(g);this.models.splice(e,1);this.length--;if(!b.silent)b.index=e,g.trigger("remove",g,this,b);this._removeReference(g)}return this},push:function(a,b){a=this._prepareModel(a,b);this.add(a,b);return a},pop:function(a){var b=this.at(this.length-1);this.remove(b,a);return b},unshift:function(a,b){a=this._prepareModel(a,b);this.add(a,
|
|
||||||
f.extend({at:0},b));return a},shift:function(a){var b=this.at(0);this.remove(b,a);return b},get:function(a){return a==null?void 0:this._byId[a.id!=null?a.id:a]},getByCid:function(a){return a&&this._byCid[a.cid||a]},at:function(a){return this.models[a]},where:function(a){return f.isEmpty(a)?[]:this.filter(function(b){for(var c in a)if(a[c]!==b.get(c))return false;return true})},sort:function(a){a||(a={});if(!this.comparator)throw Error("Cannot sort a set without a comparator");var b=f.bind(this.comparator,
|
|
||||||
this);this.comparator.length==1?this.models=this.sortBy(b):this.models.sort(b);a.silent||this.trigger("reset",this,a);return this},pluck:function(a){return f.map(this.models,function(b){return b.get(a)})},reset:function(a,b){a||(a=[]);b||(b={});for(var c=0,d=this.models.length;c<d;c++)this._removeReference(this.models[c]);this._reset();this.add(a,f.extend({silent:true},b));b.silent||this.trigger("reset",this,b);return this},fetch:function(a){a=a?f.clone(a):{};if(a.parse===void 0)a.parse=true;var b=
|
|
||||||
this,c=a.success;a.success=function(d,e,f){b[a.add?"add":"reset"](b.parse(d,f),a);c&&c(b,d)};a.error=g.wrapError(a.error,b,a);return(this.sync||g.sync).call(this,"read",this,a)},create:function(a,b){var c=this,b=b?f.clone(b):{},a=this._prepareModel(a,b);if(!a)return false;b.wait||c.add(a,b);var d=b.success;b.success=function(e,f){b.wait&&c.add(e,b);d?d(e,f):e.trigger("sync",a,f,b)};a.save(null,b);return a},parse:function(a){return a},chain:function(){return f(this.models).chain()},_reset:function(){this.length=
|
|
||||||
0;this.models=[];this._byId={};this._byCid={}},_prepareModel:function(a,b){b||(b={});if(a instanceof o){if(!a.collection)a.collection=this}else{var c;b.collection=this;a=new this.model(a,b);a._validate(a.attributes,b)||(a=false)}return a},_removeReference:function(a){this==a.collection&&delete a.collection;a.off("all",this._onModelEvent,this)},_onModelEvent:function(a,b,c,d){(a=="add"||a=="remove")&&c!=this||(a=="destroy"&&this.remove(b,d),b&&a==="change:"+b.idAttribute&&(delete this._byId[b.previous(b.idAttribute)],
|
|
||||||
this._byId[b.id]=b),this.trigger.apply(this,arguments))}});f.each("forEach,each,map,reduce,reduceRight,find,detect,filter,select,reject,every,all,some,any,include,contains,invoke,max,min,sortBy,sortedIndex,toArray,size,first,initial,rest,last,without,indexOf,shuffle,lastIndexOf,isEmpty,groupBy".split(","),function(a){r.prototype[a]=function(){return f[a].apply(f,[this.models].concat(f.toArray(arguments)))}});var u=g.Router=function(a){a||(a={});if(a.routes)this.routes=a.routes;this._bindRoutes();
|
|
||||||
this.initialize.apply(this,arguments)},B=/:\w+/g,C=/\*\w+/g,D=/[-[\]{}()+?.,\\^$|#\s]/g;f.extend(u.prototype,k,{initialize:function(){},route:function(a,b,c){g.history||(g.history=new m);f.isRegExp(a)||(a=this._routeToRegExp(a));c||(c=this[b]);g.history.route(a,f.bind(function(d){d=this._extractParameters(a,d);c&&c.apply(this,d);this.trigger.apply(this,["route:"+b].concat(d));g.history.trigger("route",this,b,d)},this));return this},navigate:function(a,b){g.history.navigate(a,b)},_bindRoutes:function(){if(this.routes){var a=
|
|
||||||
[],b;for(b in this.routes)a.unshift([b,this.routes[b]]);b=0;for(var c=a.length;b<c;b++)this.route(a[b][0],a[b][1],this[a[b][1]])}},_routeToRegExp:function(a){a=a.replace(D,"\\$&").replace(B,"([^/]+)").replace(C,"(.*?)");return RegExp("^"+a+"$")},_extractParameters:function(a,b){return a.exec(b).slice(1)}});var m=g.History=function(){this.handlers=[];f.bindAll(this,"checkUrl")},s=/^[#\/]/,E=/msie [\w.]+/;m.started=false;f.extend(m.prototype,k,{interval:50,getHash:function(a){return(a=(a?a.location:
|
|
||||||
window.location).href.match(/#(.*)$/))?a[1]:""},getFragment:function(a,b){if(a==null)if(this._hasPushState||b){var a=window.location.pathname,c=window.location.search;c&&(a+=c)}else a=this.getHash();a.indexOf(this.options.root)||(a=a.substr(this.options.root.length));return a.replace(s,"")},start:function(a){if(m.started)throw Error("Backbone.history has already been started");m.started=true;this.options=f.extend({},{root:"/"},this.options,a);this._wantsHashChange=this.options.hashChange!==false;
|
|
||||||
this._wantsPushState=!!this.options.pushState;this._hasPushState=!(!this.options.pushState||!window.history||!window.history.pushState);var a=this.getFragment(),b=document.documentMode;if(b=E.exec(navigator.userAgent.toLowerCase())&&(!b||b<=7))this.iframe=i('<iframe src="javascript:0" tabindex="-1" />').hide().appendTo("body")[0].contentWindow,this.navigate(a);if(this._hasPushState)i(window).bind("popstate",this.checkUrl);else if(this._wantsHashChange&&"onhashchange"in window&&!b)i(window).bind("hashchange",
|
|
||||||
this.checkUrl);else if(this._wantsHashChange)this._checkUrlInterval=setInterval(this.checkUrl,this.interval);this.fragment=a;a=window.location;b=a.pathname==this.options.root;if(this._wantsHashChange&&this._wantsPushState&&!this._hasPushState&&!b)return this.fragment=this.getFragment(null,true),window.location.replace(this.options.root+"#"+this.fragment),true;else if(this._wantsPushState&&this._hasPushState&&b&&a.hash)this.fragment=this.getHash().replace(s,""),window.history.replaceState({},document.title,
|
|
||||||
a.protocol+"//"+a.host+this.options.root+this.fragment);if(!this.options.silent)return this.loadUrl()},stop:function(){i(window).unbind("popstate",this.checkUrl).unbind("hashchange",this.checkUrl);clearInterval(this._checkUrlInterval);m.started=false},route:function(a,b){this.handlers.unshift({route:a,callback:b})},checkUrl:function(){var a=this.getFragment();a==this.fragment&&this.iframe&&(a=this.getFragment(this.getHash(this.iframe)));if(a==this.fragment)return false;this.iframe&&this.navigate(a);
|
|
||||||
this.loadUrl()||this.loadUrl(this.getHash())},loadUrl:function(a){var b=this.fragment=this.getFragment(a);return f.any(this.handlers,function(a){if(a.route.test(b))return a.callback(b),true})},navigate:function(a,b){if(!m.started)return false;if(!b||b===true)b={trigger:b};var c=(a||"").replace(s,"");if(this.fragment!=c)this._hasPushState?(c.indexOf(this.options.root)!=0&&(c=this.options.root+c),this.fragment=c,window.history[b.replace?"replaceState":"pushState"]({},document.title,c)):this._wantsHashChange?
|
|
||||||
(this.fragment=c,this._updateHash(window.location,c,b.replace),this.iframe&&c!=this.getFragment(this.getHash(this.iframe))&&(b.replace||this.iframe.document.open().close(),this._updateHash(this.iframe.location,c,b.replace))):window.location.assign(this.options.root+a),b.trigger&&this.loadUrl(a)},_updateHash:function(a,b,c){c?a.replace(a.toString().replace(/(javascript:|#).*$/,"")+"#"+b):a.hash=b}});var v=g.View=function(a){this.cid=f.uniqueId("view");this._configure(a||{});this._ensureElement();this.initialize.apply(this,
|
|
||||||
arguments);this.delegateEvents()},F=/^(\S+)\s*(.*)$/,w="model,collection,el,id,attributes,className,tagName".split(",");f.extend(v.prototype,k,{tagName:"div",$:function(a){return this.$el.find(a)},initialize:function(){},render:function(){return this},remove:function(){this.$el.remove();return this},make:function(a,b,c){a=document.createElement(a);b&&i(a).attr(b);c!=null&&i(a).html(c);return a},setElement:function(a,b){this.$el&&this.undelegateEvents();this.$el=a instanceof i?a:i(a);this.el=this.$el[0];
|
|
||||||
b!==false&&this.delegateEvents();return this},delegateEvents:function(a){if(a||(a=n(this,"events"))){this.undelegateEvents();for(var b in a){var c=a[b];f.isFunction(c)||(c=this[a[b]]);if(!c)throw Error('Method "'+a[b]+'" does not exist');var d=b.match(F),e=d[1],d=d[2],c=f.bind(c,this);e+=".delegateEvents"+this.cid;d===""?this.$el.bind(e,c):this.$el.delegate(d,e,c)}}},undelegateEvents:function(){this.$el.unbind(".delegateEvents"+this.cid)},_configure:function(a){this.options&&(a=f.extend({},this.options,
|
|
||||||
a));for(var b=0,c=w.length;b<c;b++){var d=w[b];a[d]&&(this[d]=a[d])}this.options=a},_ensureElement:function(){if(this.el)this.setElement(this.el,false);else{var a=f.extend({},n(this,"attributes"));if(this.id)a.id=this.id;if(this.className)a["class"]=this.className;this.setElement(this.make(this.tagName,a),false)}}});o.extend=r.extend=u.extend=v.extend=function(a,b){var c=G(this,a,b);c.extend=this.extend;return c};var H={create:"POST",update:"PUT","delete":"DELETE",read:"GET"};g.sync=function(a,b,
|
|
||||||
c){var d=H[a];c||(c={});var e={type:d,dataType:"json"};if(!c.url)e.url=n(b,"url")||t();if(!c.data&&b&&(a=="create"||a=="update"))e.contentType="application/json",e.data=JSON.stringify(b);if(g.emulateJSON)e.contentType="application/x-www-form-urlencoded",e.data=e.data?{model:e.data}:{};if(g.emulateHTTP&&(d==="PUT"||d==="DELETE")){if(g.emulateJSON)e.data._method=d;e.type="POST";e.beforeSend=function(a){a.setRequestHeader("X-HTTP-Method-Override",d)}}if(e.type!=="GET"&&!g.emulateJSON)e.processData=false;
|
|
||||||
return i.ajax(f.extend(e,c))};g.wrapError=function(a,b,c){return function(d,e){e=d===b?e:d;a?a(b,e,c):b.trigger("error",b,e,c)}};var x=function(){},G=function(a,b,c){var d;d=b&&b.hasOwnProperty("constructor")?b.constructor:function(){a.apply(this,arguments)};f.extend(d,a);x.prototype=a.prototype;d.prototype=new x;b&&f.extend(d.prototype,b);c&&f.extend(d,c);d.prototype.constructor=d;d.__super__=a.prototype;return d},n=function(a,b){return!a||!a[b]?null:f.isFunction(a[b])?a[b]():a[b]},t=function(){throw Error('A "url" property or function must be specified');
|
|
||||||
}}).call(this);
|
|
Binary file not shown.
Binary file not shown.
|
@ -1,280 +0,0 @@
|
||||||
<?xml version="1.0"?>
|
|
||||||
<doc>
|
|
||||||
<assembly>
|
|
||||||
<name>Microsoft.Practices.ServiceLocation</name>
|
|
||||||
</assembly>
|
|
||||||
<members>
|
|
||||||
<member name="T:Microsoft.Practices.ServiceLocation.ActivationException">
|
|
||||||
<summary>
|
|
||||||
The standard exception thrown when a ServiceLocator has an error in resolving an object.
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.ActivationException.#ctor">
|
|
||||||
<summary>
|
|
||||||
Initializes a new instance of the <see cref="T:System.Exception" /> class.
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.ActivationException.#ctor(System.String)">
|
|
||||||
<summary>
|
|
||||||
Initializes a new instance of the <see cref="T:System.Exception" /> class with a specified error message.
|
|
||||||
</summary>
|
|
||||||
<param name="message">
|
|
||||||
The message that describes the error.
|
|
||||||
</param>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.ActivationException.#ctor(System.String,System.Exception)">
|
|
||||||
<summary>
|
|
||||||
Initializes a new instance of the <see cref="T:System.Exception" /> class with a specified error message and a reference to the inner exception that is the cause of this exception.
|
|
||||||
</summary>
|
|
||||||
<param name="message">
|
|
||||||
The error message that explains the reason for the exception.
|
|
||||||
</param>
|
|
||||||
<param name="innerException">
|
|
||||||
The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified.
|
|
||||||
</param>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.ActivationException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
|
|
||||||
<summary>
|
|
||||||
Initializes a new instance of the <see cref="T:System.Exception" /> class with serialized data.
|
|
||||||
</summary>
|
|
||||||
<param name="info">
|
|
||||||
The <see cref="T:System.Runtime.Serialization.SerializationInfo" /> that holds the serialized object data about the exception being thrown.
|
|
||||||
</param>
|
|
||||||
<param name="context">
|
|
||||||
The <see cref="T:System.Runtime.Serialization.StreamingContext" /> that contains contextual information about the source or destination.
|
|
||||||
</param>
|
|
||||||
<exception cref="T:System.ArgumentNullException">
|
|
||||||
The <paramref name="info" /> parameter is null.
|
|
||||||
</exception>
|
|
||||||
<exception cref="T:System.Runtime.Serialization.SerializationException">
|
|
||||||
The class name is null or <see cref="P:System.Exception.HResult" /> is zero (0).
|
|
||||||
</exception>
|
|
||||||
</member>
|
|
||||||
<member name="T:Microsoft.Practices.ServiceLocation.IServiceLocator">
|
|
||||||
<summary>
|
|
||||||
The generic Service Locator interface. This interface is used
|
|
||||||
to retrieve services (instances identified by type and optional
|
|
||||||
name) from a container.
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.IServiceLocator.GetInstance(System.Type)">
|
|
||||||
<summary>
|
|
||||||
Get an instance of the given <paramref name="serviceType"/>.
|
|
||||||
</summary>
|
|
||||||
<param name="serviceType">Type of object requested.</param>
|
|
||||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is an error resolving
|
|
||||||
the service instance.</exception>
|
|
||||||
<returns>The requested service instance.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.IServiceLocator.GetInstance(System.Type,System.String)">
|
|
||||||
<summary>
|
|
||||||
Get an instance of the given named <paramref name="serviceType"/>.
|
|
||||||
</summary>
|
|
||||||
<param name="serviceType">Type of object requested.</param>
|
|
||||||
<param name="key">Name the object was registered with.</param>
|
|
||||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is an error resolving
|
|
||||||
the service instance.</exception>
|
|
||||||
<returns>The requested service instance.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.IServiceLocator.GetAllInstances(System.Type)">
|
|
||||||
<summary>
|
|
||||||
Get all instances of the given <paramref name="serviceType"/> currently
|
|
||||||
registered in the container.
|
|
||||||
</summary>
|
|
||||||
<param name="serviceType">Type of object requested.</param>
|
|
||||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is are errors resolving
|
|
||||||
the service instance.</exception>
|
|
||||||
<returns>A sequence of instances of the requested <paramref name="serviceType"/>.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.IServiceLocator.GetInstance``1">
|
|
||||||
<summary>
|
|
||||||
Get an instance of the given <typeparamref name="TService"/>.
|
|
||||||
</summary>
|
|
||||||
<typeparam name="TService">Type of object requested.</typeparam>
|
|
||||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is are errors resolving
|
|
||||||
the service instance.</exception>
|
|
||||||
<returns>The requested service instance.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.IServiceLocator.GetInstance``1(System.String)">
|
|
||||||
<summary>
|
|
||||||
Get an instance of the given named <typeparamref name="TService"/>.
|
|
||||||
</summary>
|
|
||||||
<typeparam name="TService">Type of object requested.</typeparam>
|
|
||||||
<param name="key">Name the object was registered with.</param>
|
|
||||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is are errors resolving
|
|
||||||
the service instance.</exception>
|
|
||||||
<returns>The requested service instance.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.IServiceLocator.GetAllInstances``1">
|
|
||||||
<summary>
|
|
||||||
Get all instances of the given <typeparamref name="TService"/> currently
|
|
||||||
registered in the container.
|
|
||||||
</summary>
|
|
||||||
<typeparam name="TService">Type of object requested.</typeparam>
|
|
||||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is are errors resolving
|
|
||||||
the service instance.</exception>
|
|
||||||
<returns>A sequence of instances of the requested <typeparamref name="TService"/>.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="T:Microsoft.Practices.ServiceLocation.Properties.Resources">
|
|
||||||
<summary>
|
|
||||||
A strongly-typed resource class, for looking up localized strings, etc.
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Microsoft.Practices.ServiceLocation.Properties.Resources.ResourceManager">
|
|
||||||
<summary>
|
|
||||||
Returns the cached ResourceManager instance used by this class.
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Microsoft.Practices.ServiceLocation.Properties.Resources.Culture">
|
|
||||||
<summary>
|
|
||||||
Overrides the current thread's CurrentUICulture property for all
|
|
||||||
resource lookups using this strongly typed resource class.
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Microsoft.Practices.ServiceLocation.Properties.Resources.ActivateAllExceptionMessage">
|
|
||||||
<summary>
|
|
||||||
Looks up a localized string similar to Activation error occured while trying to get all instances of type {0}.
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Microsoft.Practices.ServiceLocation.Properties.Resources.ActivationExceptionMessage">
|
|
||||||
<summary>
|
|
||||||
Looks up a localized string similar to Activation error occured while trying to get instance of type {0}, key "{1}".
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="T:Microsoft.Practices.ServiceLocation.ServiceLocator">
|
|
||||||
<summary>
|
|
||||||
This class provides the ambient container for this application. If your
|
|
||||||
framework defines such an ambient container, use ServiceLocator.Current
|
|
||||||
to get it.
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocator.SetLocatorProvider(Microsoft.Practices.ServiceLocation.ServiceLocatorProvider)">
|
|
||||||
<summary>
|
|
||||||
Set the delegate that is used to retrieve the current container.
|
|
||||||
</summary>
|
|
||||||
<param name="newProvider">Delegate that, when called, will return
|
|
||||||
the current ambient container.</param>
|
|
||||||
</member>
|
|
||||||
<member name="P:Microsoft.Practices.ServiceLocation.ServiceLocator.Current">
|
|
||||||
<summary>
|
|
||||||
The current ambient container.
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="T:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase">
|
|
||||||
<summary>
|
|
||||||
This class is a helper that provides a default implementation
|
|
||||||
for most of the methods of <see cref="T:Microsoft.Practices.ServiceLocation.IServiceLocator"/>.
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetService(System.Type)">
|
|
||||||
<summary>
|
|
||||||
Implementation of <see cref="M:System.IServiceProvider.GetService(System.Type)"/>.
|
|
||||||
</summary>
|
|
||||||
<param name="serviceType">The requested service.</param>
|
|
||||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is an error in resolving the service instance.</exception>
|
|
||||||
<returns>The requested object.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetInstance(System.Type)">
|
|
||||||
<summary>
|
|
||||||
Get an instance of the given <paramref name="serviceType"/>.
|
|
||||||
</summary>
|
|
||||||
<param name="serviceType">Type of object requested.</param>
|
|
||||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is an error resolving
|
|
||||||
the service instance.</exception>
|
|
||||||
<returns>The requested service instance.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetInstance(System.Type,System.String)">
|
|
||||||
<summary>
|
|
||||||
Get an instance of the given named <paramref name="serviceType"/>.
|
|
||||||
</summary>
|
|
||||||
<param name="serviceType">Type of object requested.</param>
|
|
||||||
<param name="key">Name the object was registered with.</param>
|
|
||||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is an error resolving
|
|
||||||
the service instance.</exception>
|
|
||||||
<returns>The requested service instance.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetAllInstances(System.Type)">
|
|
||||||
<summary>
|
|
||||||
Get all instances of the given <paramref name="serviceType"/> currently
|
|
||||||
registered in the container.
|
|
||||||
</summary>
|
|
||||||
<param name="serviceType">Type of object requested.</param>
|
|
||||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is are errors resolving
|
|
||||||
the service instance.</exception>
|
|
||||||
<returns>A sequence of instances of the requested <paramref name="serviceType"/>.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetInstance``1">
|
|
||||||
<summary>
|
|
||||||
Get an instance of the given <typeparamref name="TService"/>.
|
|
||||||
</summary>
|
|
||||||
<typeparam name="TService">Type of object requested.</typeparam>
|
|
||||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is are errors resolving
|
|
||||||
the service instance.</exception>
|
|
||||||
<returns>The requested service instance.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetInstance``1(System.String)">
|
|
||||||
<summary>
|
|
||||||
Get an instance of the given named <typeparamref name="TService"/>.
|
|
||||||
</summary>
|
|
||||||
<typeparam name="TService">Type of object requested.</typeparam>
|
|
||||||
<param name="key">Name the object was registered with.</param>
|
|
||||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is are errors resolving
|
|
||||||
the service instance.</exception>
|
|
||||||
<returns>The requested service instance.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetAllInstances``1">
|
|
||||||
<summary>
|
|
||||||
Get all instances of the given <typeparamref name="TService"/> currently
|
|
||||||
registered in the container.
|
|
||||||
</summary>
|
|
||||||
<typeparam name="TService">Type of object requested.</typeparam>
|
|
||||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is are errors resolving
|
|
||||||
the service instance.</exception>
|
|
||||||
<returns>A sequence of instances of the requested <typeparamref name="TService"/>.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.DoGetInstance(System.Type,System.String)">
|
|
||||||
<summary>
|
|
||||||
When implemented by inheriting classes, this method will do the actual work of resolving
|
|
||||||
the requested service instance.
|
|
||||||
</summary>
|
|
||||||
<param name="serviceType">Type of instance requested.</param>
|
|
||||||
<param name="key">Name of registered service you want. May be null.</param>
|
|
||||||
<returns>The requested service instance.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.DoGetAllInstances(System.Type)">
|
|
||||||
<summary>
|
|
||||||
When implemented by inheriting classes, this method will do the actual work of
|
|
||||||
resolving all the requested service instances.
|
|
||||||
</summary>
|
|
||||||
<param name="serviceType">Type of service requested.</param>
|
|
||||||
<returns>Sequence of service instance objects.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.FormatActivationExceptionMessage(System.Exception,System.Type,System.String)">
|
|
||||||
<summary>
|
|
||||||
Format the exception message for use in an <see cref="T:Microsoft.Practices.ServiceLocation.ActivationException"/>
|
|
||||||
that occurs while resolving a single service.
|
|
||||||
</summary>
|
|
||||||
<param name="actualException">The actual exception thrown by the implementation.</param>
|
|
||||||
<param name="serviceType">Type of service requested.</param>
|
|
||||||
<param name="key">Name requested.</param>
|
|
||||||
<returns>The formatted exception message string.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.FormatActivateAllExceptionMessage(System.Exception,System.Type)">
|
|
||||||
<summary>
|
|
||||||
Format the exception message for use in an <see cref="T:Microsoft.Practices.ServiceLocation.ActivationException"/>
|
|
||||||
that occurs while resolving multiple service instances.
|
|
||||||
</summary>
|
|
||||||
<param name="actualException">The actual exception thrown by the implementation.</param>
|
|
||||||
<param name="serviceType">Type of service requested.</param>
|
|
||||||
<returns>The formatted exception message string.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="T:Microsoft.Practices.ServiceLocation.ServiceLocatorProvider">
|
|
||||||
<summary>
|
|
||||||
This delegate type is used to provide a method that will
|
|
||||||
return the current container. Used with the <see cref="T:Microsoft.Practices.ServiceLocation.ServiceLocator"/>
|
|
||||||
static accessor class.
|
|
||||||
</summary>
|
|
||||||
<returns>An <see cref="T:Microsoft.Practices.ServiceLocation.IServiceLocator"/>.</returns>
|
|
||||||
</member>
|
|
||||||
</members>
|
|
||||||
</doc>
|
|
Binary file not shown.
Binary file not shown.
|
@ -1,280 +0,0 @@
|
||||||
<?xml version="1.0"?>
|
|
||||||
<doc>
|
|
||||||
<assembly>
|
|
||||||
<name>Microsoft.Practices.ServiceLocation</name>
|
|
||||||
</assembly>
|
|
||||||
<members>
|
|
||||||
<member name="T:Microsoft.Practices.ServiceLocation.ActivationException">
|
|
||||||
<summary>
|
|
||||||
The standard exception thrown when a ServiceLocator has an error in resolving an object.
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.ActivationException.#ctor">
|
|
||||||
<summary>
|
|
||||||
Initializes a new instance of the <see cref="T:System.Exception" /> class.
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.ActivationException.#ctor(System.String)">
|
|
||||||
<summary>
|
|
||||||
Initializes a new instance of the <see cref="T:System.Exception" /> class with a specified error message.
|
|
||||||
</summary>
|
|
||||||
<param name="message">
|
|
||||||
The message that describes the error.
|
|
||||||
</param>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.ActivationException.#ctor(System.String,System.Exception)">
|
|
||||||
<summary>
|
|
||||||
Initializes a new instance of the <see cref="T:System.Exception" /> class with a specified error message and a reference to the inner exception that is the cause of this exception.
|
|
||||||
</summary>
|
|
||||||
<param name="message">
|
|
||||||
The error message that explains the reason for the exception.
|
|
||||||
</param>
|
|
||||||
<param name="innerException">
|
|
||||||
The exception that is the cause of the current exception, or a null reference (Nothing in Visual Basic) if no inner exception is specified.
|
|
||||||
</param>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.ActivationException.#ctor(System.Runtime.Serialization.SerializationInfo,System.Runtime.Serialization.StreamingContext)">
|
|
||||||
<summary>
|
|
||||||
Initializes a new instance of the <see cref="T:System.Exception" /> class with serialized data.
|
|
||||||
</summary>
|
|
||||||
<param name="info">
|
|
||||||
The <see cref="T:System.Runtime.Serialization.SerializationInfo" /> that holds the serialized object data about the exception being thrown.
|
|
||||||
</param>
|
|
||||||
<param name="context">
|
|
||||||
The <see cref="T:System.Runtime.Serialization.StreamingContext" /> that contains contextual information about the source or destination.
|
|
||||||
</param>
|
|
||||||
<exception cref="T:System.ArgumentNullException">
|
|
||||||
The <paramref name="info" /> parameter is null.
|
|
||||||
</exception>
|
|
||||||
<exception cref="T:System.Runtime.Serialization.SerializationException">
|
|
||||||
The class name is null or <see cref="P:System.Exception.HResult" /> is zero (0).
|
|
||||||
</exception>
|
|
||||||
</member>
|
|
||||||
<member name="T:Microsoft.Practices.ServiceLocation.IServiceLocator">
|
|
||||||
<summary>
|
|
||||||
The generic Service Locator interface. This interface is used
|
|
||||||
to retrieve services (instances identified by type and optional
|
|
||||||
name) from a container.
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.IServiceLocator.GetInstance(System.Type)">
|
|
||||||
<summary>
|
|
||||||
Get an instance of the given <paramref name="serviceType"/>.
|
|
||||||
</summary>
|
|
||||||
<param name="serviceType">Type of object requested.</param>
|
|
||||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is an error resolving
|
|
||||||
the service instance.</exception>
|
|
||||||
<returns>The requested service instance.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.IServiceLocator.GetInstance(System.Type,System.String)">
|
|
||||||
<summary>
|
|
||||||
Get an instance of the given named <paramref name="serviceType"/>.
|
|
||||||
</summary>
|
|
||||||
<param name="serviceType">Type of object requested.</param>
|
|
||||||
<param name="key">Name the object was registered with.</param>
|
|
||||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is an error resolving
|
|
||||||
the service instance.</exception>
|
|
||||||
<returns>The requested service instance.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.IServiceLocator.GetAllInstances(System.Type)">
|
|
||||||
<summary>
|
|
||||||
Get all instances of the given <paramref name="serviceType"/> currently
|
|
||||||
registered in the container.
|
|
||||||
</summary>
|
|
||||||
<param name="serviceType">Type of object requested.</param>
|
|
||||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is are errors resolving
|
|
||||||
the service instance.</exception>
|
|
||||||
<returns>A sequence of instances of the requested <paramref name="serviceType"/>.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.IServiceLocator.GetInstance``1">
|
|
||||||
<summary>
|
|
||||||
Get an instance of the given <typeparamref name="TService"/>.
|
|
||||||
</summary>
|
|
||||||
<typeparam name="TService">Type of object requested.</typeparam>
|
|
||||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is are errors resolving
|
|
||||||
the service instance.</exception>
|
|
||||||
<returns>The requested service instance.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.IServiceLocator.GetInstance``1(System.String)">
|
|
||||||
<summary>
|
|
||||||
Get an instance of the given named <typeparamref name="TService"/>.
|
|
||||||
</summary>
|
|
||||||
<typeparam name="TService">Type of object requested.</typeparam>
|
|
||||||
<param name="key">Name the object was registered with.</param>
|
|
||||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is are errors resolving
|
|
||||||
the service instance.</exception>
|
|
||||||
<returns>The requested service instance.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.IServiceLocator.GetAllInstances``1">
|
|
||||||
<summary>
|
|
||||||
Get all instances of the given <typeparamref name="TService"/> currently
|
|
||||||
registered in the container.
|
|
||||||
</summary>
|
|
||||||
<typeparam name="TService">Type of object requested.</typeparam>
|
|
||||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is are errors resolving
|
|
||||||
the service instance.</exception>
|
|
||||||
<returns>A sequence of instances of the requested <typeparamref name="TService"/>.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="T:Microsoft.Practices.ServiceLocation.Properties.Resources">
|
|
||||||
<summary>
|
|
||||||
A strongly-typed resource class, for looking up localized strings, etc.
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Microsoft.Practices.ServiceLocation.Properties.Resources.ResourceManager">
|
|
||||||
<summary>
|
|
||||||
Returns the cached ResourceManager instance used by this class.
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Microsoft.Practices.ServiceLocation.Properties.Resources.Culture">
|
|
||||||
<summary>
|
|
||||||
Overrides the current thread's CurrentUICulture property for all
|
|
||||||
resource lookups using this strongly typed resource class.
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Microsoft.Practices.ServiceLocation.Properties.Resources.ActivateAllExceptionMessage">
|
|
||||||
<summary>
|
|
||||||
Looks up a localized string similar to Activation error occured while trying to get all instances of type {0}.
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Microsoft.Practices.ServiceLocation.Properties.Resources.ActivationExceptionMessage">
|
|
||||||
<summary>
|
|
||||||
Looks up a localized string similar to Activation error occured while trying to get instance of type {0}, key "{1}".
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="T:Microsoft.Practices.ServiceLocation.ServiceLocator">
|
|
||||||
<summary>
|
|
||||||
This class provides the ambient container for this application. If your
|
|
||||||
framework defines such an ambient container, use ServiceLocator.Current
|
|
||||||
to get it.
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocator.SetLocatorProvider(Microsoft.Practices.ServiceLocation.ServiceLocatorProvider)">
|
|
||||||
<summary>
|
|
||||||
Set the delegate that is used to retrieve the current container.
|
|
||||||
</summary>
|
|
||||||
<param name="newProvider">Delegate that, when called, will return
|
|
||||||
the current ambient container.</param>
|
|
||||||
</member>
|
|
||||||
<member name="P:Microsoft.Practices.ServiceLocation.ServiceLocator.Current">
|
|
||||||
<summary>
|
|
||||||
The current ambient container.
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="T:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase">
|
|
||||||
<summary>
|
|
||||||
This class is a helper that provides a default implementation
|
|
||||||
for most of the methods of <see cref="T:Microsoft.Practices.ServiceLocation.IServiceLocator"/>.
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetService(System.Type)">
|
|
||||||
<summary>
|
|
||||||
Implementation of <see cref="M:System.IServiceProvider.GetService(System.Type)"/>.
|
|
||||||
</summary>
|
|
||||||
<param name="serviceType">The requested service.</param>
|
|
||||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is an error in resolving the service instance.</exception>
|
|
||||||
<returns>The requested object.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetInstance(System.Type)">
|
|
||||||
<summary>
|
|
||||||
Get an instance of the given <paramref name="serviceType"/>.
|
|
||||||
</summary>
|
|
||||||
<param name="serviceType">Type of object requested.</param>
|
|
||||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is an error resolving
|
|
||||||
the service instance.</exception>
|
|
||||||
<returns>The requested service instance.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetInstance(System.Type,System.String)">
|
|
||||||
<summary>
|
|
||||||
Get an instance of the given named <paramref name="serviceType"/>.
|
|
||||||
</summary>
|
|
||||||
<param name="serviceType">Type of object requested.</param>
|
|
||||||
<param name="key">Name the object was registered with.</param>
|
|
||||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is an error resolving
|
|
||||||
the service instance.</exception>
|
|
||||||
<returns>The requested service instance.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetAllInstances(System.Type)">
|
|
||||||
<summary>
|
|
||||||
Get all instances of the given <paramref name="serviceType"/> currently
|
|
||||||
registered in the container.
|
|
||||||
</summary>
|
|
||||||
<param name="serviceType">Type of object requested.</param>
|
|
||||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is are errors resolving
|
|
||||||
the service instance.</exception>
|
|
||||||
<returns>A sequence of instances of the requested <paramref name="serviceType"/>.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetInstance``1">
|
|
||||||
<summary>
|
|
||||||
Get an instance of the given <typeparamref name="TService"/>.
|
|
||||||
</summary>
|
|
||||||
<typeparam name="TService">Type of object requested.</typeparam>
|
|
||||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is are errors resolving
|
|
||||||
the service instance.</exception>
|
|
||||||
<returns>The requested service instance.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetInstance``1(System.String)">
|
|
||||||
<summary>
|
|
||||||
Get an instance of the given named <typeparamref name="TService"/>.
|
|
||||||
</summary>
|
|
||||||
<typeparam name="TService">Type of object requested.</typeparam>
|
|
||||||
<param name="key">Name the object was registered with.</param>
|
|
||||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is are errors resolving
|
|
||||||
the service instance.</exception>
|
|
||||||
<returns>The requested service instance.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.GetAllInstances``1">
|
|
||||||
<summary>
|
|
||||||
Get all instances of the given <typeparamref name="TService"/> currently
|
|
||||||
registered in the container.
|
|
||||||
</summary>
|
|
||||||
<typeparam name="TService">Type of object requested.</typeparam>
|
|
||||||
<exception cref="T:Microsoft.Practices.ServiceLocation.ActivationException">if there is are errors resolving
|
|
||||||
the service instance.</exception>
|
|
||||||
<returns>A sequence of instances of the requested <typeparamref name="TService"/>.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.DoGetInstance(System.Type,System.String)">
|
|
||||||
<summary>
|
|
||||||
When implemented by inheriting classes, this method will do the actual work of resolving
|
|
||||||
the requested service instance.
|
|
||||||
</summary>
|
|
||||||
<param name="serviceType">Type of instance requested.</param>
|
|
||||||
<param name="key">Name of registered service you want. May be null.</param>
|
|
||||||
<returns>The requested service instance.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.DoGetAllInstances(System.Type)">
|
|
||||||
<summary>
|
|
||||||
When implemented by inheriting classes, this method will do the actual work of
|
|
||||||
resolving all the requested service instances.
|
|
||||||
</summary>
|
|
||||||
<param name="serviceType">Type of service requested.</param>
|
|
||||||
<returns>Sequence of service instance objects.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.FormatActivationExceptionMessage(System.Exception,System.Type,System.String)">
|
|
||||||
<summary>
|
|
||||||
Format the exception message for use in an <see cref="T:Microsoft.Practices.ServiceLocation.ActivationException"/>
|
|
||||||
that occurs while resolving a single service.
|
|
||||||
</summary>
|
|
||||||
<param name="actualException">The actual exception thrown by the implementation.</param>
|
|
||||||
<param name="serviceType">Type of service requested.</param>
|
|
||||||
<param name="key">Name requested.</param>
|
|
||||||
<returns>The formatted exception message string.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:Microsoft.Practices.ServiceLocation.ServiceLocatorImplBase.FormatActivateAllExceptionMessage(System.Exception,System.Type)">
|
|
||||||
<summary>
|
|
||||||
Format the exception message for use in an <see cref="T:Microsoft.Practices.ServiceLocation.ActivationException"/>
|
|
||||||
that occurs while resolving multiple service instances.
|
|
||||||
</summary>
|
|
||||||
<param name="actualException">The actual exception thrown by the implementation.</param>
|
|
||||||
<param name="serviceType">Type of service requested.</param>
|
|
||||||
<returns>The formatted exception message string.</returns>
|
|
||||||
</member>
|
|
||||||
<member name="T:Microsoft.Practices.ServiceLocation.ServiceLocatorProvider">
|
|
||||||
<summary>
|
|
||||||
This delegate type is used to provide a method that will
|
|
||||||
return the current container. Used with the <see cref="T:Microsoft.Practices.ServiceLocation.ServiceLocator"/>
|
|
||||||
static accessor class.
|
|
||||||
</summary>
|
|
||||||
<returns>An <see cref="T:Microsoft.Practices.ServiceLocation.IServiceLocator"/>.</returns>
|
|
||||||
</member>
|
|
||||||
</members>
|
|
||||||
</doc>
|
|
Binary file not shown.
|
@ -1,17 +0,0 @@
|
||||||
using DataTables.Mvc.Core.Helpers;
|
|
||||||
using DataTables.Mvc.Core.Models;
|
|
||||||
using System.Web.Mvc;
|
|
||||||
|
|
||||||
[assembly: WebActivator.PreApplicationStartMethod(typeof($rootnamespace$.App_Start.DataTablesModelBinderActivator), "Start")]
|
|
||||||
|
|
||||||
namespace $rootnamespace$.App_Start
|
|
||||||
{
|
|
||||||
public static class DataTablesModelBinderActivator
|
|
||||||
{
|
|
||||||
public static void Start()
|
|
||||||
{
|
|
||||||
if (!ModelBinders.Binders.ContainsKey(typeof(DataTablesParams)))
|
|
||||||
ModelBinders.Binders.Add(typeof(DataTablesParams), new DataTablesModelBinder());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,5 +0,0 @@
|
||||||
param($installPath, $toolsPath, $package, $project)
|
|
||||||
|
|
||||||
$path = [System.IO.Path]
|
|
||||||
$appstart = $path::Combine($path::GetDirectoryName($project.FileName), "App_Start\DataTablesMvc.cs")
|
|
||||||
$DTE.ItemOperations.OpenFile($appstart)
|
|
|
@ -1,17 +0,0 @@
|
||||||
using DataTables.Mvc.Core.Helpers;
|
|
||||||
using DataTables.Mvc.Core.Models;
|
|
||||||
using System.Web.Mvc;
|
|
||||||
|
|
||||||
[assembly: WebActivator.PreApplicationStartMethod(typeof($rootnamespace$.App_Start.DataTablesModelBinderActivator), "Start")]
|
|
||||||
|
|
||||||
namespace $rootnamespace$.App_Start
|
|
||||||
{
|
|
||||||
public static class DataTablesModelBinderActivator
|
|
||||||
{
|
|
||||||
public static void Start()
|
|
||||||
{
|
|
||||||
if (!ModelBinders.Binders.ContainsKey(typeof(DataTablesPageRequest)))
|
|
||||||
ModelBinders.Binders.Add(typeof(DataTablesPageRequest), new DataTablesModelBinder());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
Binary file not shown.
|
@ -1,5 +0,0 @@
|
||||||
param($installPath, $toolsPath, $package, $project)
|
|
||||||
|
|
||||||
$path = [System.IO.Path]
|
|
||||||
$appstart = $path::Combine($path::GetDirectoryName($project.FileName), "App_Start\DataTablesMvc.cs")
|
|
||||||
$DTE.ItemOperations.OpenFile($appstart)
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
|
@ -1,6 +0,0 @@
|
||||||
<configuration>
|
|
||||||
<configSections>
|
|
||||||
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
|
|
||||||
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=4.3.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
|
||||||
</configSections>
|
|
||||||
</configuration>
|
|
|
@ -1,6 +0,0 @@
|
||||||
<configuration>
|
|
||||||
<configSections>
|
|
||||||
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
|
|
||||||
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=4.3.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
|
||||||
</configSections>
|
|
||||||
</configuration>
|
|
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
|
@ -1,485 +0,0 @@
|
||||||
# Copyright (c) Microsoft Corporation. All rights reserved.
|
|
||||||
|
|
||||||
$InitialDatabase = '0'
|
|
||||||
|
|
||||||
$installPath = $args[0]
|
|
||||||
$knownExceptions = @(
|
|
||||||
'System.Data.Entity.Migrations.Infrastructure.MigrationsException',
|
|
||||||
'System.Data.Entity.Migrations.Infrastructure.AutomaticMigrationsDisabledException',
|
|
||||||
'System.Data.Entity.Migrations.Infrastructure.AutomaticDataLossException'
|
|
||||||
)
|
|
||||||
|
|
||||||
<#
|
|
||||||
.SYNOPSIS
|
|
||||||
Enables Code First Migrations in a project.
|
|
||||||
|
|
||||||
.DESCRIPTION
|
|
||||||
Enables Migrations by scaffolding a migrations configuration class in the project. If the
|
|
||||||
target database was created by an initializer, an initial migration will be created (unless
|
|
||||||
automatic migrations are enabled via the EnableAutomaticMigrations parameter).
|
|
||||||
|
|
||||||
.PARAMETER EnableAutomaticMigrations
|
|
||||||
Specifies whether automatic migrations will be enabled in the scaffolded migrations configuration.
|
|
||||||
If ommitted, automatic migrations will be disabled.
|
|
||||||
|
|
||||||
.PARAMETER ProjectName
|
|
||||||
Specifies the project that the scaffolded migrations configuration class will
|
|
||||||
be added to. If omitted, the default project selected in package manager
|
|
||||||
console is used.
|
|
||||||
|
|
||||||
.PARAMETER Force
|
|
||||||
Specifies that the migrations configuration be overwritten when running more
|
|
||||||
than once for a given project.
|
|
||||||
#>
|
|
||||||
function Enable-Migrations
|
|
||||||
{
|
|
||||||
[CmdletBinding(DefaultParameterSetName = 'ProjectName')]
|
|
||||||
param (
|
|
||||||
[alias("Auto")]
|
|
||||||
[switch] $EnableAutomaticMigrations,
|
|
||||||
[string] $ProjectName,
|
|
||||||
[switch] $Force
|
|
||||||
)
|
|
||||||
|
|
||||||
try
|
|
||||||
{
|
|
||||||
$commands = New-MigrationsCommandsNoConfiguration $ProjectName
|
|
||||||
$commands.EnableMigrations($EnableAutomaticMigrations, $Force)
|
|
||||||
}
|
|
||||||
catch [Exception]
|
|
||||||
{
|
|
||||||
$exception = $_.Exception
|
|
||||||
$exceptionType = $exception.GetType()
|
|
||||||
|
|
||||||
if ($exceptionType.FullName -eq 'System.Data.Entity.Migrations.Design.ToolingException')
|
|
||||||
{
|
|
||||||
if ($knownExceptions -notcontains $exception.InnerType)
|
|
||||||
{
|
|
||||||
Write-Host $exception.InnerStackTrace
|
|
||||||
}
|
|
||||||
}
|
|
||||||
elseif (!(Test-TypeInherits $exceptionType 'System.Data.Entity.Migrations.Infrastructure.MigrationsException'))
|
|
||||||
{
|
|
||||||
Write-Host $exception
|
|
||||||
}
|
|
||||||
|
|
||||||
throw $exception.Message
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
<#
|
|
||||||
.SYNOPSIS
|
|
||||||
Scaffolds a migration script for any pending model changes.
|
|
||||||
|
|
||||||
.DESCRIPTION
|
|
||||||
Scaffolds a new migration script and adds it to the project.
|
|
||||||
|
|
||||||
.PARAMETER Name
|
|
||||||
Specifies the name of the custom script.
|
|
||||||
|
|
||||||
.PARAMETER Force
|
|
||||||
Specifies that the migration user code be overwritten when re-scaffolding an
|
|
||||||
existing migration.
|
|
||||||
|
|
||||||
.PARAMETER ProjectName
|
|
||||||
Specifies the project that contains the migration configuration type to be
|
|
||||||
used. If ommitted, the default project selected in package manager console
|
|
||||||
is used.
|
|
||||||
|
|
||||||
.PARAMETER StartUpProjectName
|
|
||||||
Specifies the configuration file to use for named connection strings. If
|
|
||||||
omitted, the specified project's configuration file is used.
|
|
||||||
|
|
||||||
.PARAMETER ConfigurationTypeName
|
|
||||||
Specifies the migrations configuration to use. If omitted, migrations will
|
|
||||||
attempt to locate a single migrations configuration type in the target
|
|
||||||
project.
|
|
||||||
|
|
||||||
.PARAMETER ConnectionStringName
|
|
||||||
Specifies the name of a connection string to use from the application's
|
|
||||||
configuration file.
|
|
||||||
|
|
||||||
.PARAMETER ConnectionString
|
|
||||||
Specifies the the connection string to use. If omitted, the context's
|
|
||||||
default connection will be used.
|
|
||||||
|
|
||||||
.PARAMETER ConnectionProviderName
|
|
||||||
Specifies the provider invariant name of the connection string.
|
|
||||||
#>
|
|
||||||
function Add-Migration
|
|
||||||
{
|
|
||||||
[CmdletBinding(DefaultParameterSetName = 'ConnectionStringName')]
|
|
||||||
param (
|
|
||||||
[parameter(Position = 0,
|
|
||||||
Mandatory = $true)]
|
|
||||||
[string] $Name,
|
|
||||||
[switch] $Force,
|
|
||||||
[string] $ProjectName,
|
|
||||||
[string] $StartUpProjectName,
|
|
||||||
[string] $ConfigurationTypeName,
|
|
||||||
[parameter(ParameterSetName = 'ConnectionStringName')]
|
|
||||||
[string] $ConnectionStringName,
|
|
||||||
[parameter(ParameterSetName = 'ConnectionStringAndProviderName',
|
|
||||||
Mandatory = $true)]
|
|
||||||
[string] $ConnectionString,
|
|
||||||
[parameter(ParameterSetName = 'ConnectionStringAndProviderName',
|
|
||||||
Mandatory = $true)]
|
|
||||||
[string] $ConnectionProviderName)
|
|
||||||
|
|
||||||
try
|
|
||||||
{
|
|
||||||
$commands = New-MigrationsCommands $ProjectName $StartUpProjectName $ConfigurationTypeName $ConnectionStringName $ConnectionString $ConnectionProviderName
|
|
||||||
$commands.AddMigration($Name, $Force)
|
|
||||||
}
|
|
||||||
catch [Exception]
|
|
||||||
{
|
|
||||||
$exception = $_.Exception
|
|
||||||
$exceptionType = $exception.GetType()
|
|
||||||
|
|
||||||
if ($exceptionType.FullName -eq 'System.Data.Entity.Migrations.Design.ToolingException')
|
|
||||||
{
|
|
||||||
if ($knownExceptions -notcontains $exception.InnerType)
|
|
||||||
{
|
|
||||||
Write-Host $exception.InnerStackTrace
|
|
||||||
}
|
|
||||||
}
|
|
||||||
elseif (!(Test-TypeInherits $exceptionType 'System.Data.Entity.Migrations.Infrastructure.MigrationsException'))
|
|
||||||
{
|
|
||||||
Write-Host $exception
|
|
||||||
}
|
|
||||||
|
|
||||||
throw $exception.Message
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
<#
|
|
||||||
.SYNOPSIS
|
|
||||||
Applies any pending migrations to the database.
|
|
||||||
|
|
||||||
.DESCRIPTION
|
|
||||||
Updates the database to the current model by applying pending migrations.
|
|
||||||
|
|
||||||
.PARAMETER SourceMigration
|
|
||||||
Only valid with -Script. Specifies the name of a particular migration to use
|
|
||||||
as the update's starting point. If ommitted, the last applied migration in
|
|
||||||
the database will be used.
|
|
||||||
|
|
||||||
.PARAMETER TargetMigration
|
|
||||||
Specifies the name of a particular migration to update the database to. If
|
|
||||||
ommitted, the current model will be used.
|
|
||||||
|
|
||||||
.PARAMETER Script
|
|
||||||
Generate a SQL script rather than executing the pending changes directly.
|
|
||||||
|
|
||||||
.PARAMETER Force
|
|
||||||
Specifies that data loss is acceptable during automatic migration of the
|
|
||||||
database.
|
|
||||||
|
|
||||||
.PARAMETER ProjectName
|
|
||||||
Specifies the project that contains the migration configuration type to be
|
|
||||||
used. If ommitted, the default project selected in package manager console
|
|
||||||
is used.
|
|
||||||
|
|
||||||
.PARAMETER StartUpProjectName
|
|
||||||
Specifies the configuration file to use for named connection strings. If
|
|
||||||
omitted, the specified project's configuration file is used.
|
|
||||||
|
|
||||||
.PARAMETER ConfigurationTypeName
|
|
||||||
Specifies the migrations configuration to use. If omitted, migrations will
|
|
||||||
attempt to locate a single migrations configuration type in the target
|
|
||||||
project.
|
|
||||||
|
|
||||||
.PARAMETER ConnectionStringName
|
|
||||||
Specifies the name of a connection string to use from the application's
|
|
||||||
configuration file.
|
|
||||||
|
|
||||||
.PARAMETER ConnectionString
|
|
||||||
Specifies the the connection string to use. If omitted, the context's
|
|
||||||
default connection will be used.
|
|
||||||
|
|
||||||
.PARAMETER ConnectionProviderName
|
|
||||||
Specifies the provider invariant name of the connection string.
|
|
||||||
#>
|
|
||||||
function Update-Database
|
|
||||||
{
|
|
||||||
[CmdletBinding(DefaultParameterSetName = 'ConnectionStringName')]
|
|
||||||
param (
|
|
||||||
[string] $SourceMigration,
|
|
||||||
[string] $TargetMigration,
|
|
||||||
[switch] $Script,
|
|
||||||
[switch] $Force,
|
|
||||||
[string] $ProjectName,
|
|
||||||
[string] $StartUpProjectName,
|
|
||||||
[string] $ConfigurationTypeName,
|
|
||||||
[parameter(ParameterSetName = 'ConnectionStringName')]
|
|
||||||
[string] $ConnectionStringName,
|
|
||||||
[parameter(ParameterSetName = 'ConnectionStringAndProviderName',
|
|
||||||
Mandatory = $true)]
|
|
||||||
[string] $ConnectionString,
|
|
||||||
[parameter(ParameterSetName = 'ConnectionStringAndProviderName',
|
|
||||||
Mandatory = $true)]
|
|
||||||
[string] $ConnectionProviderName)
|
|
||||||
|
|
||||||
# TODO: If possible, convert this to a ParameterSet
|
|
||||||
if ($SourceMigration -and !$script)
|
|
||||||
{
|
|
||||||
throw '-SourceMigration can only be specified with -Script.'
|
|
||||||
}
|
|
||||||
|
|
||||||
try
|
|
||||||
{
|
|
||||||
$commands = New-MigrationsCommands $ProjectName $StartUpProjectName $ConfigurationTypeName $ConnectionStringName $ConnectionString $ConnectionProviderName
|
|
||||||
$commands.UpdateDatabase($SourceMigration, $TargetMigration, $Script, $Force)
|
|
||||||
}
|
|
||||||
catch [Exception]
|
|
||||||
{
|
|
||||||
$exception = $_.Exception
|
|
||||||
$exceptionType = $exception.GetType()
|
|
||||||
|
|
||||||
if ($exceptionType.FullName -eq 'System.Data.Entity.Migrations.Design.ToolingException')
|
|
||||||
{
|
|
||||||
if ($knownExceptions -notcontains $exception.InnerType)
|
|
||||||
{
|
|
||||||
Write-Host $exception.InnerStackTrace
|
|
||||||
}
|
|
||||||
}
|
|
||||||
elseif (!(Test-TypeInherits $exceptionType 'System.Data.Entity.Migrations.Infrastructure.MigrationsException'))
|
|
||||||
{
|
|
||||||
Write-Host $exception
|
|
||||||
}
|
|
||||||
|
|
||||||
throw $exception.Message
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
<#
|
|
||||||
.SYNOPSIS
|
|
||||||
Displays the migrations that have been applied to the target database.
|
|
||||||
|
|
||||||
.DESCRIPTION
|
|
||||||
Displays the migrations that have been applied to the target database.
|
|
||||||
|
|
||||||
.PARAMETER ProjectName
|
|
||||||
Specifies the project that contains the migration configuration type to be
|
|
||||||
used. If ommitted, the default project selected in package manager console
|
|
||||||
is used.
|
|
||||||
|
|
||||||
.PARAMETER StartUpProjectName
|
|
||||||
Specifies the configuration file to use for named connection strings. If
|
|
||||||
omitted, the specified project's configuration file is used.
|
|
||||||
|
|
||||||
.PARAMETER ConfigurationTypeName
|
|
||||||
Specifies the migrations configuration to use. If omitted, migrations will
|
|
||||||
attempt to locate a single migrations configuration type in the target
|
|
||||||
project.
|
|
||||||
|
|
||||||
.PARAMETER ConnectionStringName
|
|
||||||
Specifies the name of a connection string to use from the application's
|
|
||||||
configuration file.
|
|
||||||
|
|
||||||
.PARAMETER ConnectionString
|
|
||||||
Specifies the the connection string to use. If omitted, the context's
|
|
||||||
default connection will be used.
|
|
||||||
|
|
||||||
.PARAMETER ConnectionProviderName
|
|
||||||
Specifies the provider invariant name of the connection string.
|
|
||||||
#>
|
|
||||||
function Get-Migrations
|
|
||||||
{
|
|
||||||
[CmdletBinding(DefaultParameterSetName = 'ConnectionStringName')]
|
|
||||||
param (
|
|
||||||
[string] $ProjectName,
|
|
||||||
[string] $StartUpProjectName,
|
|
||||||
[string] $ConfigurationTypeName,
|
|
||||||
[parameter(ParameterSetName = 'ConnectionStringName')]
|
|
||||||
[string] $ConnectionStringName,
|
|
||||||
[parameter(ParameterSetName = 'ConnectionStringAndProviderName',
|
|
||||||
Mandatory = $true)]
|
|
||||||
[string] $ConnectionString,
|
|
||||||
[parameter(ParameterSetName = 'ConnectionStringAndProviderName',
|
|
||||||
Mandatory = $true)]
|
|
||||||
[string] $ConnectionProviderName)
|
|
||||||
|
|
||||||
try
|
|
||||||
{
|
|
||||||
$commands = New-MigrationsCommands $ProjectName $StartUpProjectName $ConfigurationTypeName $ConnectionStringName $ConnectionString $ConnectionProviderName
|
|
||||||
$commands.GetMigrations()
|
|
||||||
}
|
|
||||||
catch [Exception]
|
|
||||||
{
|
|
||||||
$exception = $_.Exception
|
|
||||||
$exceptionType = $exception.GetType()
|
|
||||||
|
|
||||||
if ($exceptionType.FullName -eq 'System.Data.Entity.Migrations.Design.ToolingException')
|
|
||||||
{
|
|
||||||
if ($knownExceptions -notcontains $exception.InnerType)
|
|
||||||
{
|
|
||||||
Write-Host $exception.InnerStackTrace
|
|
||||||
}
|
|
||||||
}
|
|
||||||
elseif (!(Test-TypeInherits $exceptionType 'System.Data.Entity.Migrations.Infrastructure.MigrationsException'))
|
|
||||||
{
|
|
||||||
Write-Host $exception
|
|
||||||
}
|
|
||||||
|
|
||||||
throw $exception.Message
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function New-MigrationsCommandsNoConfiguration($ProjectName)
|
|
||||||
{
|
|
||||||
$project = Get-MigrationsProject $ProjectName
|
|
||||||
|
|
||||||
Build-Project $project
|
|
||||||
|
|
||||||
Load-EntityFramework
|
|
||||||
|
|
||||||
try
|
|
||||||
{
|
|
||||||
return New-Object 'System.Data.Entity.Migrations.MigrationsCommands' @(
|
|
||||||
$project,
|
|
||||||
$project,
|
|
||||||
$null,
|
|
||||||
$null,
|
|
||||||
$null,
|
|
||||||
$null,
|
|
||||||
$PSCmdlet )
|
|
||||||
}
|
|
||||||
catch [System.Management.Automation.MethodInvocationException]
|
|
||||||
{
|
|
||||||
throw $_.Exception.InnerException
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function New-MigrationsCommands($ProjectName, $StartUpProjectName, $ConfigurationTypeName, $ConnectionStringName, $ConnectionString, $ConnectionProviderName)
|
|
||||||
{
|
|
||||||
$project = Get-MigrationsProject $ProjectName
|
|
||||||
$startUpProject = Get-MigrationsStartUpProject $StartUpProjectName
|
|
||||||
|
|
||||||
Build-Project $project
|
|
||||||
Build-Project $startUpProject
|
|
||||||
|
|
||||||
Load-EntityFramework
|
|
||||||
|
|
||||||
try
|
|
||||||
{
|
|
||||||
return New-Object 'System.Data.Entity.Migrations.MigrationsCommands' @(
|
|
||||||
$project,
|
|
||||||
$startUpProject,
|
|
||||||
$ConfigurationTypeName,
|
|
||||||
$ConnectionStringName,
|
|
||||||
$ConnectionString,
|
|
||||||
$ConnectionProviderName,
|
|
||||||
$PSCmdlet )
|
|
||||||
}
|
|
||||||
catch [System.Management.Automation.MethodInvocationException]
|
|
||||||
{
|
|
||||||
throw $_.Exception.InnerException
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function Get-MigrationsProject($name)
|
|
||||||
{
|
|
||||||
if ($name)
|
|
||||||
{
|
|
||||||
return Get-SingleProject $name
|
|
||||||
}
|
|
||||||
|
|
||||||
$project = Get-Project
|
|
||||||
|
|
||||||
Write-Verbose ('Using NuGet project ''' + $project.Name + '''.')
|
|
||||||
|
|
||||||
return $project
|
|
||||||
}
|
|
||||||
|
|
||||||
function Get-MigrationsStartUpProject($name)
|
|
||||||
{
|
|
||||||
if ($name)
|
|
||||||
{
|
|
||||||
return Get-SingleProject $name
|
|
||||||
}
|
|
||||||
|
|
||||||
$startupProjectPaths = $DTE.Solution.SolutionBuild.StartupProjects
|
|
||||||
|
|
||||||
if (!$startupProjectPaths)
|
|
||||||
{
|
|
||||||
throw 'No start-up project found. Please use the -StartupProject parameter.'
|
|
||||||
}
|
|
||||||
if ($startupProjectPaths.Length -gt 1)
|
|
||||||
{
|
|
||||||
throw 'More than one start-up project found. Please use the -StartUpProject parameter.'
|
|
||||||
}
|
|
||||||
|
|
||||||
$startupProjectPath = $startupProjectPaths[0]
|
|
||||||
|
|
||||||
if (!(Split-Path -IsAbsolute $startupProjectPath))
|
|
||||||
{
|
|
||||||
$solutionPath = Split-Path $DTE.Solution.Properties.Item('Path').Value
|
|
||||||
$startupProjectPath = Join-Path $solutionPath $startupProjectPath -Resolve
|
|
||||||
}
|
|
||||||
|
|
||||||
$startupProject = $DTE.Solution.Projects | ?{
|
|
||||||
$fullName = $_.FullName
|
|
||||||
|
|
||||||
if ($fullName -and $fullName.EndsWith('\'))
|
|
||||||
{
|
|
||||||
$fullName = $fullName.Substring(0, $fullName.Length - 1)
|
|
||||||
}
|
|
||||||
|
|
||||||
return $fullName -eq $startupProjectPath
|
|
||||||
}
|
|
||||||
|
|
||||||
Write-Verbose ('Using StartUp project ''' + $startupProject.Name + '''.')
|
|
||||||
|
|
||||||
return $startupProject
|
|
||||||
}
|
|
||||||
|
|
||||||
function Get-SingleProject($name)
|
|
||||||
{
|
|
||||||
$project = Get-Project $name
|
|
||||||
|
|
||||||
if ($project -is [array])
|
|
||||||
{
|
|
||||||
throw "More than one project '$name' was found. Specify the full name of the one to use."
|
|
||||||
}
|
|
||||||
|
|
||||||
return $project
|
|
||||||
}
|
|
||||||
|
|
||||||
function Load-EntityFramework()
|
|
||||||
{
|
|
||||||
[System.AppDomain]::CurrentDomain.SetShadowCopyFiles()
|
|
||||||
[System.Reflection.Assembly]::LoadFrom((Join-Path $installPath 'lib\net40\EntityFramework.dll')) | Out-Null
|
|
||||||
[System.Reflection.Assembly]::LoadFrom((Join-Path $installPath 'tools\EntityFramework.PowerShell.dll')) | Out-Null
|
|
||||||
}
|
|
||||||
|
|
||||||
function Build-Project($project)
|
|
||||||
{
|
|
||||||
$configuration = $DTE.Solution.SolutionBuild.ActiveConfiguration.Name
|
|
||||||
|
|
||||||
$DTE.Solution.SolutionBuild.BuildProject($configuration, $project.UniqueName, $true)
|
|
||||||
|
|
||||||
if ($DTE.Solution.SolutionBuild.LastBuildInfo)
|
|
||||||
{
|
|
||||||
throw 'The project ''' + $project.Name + ''' failed to build.'
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function Test-TypeInherits($type, $baseTypeName)
|
|
||||||
{
|
|
||||||
if ($type.FullName -eq $baseTypeName)
|
|
||||||
{
|
|
||||||
return $true
|
|
||||||
}
|
|
||||||
|
|
||||||
$baseType = $type.BaseType
|
|
||||||
|
|
||||||
if ($baseType)
|
|
||||||
{
|
|
||||||
return Test-TypeInherits $baseType $baseTypeName
|
|
||||||
}
|
|
||||||
|
|
||||||
return $false
|
|
||||||
}
|
|
||||||
|
|
||||||
Export-ModuleMember @( 'Enable-Migrations', 'Add-Migration', 'Update-Database', 'Get-Migrations' ) -Variable 'InitialDatabase'
|
|
|
@ -1,13 +0,0 @@
|
||||||
param($installPath, $toolsPath, $package, $project)
|
|
||||||
|
|
||||||
if ([System.AppDomain]::CurrentDomain.GetAssemblies() | ?{ $_.GetName().Name -eq 'EntityFramework' })
|
|
||||||
{
|
|
||||||
Write-Warning 'There is already a version of EntityFramework.dll loaded. You may need to restart Visual Studio for the commands to work properly.'
|
|
||||||
}
|
|
||||||
|
|
||||||
if (Get-Module | ?{ $_.Name -eq 'EntityFramework' })
|
|
||||||
{
|
|
||||||
Remove-Module 'EntityFramework'
|
|
||||||
}
|
|
||||||
|
|
||||||
Import-Module (Join-Path $toolsPath 'EntityFramework.psd1') -ArgumentList $installPath
|
|
Binary file not shown.
|
@ -1,12 +0,0 @@
|
||||||
using System.Data.Entity;
|
|
||||||
using System.Data.Entity.Infrastructure;
|
|
||||||
|
|
||||||
[assembly: WebActivator.PreApplicationStartMethod(typeof($rootnamespace$.App_Start.EntityFramework_SqlServerCompact), "Start")]
|
|
||||||
|
|
||||||
namespace $rootnamespace$.App_Start {
|
|
||||||
public static class EntityFramework_SqlServerCompact {
|
|
||||||
public static void Start() {
|
|
||||||
Database.DefaultConnectionFactory = new SqlCeConnectionFactory("System.Data.SqlServerCe.4.0");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,969 +0,0 @@
|
||||||
{\rtf1\adeflang1025\ansi\ansicpg1252\uc1\adeff38\deff0\stshfdbch11\stshfloch0\stshfhich0\stshfbi0\deflang1033\deflangfe1033\themelang1033\themelangfe2052\themelangcs1025{\fonttbl{\f0\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman{\*\falt Times};}
|
|
||||||
{\f2\fbidi \fmodern\fcharset0\fprq1{\*\panose 02070309020205020404}Courier New{\*\falt Arial};}{\f3\fbidi \froman\fcharset2\fprq2{\*\panose 05050102010706020507}Symbol{\*\falt Bookshelf Symbol 3};}
|
|
||||||
{\f10\fbidi \fnil\fcharset2\fprq2{\*\panose 05000000000000000000}Wingdings{\*\falt Symbol};}{\f11\fbidi \fmodern\fcharset128\fprq1{\*\panose 02020609040205080304}MS Mincho{\*\falt ?l?r ??\'81\'66c};}
|
|
||||||
{\f13\fbidi \fnil\fcharset134\fprq2{\*\panose 02010600030101010101}SimSun{\*\falt ?????\'a1\'ec???};}{\f34\fbidi \froman\fcharset0\fprq2{\*\panose 02040503050406030204}Cambria Math;}
|
|
||||||
{\f38\fbidi \fswiss\fcharset0\fprq2{\*\panose 020b0604030504040204}Tahoma{\*\falt ?? ??};}{\f39\fbidi \fswiss\fcharset0\fprq2{\*\panose 00000000000000000000}Trebuchet MS{\*\falt Arial};}
|
|
||||||
{\f40\fbidi \fmodern\fcharset128\fprq1{\*\panose 02020609040205080304}@MS Mincho{\*\falt @MS Gothic};}{\f41\fbidi \fnil\fcharset134\fprq2{\*\panose 00000000000000000000}@SimSun;}
|
|
||||||
{\flomajor\f31500\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman{\*\falt Times};}{\fdbmajor\f31501\fbidi \fnil\fcharset134\fprq2{\*\panose 02010600030101010101}SimSun{\*\falt ?????\'a1\'ec???};}
|
|
||||||
{\fhimajor\f31502\fbidi \froman\fcharset0\fprq2{\*\panose 02040503050406030204}Cambria;}{\fbimajor\f31503\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman{\*\falt Times};}
|
|
||||||
{\flominor\f31504\fbidi \froman\fcharset0\fprq2{\*\panose 02020603050405020304}Times New Roman{\*\falt Times};}{\fdbminor\f31505\fbidi \fnil\fcharset134\fprq2{\*\panose 02010600030101010101}SimSun{\*\falt ?????\'a1\'ec???};}
|
|
||||||
{\fhiminor\f31506\fbidi \fswiss\fcharset0\fprq2{\*\panose 020f0502020204030204}Calibri;}{\fbiminor\f31507\fbidi \fswiss\fcharset0\fprq2{\*\panose 020b0604020202020204}Arial;}{\f42\fbidi \froman\fcharset238\fprq2 Times New Roman CE{\*\falt Times};}
|
|
||||||
{\f43\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr{\*\falt Times};}{\f45\fbidi \froman\fcharset161\fprq2 Times New Roman Greek{\*\falt Times};}{\f46\fbidi \froman\fcharset162\fprq2 Times New Roman Tur{\*\falt Times};}
|
|
||||||
{\f47\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew){\*\falt Times};}{\f48\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic){\*\falt Times};}{\f49\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic{\*\falt Times};}
|
|
||||||
{\f50\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese){\*\falt Times};}{\f62\fbidi \fmodern\fcharset238\fprq1 Courier New CE{\*\falt Arial};}{\f63\fbidi \fmodern\fcharset204\fprq1 Courier New Cyr{\*\falt Arial};}
|
|
||||||
{\f65\fbidi \fmodern\fcharset161\fprq1 Courier New Greek{\*\falt Arial};}{\f66\fbidi \fmodern\fcharset162\fprq1 Courier New Tur{\*\falt Arial};}{\f67\fbidi \fmodern\fcharset177\fprq1 Courier New (Hebrew){\*\falt Arial};}
|
|
||||||
{\f68\fbidi \fmodern\fcharset178\fprq1 Courier New (Arabic){\*\falt Arial};}{\f69\fbidi \fmodern\fcharset186\fprq1 Courier New Baltic{\*\falt Arial};}{\f70\fbidi \fmodern\fcharset163\fprq1 Courier New (Vietnamese){\*\falt Arial};}
|
|
||||||
{\f154\fbidi \fmodern\fcharset0\fprq1 MS Mincho Western{\*\falt ?l?r ??\'81\'66c};}{\f152\fbidi \fmodern\fcharset238\fprq1 MS Mincho CE{\*\falt ?l?r ??\'81\'66c};}{\f153\fbidi \fmodern\fcharset204\fprq1 MS Mincho Cyr{\*\falt ?l?r ??\'81\'66c};}
|
|
||||||
{\f155\fbidi \fmodern\fcharset161\fprq1 MS Mincho Greek{\*\falt ?l?r ??\'81\'66c};}{\f156\fbidi \fmodern\fcharset162\fprq1 MS Mincho Tur{\*\falt ?l?r ??\'81\'66c};}{\f159\fbidi \fmodern\fcharset186\fprq1 MS Mincho Baltic{\*\falt ?l?r ??\'81\'66c};}
|
|
||||||
{\f174\fbidi \fnil\fcharset0\fprq2 SimSun Western{\*\falt ?????\'a1\'ec???};}{\f382\fbidi \froman\fcharset238\fprq2 Cambria Math CE;}{\f383\fbidi \froman\fcharset204\fprq2 Cambria Math Cyr;}{\f385\fbidi \froman\fcharset161\fprq2 Cambria Math Greek;}
|
|
||||||
{\f386\fbidi \froman\fcharset162\fprq2 Cambria Math Tur;}{\f389\fbidi \froman\fcharset186\fprq2 Cambria Math Baltic;}{\f390\fbidi \froman\fcharset163\fprq2 Cambria Math (Vietnamese);}{\f422\fbidi \fswiss\fcharset238\fprq2 Tahoma CE{\*\falt ?? ??};}
|
|
||||||
{\f423\fbidi \fswiss\fcharset204\fprq2 Tahoma Cyr{\*\falt ?? ??};}{\f425\fbidi \fswiss\fcharset161\fprq2 Tahoma Greek{\*\falt ?? ??};}{\f426\fbidi \fswiss\fcharset162\fprq2 Tahoma Tur{\*\falt ?? ??};}
|
|
||||||
{\f427\fbidi \fswiss\fcharset177\fprq2 Tahoma (Hebrew){\*\falt ?? ??};}{\f428\fbidi \fswiss\fcharset178\fprq2 Tahoma (Arabic){\*\falt ?? ??};}{\f429\fbidi \fswiss\fcharset186\fprq2 Tahoma Baltic{\*\falt ?? ??};}
|
|
||||||
{\f430\fbidi \fswiss\fcharset163\fprq2 Tahoma (Vietnamese){\*\falt ?? ??};}{\f431\fbidi \fswiss\fcharset222\fprq2 Tahoma (Thai){\*\falt ?? ??};}{\f432\fbidi \fswiss\fcharset238\fprq2 Trebuchet MS CE{\*\falt Arial};}
|
|
||||||
{\f433\fbidi \fswiss\fcharset204\fprq2 Trebuchet MS Cyr{\*\falt Arial};}{\f435\fbidi \fswiss\fcharset161\fprq2 Trebuchet MS Greek{\*\falt Arial};}{\f436\fbidi \fswiss\fcharset162\fprq2 Trebuchet MS Tur{\*\falt Arial};}
|
|
||||||
{\f439\fbidi \fswiss\fcharset186\fprq2 Trebuchet MS Baltic{\*\falt Arial};}{\f444\fbidi \fmodern\fcharset0\fprq1 @MS Mincho Western{\*\falt @MS Gothic};}{\f442\fbidi \fmodern\fcharset238\fprq1 @MS Mincho CE{\*\falt @MS Gothic};}
|
|
||||||
{\f443\fbidi \fmodern\fcharset204\fprq1 @MS Mincho Cyr{\*\falt @MS Gothic};}{\f445\fbidi \fmodern\fcharset161\fprq1 @MS Mincho Greek{\*\falt @MS Gothic};}{\f446\fbidi \fmodern\fcharset162\fprq1 @MS Mincho Tur{\*\falt @MS Gothic};}
|
|
||||||
{\f449\fbidi \fmodern\fcharset186\fprq1 @MS Mincho Baltic{\*\falt @MS Gothic};}{\f454\fbidi \fnil\fcharset0\fprq2 @SimSun Western;}{\flomajor\f31508\fbidi \froman\fcharset238\fprq2 Times New Roman CE{\*\falt Times};}
|
|
||||||
{\flomajor\f31509\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr{\*\falt Times};}{\flomajor\f31511\fbidi \froman\fcharset161\fprq2 Times New Roman Greek{\*\falt Times};}
|
|
||||||
{\flomajor\f31512\fbidi \froman\fcharset162\fprq2 Times New Roman Tur{\*\falt Times};}{\flomajor\f31513\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew){\*\falt Times};}
|
|
||||||
{\flomajor\f31514\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic){\*\falt Times};}{\flomajor\f31515\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic{\*\falt Times};}
|
|
||||||
{\flomajor\f31516\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese){\*\falt Times};}{\fdbmajor\f31520\fbidi \fnil\fcharset0\fprq2 SimSun Western{\*\falt ?????\'a1\'ec???};}{\fhimajor\f31528\fbidi \froman\fcharset238\fprq2 Cambria CE;}
|
|
||||||
{\fhimajor\f31529\fbidi \froman\fcharset204\fprq2 Cambria Cyr;}{\fhimajor\f31531\fbidi \froman\fcharset161\fprq2 Cambria Greek;}{\fhimajor\f31532\fbidi \froman\fcharset162\fprq2 Cambria Tur;}
|
|
||||||
{\fhimajor\f31535\fbidi \froman\fcharset186\fprq2 Cambria Baltic;}{\fhimajor\f31536\fbidi \froman\fcharset163\fprq2 Cambria (Vietnamese);}{\fbimajor\f31538\fbidi \froman\fcharset238\fprq2 Times New Roman CE{\*\falt Times};}
|
|
||||||
{\fbimajor\f31539\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr{\*\falt Times};}{\fbimajor\f31541\fbidi \froman\fcharset161\fprq2 Times New Roman Greek{\*\falt Times};}
|
|
||||||
{\fbimajor\f31542\fbidi \froman\fcharset162\fprq2 Times New Roman Tur{\*\falt Times};}{\fbimajor\f31543\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew){\*\falt Times};}
|
|
||||||
{\fbimajor\f31544\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic){\*\falt Times};}{\fbimajor\f31545\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic{\*\falt Times};}
|
|
||||||
{\fbimajor\f31546\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese){\*\falt Times};}{\flominor\f31548\fbidi \froman\fcharset238\fprq2 Times New Roman CE{\*\falt Times};}
|
|
||||||
{\flominor\f31549\fbidi \froman\fcharset204\fprq2 Times New Roman Cyr{\*\falt Times};}{\flominor\f31551\fbidi \froman\fcharset161\fprq2 Times New Roman Greek{\*\falt Times};}
|
|
||||||
{\flominor\f31552\fbidi \froman\fcharset162\fprq2 Times New Roman Tur{\*\falt Times};}{\flominor\f31553\fbidi \froman\fcharset177\fprq2 Times New Roman (Hebrew){\*\falt Times};}
|
|
||||||
{\flominor\f31554\fbidi \froman\fcharset178\fprq2 Times New Roman (Arabic){\*\falt Times};}{\flominor\f31555\fbidi \froman\fcharset186\fprq2 Times New Roman Baltic{\*\falt Times};}
|
|
||||||
{\flominor\f31556\fbidi \froman\fcharset163\fprq2 Times New Roman (Vietnamese){\*\falt Times};}{\fdbminor\f31560\fbidi \fnil\fcharset0\fprq2 SimSun Western{\*\falt ?????\'a1\'ec???};}{\fhiminor\f31568\fbidi \fswiss\fcharset238\fprq2 Calibri CE;}
|
|
||||||
{\fhiminor\f31569\fbidi \fswiss\fcharset204\fprq2 Calibri Cyr;}{\fhiminor\f31571\fbidi \fswiss\fcharset161\fprq2 Calibri Greek;}{\fhiminor\f31572\fbidi \fswiss\fcharset162\fprq2 Calibri Tur;}
|
|
||||||
{\fhiminor\f31575\fbidi \fswiss\fcharset186\fprq2 Calibri Baltic;}{\fhiminor\f31576\fbidi \fswiss\fcharset163\fprq2 Calibri (Vietnamese);}{\fbiminor\f31578\fbidi \fswiss\fcharset238\fprq2 Arial CE;}
|
|
||||||
{\fbiminor\f31579\fbidi \fswiss\fcharset204\fprq2 Arial Cyr;}{\fbiminor\f31581\fbidi \fswiss\fcharset161\fprq2 Arial Greek;}{\fbiminor\f31582\fbidi \fswiss\fcharset162\fprq2 Arial Tur;}{\fbiminor\f31583\fbidi \fswiss\fcharset177\fprq2 Arial (Hebrew);}
|
|
||||||
{\fbiminor\f31584\fbidi \fswiss\fcharset178\fprq2 Arial (Arabic);}{\fbiminor\f31585\fbidi \fswiss\fcharset186\fprq2 Arial Baltic;}{\fbiminor\f31586\fbidi \fswiss\fcharset163\fprq2 Arial (Vietnamese);}}{\colortbl;\red0\green0\blue0;\red0\green0\blue255;
|
|
||||||
\red0\green255\blue255;\red0\green255\blue0;\red255\green0\blue255;\red255\green0\blue0;\red255\green255\blue0;\red255\green255\blue255;\red0\green0\blue128;\red0\green128\blue128;\red0\green128\blue0;\red128\green0\blue128;\red128\green0\blue0;
|
|
||||||
\red128\green128\blue0;\red128\green128\blue128;\red192\green192\blue192;\red31\green73\blue125;\ctextone\ctint255\cshade255\red0\green0\blue0;}{\*\defchp \fs22\dbch\af11 }{\*\defpap \ql \li0\ri0\sa200\sl276\slmult1
|
|
||||||
\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 }\noqfpromote {\stylesheet{\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \snext0 \sautoupd \sqformat \spriority0 \styrsid1456345 Normal;}{\s1\ql \fi-357\li357\ri0\sb120\sa120\widctlpar
|
|
||||||
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls12\outlinelevel0\adjustright\rin0\lin357\itap0 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0 \b\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
|
|
||||||
\sbasedon0 \snext1 \slink15 \sqformat \styrsid1456345 heading 1;}{\s2\ql \fi-363\li720\ri0\sb120\sa120\widctlpar\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl1\outlinelevel1\adjustright\rin0\lin720\itap0 \rtlch\fcs1
|
|
||||||
\ab\af38\afs19\alang1025 \ltrch\fcs0 \b\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext2 \slink16 \sqformat \styrsid1456345 heading 2;}{\s3\ql \fi-357\li1077\ri0\sb120\sa120\widctlpar
|
|
||||||
\tx1077\jclisttab\tx1440\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl2\outlinelevel2\adjustright\rin0\lin1077\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
|
|
||||||
\sbasedon0 \snext3 \slink17 \sqformat \styrsid1456345 heading 3;}{\s4\ql \fi-358\li1435\ri0\sb120\sa120\widctlpar\jclisttab\tx1437\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl3\outlinelevel3\adjustright\rin0\lin1435\itap0 \rtlch\fcs1
|
|
||||||
\af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext4 \slink18 \sqformat \styrsid1456345 heading 4;}{\s5\ql \fi-357\li1792\ri0\sb120\sa120\widctlpar
|
|
||||||
\tx1792\jclisttab\tx2155\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl4\outlinelevel4\adjustright\rin0\lin1792\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
|
|
||||||
\sbasedon0 \snext5 \slink19 \sqformat \styrsid1456345 heading 5;}{\s6\ql \fi-357\li2149\ri0\sb120\sa120\widctlpar\jclisttab\tx2152\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl5\outlinelevel5\adjustright\rin0\lin2149\itap0 \rtlch\fcs1
|
|
||||||
\af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext6 \slink20 \sqformat \styrsid1456345 heading 6;}{\s7\ql \fi-357\li2506\ri0\sb120\sa120\widctlpar
|
|
||||||
\jclisttab\tx2509\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl6\outlinelevel6\adjustright\rin0\lin2506\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
|
|
||||||
\sbasedon0 \snext7 \slink21 \sqformat \styrsid1456345 heading 7;}{\s8\ql \fi-357\li2863\ri0\sb120\sa120\widctlpar\jclisttab\tx2866\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl7\outlinelevel7\adjustright\rin0\lin2863\itap0 \rtlch\fcs1
|
|
||||||
\af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext8 \slink22 \sqformat \styrsid1456345 heading 8;}{\s9\ql \fi-358\li3221\ri0\sb120\sa120\widctlpar
|
|
||||||
\jclisttab\tx3223\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl8\outlinelevel8\adjustright\rin0\lin3221\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
|
|
||||||
\sbasedon0 \snext9 \slink23 \sqformat \styrsid1456345 heading 9;}{\*\cs10 \additive \ssemihidden \sunhideused \spriority1 Default Paragraph Font;}{\*
|
|
||||||
\ts11\tsrowd\trftsWidthB3\trpaddl108\trpaddr108\trpaddfl3\trpaddft3\trpaddfb3\trpaddfr3\trcbpat1\trcfpat1\tblind0\tblindtype3\tsvertalt\tsbrdrt\tsbrdrl\tsbrdrb\tsbrdrr\tsbrdrdgl\tsbrdrdgr\tsbrdrh\tsbrdrv \ql \li0\ri0\sa200\sl276\slmult1
|
|
||||||
\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0 \fs22\lang1033\langfe1033\loch\f0\hich\af0\dbch\af11\cgrid\langnp1033\langfenp1033 \snext11 \ssemihidden \sunhideused Normal Table;}{\*
|
|
||||||
\cs15 \additive \rtlch\fcs1 \ab\af38\afs19 \ltrch\fcs0 \b\f38\fs19 \sbasedon10 \slink1 \slocked \styrsid1456345 Heading 1 Char;}{\*\cs16 \additive \rtlch\fcs1 \ab\af38\afs19 \ltrch\fcs0 \b\f38\fs19 \sbasedon10 \slink2 \slocked \styrsid1456345
|
|
||||||
Heading 2 Char;}{\*\cs17 \additive \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \f38\fs19 \sbasedon10 \slink3 \slocked \styrsid1456345 Heading 3 Char;}{\*\cs18 \additive \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \f38\fs19 \sbasedon10 \slink4 \slocked \styrsid1456345
|
|
||||||
Heading 4 Char;}{\*\cs19 \additive \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \f38\fs19 \sbasedon10 \slink5 \slocked \styrsid1456345 Heading 5 Char;}{\*\cs20 \additive \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \f38\fs19 \sbasedon10 \slink6 \slocked \styrsid1456345
|
|
||||||
Heading 6 Char;}{\*\cs21 \additive \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \f38\fs19 \sbasedon10 \slink7 \slocked \styrsid1456345 Heading 7 Char;}{\*\cs22 \additive \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \f38\fs19 \sbasedon10 \slink8 \slocked \styrsid1456345
|
|
||||||
Heading 8 Char;}{\*\cs23 \additive \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \f38\fs19 \sbasedon10 \slink9 \slocked \styrsid1456345 Heading 9 Char;}{\s24\ql \li357\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin357\itap0
|
|
||||||
\rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext24 \styrsid1456345 Body 1;}{
|
|
||||||
\s25\ql \li720\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin720\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
|
|
||||||
\sbasedon0 \snext25 \styrsid1456345 Body 2;}{\s26\ql \li1077\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin1077\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext26 \styrsid1456345 Body 3;}{\s27\ql \li1435\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin1435\itap0 \rtlch\fcs1
|
|
||||||
\af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext27 \styrsid1456345 Body 4;}{
|
|
||||||
\s28\ql \li1803\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin1803\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
|
|
||||||
\sbasedon0 \snext28 \styrsid1456345 Body 5;}{\s29\ql \li2160\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin2160\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext29 \styrsid1456345 Body 6;}{\s30\ql \li2506\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin2506\itap0 \rtlch\fcs1
|
|
||||||
\af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext30 \styrsid1456345 Body 7;}{
|
|
||||||
\s31\ql \li2863\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin2863\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
|
|
||||||
\sbasedon0 \snext31 \styrsid1456345 Body 8;}{\s32\ql \li3221\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin3221\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext32 \styrsid1456345 Body 9;}{\s33\ql \fi-357\li357\ri0\sb120\sa120\widctlpar
|
|
||||||
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls1\adjustright\rin0\lin357\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext33 \styrsid1456345
|
|
||||||
Bullet 1;}{\s34\ql \fi-363\li720\ri0\sb120\sa120\widctlpar\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls2\adjustright\rin0\lin720\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext34 \styrsid1456345 Bullet 2;}{\s35\ql \fi-357\li1077\ri0\sb120\sa120\widctlpar
|
|
||||||
\jclisttab\tx1080\wrapdefault\aspalpha\aspnum\faauto\ls3\adjustright\rin0\lin1077\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
|
|
||||||
\sbasedon0 \snext35 \slink87 \styrsid1456345 Bullet 3;}{\s36\ql \fi-358\li1435\ri0\sb120\sa120\widctlpar\jclisttab\tx1437\wrapdefault\aspalpha\aspnum\faauto\ls4\adjustright\rin0\lin1435\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext36 \styrsid1456345 Bullet 4;}{\s37\ql \fi-357\li1792\ri0\sb120\sa120\widctlpar
|
|
||||||
\jclisttab\tx1795\wrapdefault\aspalpha\aspnum\faauto\ls5\adjustright\rin0\lin1792\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext37 \styrsid1456345
|
|
||||||
Bullet 5;}{\s38\ql \fi-357\li2149\ri0\sb120\sa120\widctlpar\jclisttab\tx2152\wrapdefault\aspalpha\aspnum\faauto\ls6\adjustright\rin0\lin2149\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext38 \styrsid1456345 Bullet 6;}{\s39\ql \fi-357\li2506\ri0\sb120\sa120\widctlpar
|
|
||||||
\jclisttab\tx2509\wrapdefault\aspalpha\aspnum\faauto\ls7\adjustright\rin0\lin2506\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext39 \styrsid1456345
|
|
||||||
Bullet 7;}{\s40\ql \fi-357\li2863\ri0\sb120\sa120\widctlpar\jclisttab\tx2866\wrapdefault\aspalpha\aspnum\faauto\ls8\adjustright\rin0\lin2863\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext40 \styrsid1456345 Bullet 8;}{\s41\ql \fi-358\li3221\ri0\sb120\sa120\widctlpar
|
|
||||||
\jclisttab\tx3223\wrapdefault\aspalpha\aspnum\faauto\ls9\adjustright\rin0\lin3221\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
|
|
||||||
\sbasedon32 \snext41 \styrsid1456345 Bullet 9;}{\s42\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \ab\af38\afs28\alang1025 \ltrch\fcs0
|
|
||||||
\b\fs28\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext0 \styrsid1456345 Heading EULA;}{\s43\ql \li0\ri0\sb120\sa120\widctlpar\brdrb\brdrs\brdrw10\brsp20
|
|
||||||
\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \ab\af38\afs28\alang1025 \ltrch\fcs0 \b\fs28\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext0 \styrsid1456345
|
|
||||||
Heading Software Title;}{\s44\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\b\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext44 \slink95 \styrsid1456345 Preamble;}{\s45\ql \li0\ri0\sb120\sa120\widctlpar\brdrb\brdrs\brdrw10\brsp20
|
|
||||||
\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0 \b\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext1 \styrsid1456345 Preamble Border;}{
|
|
||||||
\s46\qc \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0 \b\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
|
|
||||||
\sbasedon0 \snext46 \styrsid1456345 Heading Warranty;}{\s47\ql \fi-360\li360\ri0\sb120\sa120\widctlpar\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls11\outlinelevel0\adjustright\rin0\lin360\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext0 \styrsid1456345 Heading 1 Warranty;}{\s48\ql \fi-360\li720\ri0\sb120\sa120\widctlpar
|
|
||||||
\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls11\ilvl1\outlinelevel1\adjustright\rin0\lin720\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
|
|
||||||
\sbasedon0 \snext0 \styrsid1456345 Heading 2 Warranty;}{\s49\ql \fi-357\li1077\ri0\sb120\sa120\widctlpar\tx1077\jclisttab\tx1440\wrapdefault\aspalpha\aspnum\faauto\ls10\ilvl2\outlinelevel2\adjustright\rin0\lin1077\itap0 \rtlch\fcs1
|
|
||||||
\ab\af38\afs19\alang1025 \ltrch\fcs0 \b\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon3 \snext49 \styrsid1456345 Heading 3 Bold;}{\s50\ql \fi-358\li1435\ri0\sb120\sa120\widctlpar
|
|
||||||
\jclisttab\tx1437\wrapdefault\aspalpha\aspnum\faauto\ls4\adjustright\rin0\lin1435\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\ul\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
|
|
||||||
\sbasedon36 \snext50 \styrsid1456345 Bullet 4 Underline;}{\s51\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\fs19\ul\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon35 \snext51 \styrsid1456345 Bullet 3 Underline;}{\s52\ql \li720\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin720\itap0
|
|
||||||
\rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\ul\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon25 \snext52 \styrsid1456345 Body 2 Underline;}{
|
|
||||||
\s53\ql \li1077\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin1077\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\ul\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
|
|
||||||
\sbasedon26 \snext53 \styrsid1456345 Body 3 Underline;}{\s54\ql \li0\ri0\sb120\sa120\sl480\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext54 \slink55 \styrsid1456345 Body Text Indent;}{\*\cs55 \additive \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \f38\fs19
|
|
||||||
\sbasedon10 \slink54 \slocked \ssemihidden \styrsid1456345 Body Text Indent Char;}{\s56\ql \fi-358\li1435\ri0\sb120\sa120\widctlpar\jclisttab\tx1437\wrapdefault\aspalpha\aspnum\faauto\ls4\adjustright\rin0\lin1435\itap0 \rtlch\fcs1
|
|
||||||
\ai\af38\afs19\alang1025 \ltrch\fcs0 \i\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon36 \snext56 \styrsid1456345 Bullet 4 Italics;}{\*\cs57 \additive \rtlch\fcs1 \af38 \ltrch\fcs0
|
|
||||||
\f38\lang1033\langfe1033\langnp1033\langfenp1033 \sbasedon10 \styrsid1456345 Body 2 Char;}{\*\cs58 \additive \rtlch\fcs1 \af38 \ltrch\fcs0 \f38\lang1033\langfe1033\langnp1033\langfenp1033 \sbasedon10 \styrsid1456345 Body 3 Char;}{\*\cs59 \additive
|
|
||||||
\rtlch\fcs1 \af38 \ltrch\fcs0 \f38\lang1033\langfe1033\langnp1033\langfenp1033 \sbasedon10 \styrsid1456345 Body 4 Char;}{\*\cs60 \additive \rtlch\fcs1 \af38 \ltrch\fcs0 \f38\lang1033\langfe1033\langnp1033\langfenp1033 \sbasedon10 \styrsid1456345
|
|
||||||
Body 1 Char;}{\s61\ql \li0\ri0\sb120\sa120\widctlpar\brdrt\brdrs\brdrw10\brsp20 \wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\b\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon44 \snext61 \styrsid1456345 Preamble Border Above;}{\s62\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0
|
|
||||||
\rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext62 \slink63 \ssemihidden \styrsid1456345 footnote text;}{\*\cs63 \additive \rtlch\fcs1 \af38\afs20
|
|
||||||
\ltrch\fcs0 \f38\fs20 \sbasedon10 \slink62 \slocked \ssemihidden \styrsid1456345 Footnote Text Char;}{\*\cs64 \additive \rtlch\fcs1 \af0 \ltrch\fcs0 \super \sbasedon10 \ssemihidden \styrsid1456345 footnote reference;}{
|
|
||||||
\s65\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
|
|
||||||
\sbasedon0 \snext65 \slink66 \ssemihidden \styrsid1456345 endnote text;}{\*\cs66 \additive \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \f38\fs20 \sbasedon10 \slink65 \slocked \ssemihidden \styrsid1456345 Endnote Text Char;}{\*\cs67 \additive \rtlch\fcs1 \af0
|
|
||||||
\ltrch\fcs0 \super \sbasedon10 \ssemihidden \styrsid1456345 endnote reference;}{\s68\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext68 \slink69 \ssemihidden \styrsid1456345 annotation text;}{\*\cs69 \additive \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \f38\fs20
|
|
||||||
\sbasedon10 \slink68 \slocked \ssemihidden \styrsid1456345 Comment Text Char;}{\*\cs70 \additive \rtlch\fcs1 \af0\afs16 \ltrch\fcs0 \fs16 \sbasedon10 \ssemihidden \styrsid1456345 annotation reference;}{\s71\ql \li0\ri0\sa160\sl-240\slmult0
|
|
||||||
\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext71 \styrsid1456345 Char;}{
|
|
||||||
\s72\ql \li0\ri0\sa160\sl-240\slmult0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
|
|
||||||
\sbasedon0 \snext72 \styrsid1456345 Char Char Char Char;}{\*\cs73 \additive \rtlch\fcs1 \af0 \ltrch\fcs0 \ul\cf2 \sbasedon10 \styrsid1456345 Hyperlink;}{\s74\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0
|
|
||||||
\rtlch\fcs1 \af38\afs16\alang1025 \ltrch\fcs0 \fs16\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext74 \slink75 \ssemihidden \styrsid1456345 Balloon Text;}{\*\cs75 \additive \rtlch\fcs1 \af38\afs16
|
|
||||||
\ltrch\fcs0 \f38\fs16 \sbasedon10 \slink74 \slocked \ssemihidden \styrsid1456345 Balloon Text Char;}{\*\cs76 \additive \rtlch\fcs1 \ab\af39 \ltrch\fcs0 \b\f39\lang1033\langfe1033\langnp1033\langfenp1033 \sbasedon10 \styrsid1456345 Heading 2 Char1;}{\*
|
|
||||||
\cs77 \additive \rtlch\fcs1 \af0 \ltrch\fcs0 \sbasedon10 \styrsid1456345 page number;}{\s78\ql \li0\ri0\sa160\sl-240\slmult0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext78 \styrsid1456345 Char Char Char Char1;}{\s79\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1
|
|
||||||
\ab\af38\afs19\alang1025 \ltrch\fcs0 \b\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \snext0 \styrsid1456345 Body 0 Bold;}{\s80\ql \li0\ri0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0
|
|
||||||
\rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \snext0 \styrsid1456345 Body 0;}{\s81\ql \li0\ri0\sb120\sa120\widctlpar
|
|
||||||
\tqc\tx4320\tqr\tx8640\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
|
|
||||||
\sbasedon0 \snext81 \slink82 \styrsid1456345 header;}{\*\cs82 \additive \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \f38\fs19 \sbasedon10 \slink81 \slocked \styrsid1456345 Header Char;}{\s83\ql \li0\ri0\sb120\sa120\widctlpar
|
|
||||||
\tqc\tx4320\tqr\tx8640\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
|
|
||||||
\sbasedon0 \snext83 \slink84 \styrsid1456345 footer;}{\*\cs84 \additive \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \f38\fs19 \sbasedon10 \slink83 \slocked \ssemihidden \styrsid1456345 Footer Char;}{
|
|
||||||
\s85\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \ab\af38\afs20\alang1025 \ltrch\fcs0 \b\fs20\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
|
|
||||||
\sbasedon68 \snext68 \slink86 \ssemihidden \sunhideused \styrsid1456345 annotation subject;}{\*\cs86 \additive \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\f38\fs20 \sbasedon69 \slink85 \slocked \ssemihidden \styrsid1456345 Comment Subject Char;}{\*\cs87
|
|
||||||
\additive \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \f38\fs19 \sbasedon10 \slink35 \slocked \styrsid1456345 Bullet 3 Char1;}{\s88\ql \fi-357\li1077\ri0\sb120\sa120\widctlpar\jclisttab\tx1080\wrapdefault\aspalpha\aspnum\faauto\ls3\adjustright\rin0\lin1077\itap0
|
|
||||||
\rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\ul\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon35 \snext88 \styrsid1456345 Bullet 3 Underlined;}{\*\cs89 \additive \rtlch\fcs1 \af38\afs19 \ltrch\fcs0
|
|
||||||
\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\langnp1033\langfenp1033 \sbasedon10 \styrsid1456345 Char Char;}{\s90\ql \li0\ri0\sl-240\slmult0\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1
|
|
||||||
\af38\afs20\alang1025 \ltrch\fcs0 \fs18\lang1033\langfe1033\loch\f39\hich\af39\dbch\af11\cgrid\langnp1033\langfenp1033 \snext90 \spriority0 \styrsid1456345 AdditionalSoftware;}{\*\cs91 \additive \rtlch\fcs1 \af38\afs24\alang1025 \ltrch\fcs0
|
|
||||||
\b\f39\fs24\lang1033\langfe1033\langnp1033\langfenp1033 \sbasedon10 \spriority0 \styrsid1456345 Char Char1;}{\s92\ql \fi-358\li1435\ri0\sb120\sa120\widctlpar\jclisttab\tx1437\wrapdefault\aspalpha\aspnum\faauto\ls4\adjustright\rin0\lin1435\itap0
|
|
||||||
\rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\ul\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon36 \snext92 \spriority0 \styrsid1456345 Bullet 4 Underlined;}{\s93\ql \fi-360\li360\ri0\sb120\sa120\widctlpar
|
|
||||||
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls31\adjustright\rin0\lin360\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
|
|
||||||
\sbasedon0 \snext93 \spriority0 \styrsid1456345 Heading French Warranty;}{\s94\ql \li720\ri0\sa200\sl276\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin720\itap0\contextualspace \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0
|
|
||||||
\fs22\lang1033\langfe1033\loch\f31506\hich\af31506\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon0 \snext94 \sqformat \spriority34 \styrsid921734 List Paragraph;}{\*\cs95 \additive \rtlch\fcs1 \ab\af38\afs19 \ltrch\fcs0 \b\f38\fs19
|
|
||||||
\sbasedon10 \slink44 \slocked \styrsid14092627 Preamble Char;}{\*\cs96 \additive \rtlch\fcs1 \ab\af38\afs19 \ltrch\fcs0 \b\f38\fs19 \sbasedon95 \slink97 \slocked \styrsid14092627 Style Preamble + (Complex) Tahoma Char;}{
|
|
||||||
\s97\ql \li0\ri0\sb120\sa120\widctlpar\brdrt\brdrs\brdrw10\brsp20 \wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\b\fs19\lang1033\langfe1033\loch\f38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 \sbasedon44 \snext97 \sautoupd \slink96 \styrsid14092627 Style Preamble + (Complex) Tahoma;}}{\*\listtable{\list\listtemplateid1367111956{\listlevel\levelnfc23
|
|
||||||
\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li360\jclisttab\tx360\lin360 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat0
|
|
||||||
\levelspace0\levelindent0{\leveltext\'00;}{\levelnumbers;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi0\li0\lin0 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat0\levelspace0\levelindent0{\leveltext\'00;}{\levelnumbers;}\rtlch\fcs1 \af0
|
|
||||||
\ltrch\fcs0 \fi0\li0\lin0 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat0\levelspace0\levelindent0{\leveltext\'00;}{\levelnumbers;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi0\li0\lin0 }{\listlevel\levelnfc0\levelnfcn0\leveljc0
|
|
||||||
\leveljcn0\levelfollow0\levelstartat0\levelspace0\levelindent0{\leveltext\'00;}{\levelnumbers;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi0\li0\lin0 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat0\levelspace0\levelindent0{\leveltext
|
|
||||||
\'00;}{\levelnumbers;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi0\li0\lin0 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat0\levelspace0\levelindent0{\leveltext\'00;}{\levelnumbers;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi0\li0\lin0 }
|
|
||||||
{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat0\levelspace0\levelindent0{\leveltext\'00;}{\levelnumbers;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi0\li0\lin0 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0
|
|
||||||
\levelstartat0\levelspace0\levelindent0{\leveltext\'00;}{\levelnumbers;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi0\li0\lin0 }{\listname ;}\listid-119}{\list\listtemplateid1821544400\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0
|
|
||||||
\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0
|
|
||||||
\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li1380\jclisttab\tx1380\lin1380 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
|
|
||||||
\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2100\jclisttab\tx2100\lin2100 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext
|
|
||||||
\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li2820\jclisttab\tx2820\lin2820 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext
|
|
||||||
\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3540\jclisttab\tx3540\lin3540 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698693
|
|
||||||
\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4260\jclisttab\tx4260\lin4260 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698689
|
|
||||||
\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li4980\jclisttab\tx4980\lin4980 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698691
|
|
||||||
\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li5700\jclisttab\tx5700\lin5700 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698693
|
|
||||||
\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6420\jclisttab\tx6420\lin6420 }{\listname ;}\listid189493747}{\list\listtemplateid176468498\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0
|
|
||||||
\levelindent0{\leveltext\leveltemplateid692200086\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \s41\fi-358\li3221\jclisttab\tx3223\lin3221 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
|
|
||||||
\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693
|
|
||||||
\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2160\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}
|
|
||||||
\f3\fbias0 \fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3600
|
|
||||||
\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4320\jclisttab\tx4320\lin4320 }
|
|
||||||
{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5040\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc23
|
|
||||||
\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li5760\jclisttab\tx5760\lin5760 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0
|
|
||||||
\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6480\jclisttab\tx6480\lin6480 }{\listname ;}\listid196815738}{\list\listtemplateid-1793664660{\listlevel\levelnfc3
|
|
||||||
\levelnfcn3\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'00.;}{\levelnumbers\'01;}\rtlch\fcs1 \ab\ai0\af0 \ltrch\fcs0 \b\i0\fbias0 \s47\fi-360\li360\jclisttab\tx360\lin360 }{\listlevel\levelnfc0\levelnfcn0
|
|
||||||
\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'01.;}{\levelnumbers\'01;}\rtlch\fcs1 \ab\ai0\af0 \ltrch\fcs0 \b\i0\fbias0 \s48\fi-360\li720\jclisttab\tx720\lin720 }{\listlevel\levelnfc2\levelnfcn2\leveljc0\leveljcn0
|
|
||||||
\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'02);}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-360\li1080\jclisttab\tx1080\lin1080 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1
|
|
||||||
\levelspace0\levelindent0{\leveltext\'03(\'03);}{\levelnumbers\'02;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0
|
|
||||||
{\leveltext\'03(\'04);}{\levelnumbers\'02;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-360\li1800\jclisttab\tx1800\lin1800 }{\listlevel\levelnfc2\levelnfcn2\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
|
|
||||||
\'03(\'05);}{\levelnumbers\'02;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-360\li2160\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'06.;}{\levelnumbers\'01;}
|
|
||||||
\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-360\li2520\jclisttab\tx2520\lin2520 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'07.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0
|
|
||||||
\fbias0 \fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel\levelnfc2\levelnfcn2\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'08.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fbias0 \fi-360\li3240
|
|
||||||
\jclisttab\tx3240\lin3240 }{\listname ;}\listid394402059}{\list\listtemplateid1928476992{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'00.;}{\levelnumbers\'01;}\rtlch\fcs1
|
|
||||||
\ab\ai0\af39\afs20 \ltrch\fcs0 \b\i0\f39\fs20\fbias0 \fi-357\li357\jclisttab\tx360\lin357 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'01.;}{\levelnumbers\'01;}\rtlch\fcs1
|
|
||||||
\ab\ai0\af39\afs20 \ltrch\fcs0 \b\i0\f39\fs20\fbias0 \fi-363\li720\jclisttab\tx720\lin720 }{\listlevel\levelnfc2\levelnfcn2\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'02.;}{\levelnumbers\'01;}\rtlch\fcs1
|
|
||||||
\ab\ai0\af38\afs20 \ltrch\fcs0 \b\i0\f38\fs20\fbias0 \s49\fi-357\li1077\jclisttab\tx1440\lin1077 }{\listlevel\levelnfc3\levelnfcn3\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'03.;}{\levelnumbers\'01;}\rtlch\fcs1
|
|
||||||
\ab0\ai0\af39\afs20 \ltrch\fcs0 \b0\i0\strike0\f39\fs20\ulnone\fbias0 \fi-358\li1435\jclisttab\tx1437\lin1435 }{\listlevel\levelnfc1\levelnfcn1\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'04.;}{\levelnumbers
|
|
||||||
\'01;}\rtlch\fcs1 \ab0\ai0\af39\afs20 \ltrch\fcs0 \b0\i0\strike0\f39\fs20\ulnone\fbias0 \fi-357\li1792\jclisttab\tx2155\lin1792 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
|
|
||||||
\'02\'05.;}{\levelnumbers\'01;}\rtlch\fcs1 \ab0\ai0\af39\afs20 \ltrch\fcs0 \b0\i0\f39\fs20\fbias0 \fi-357\li2149\jclisttab\tx2152\lin2149 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
|
|
||||||
\'02\'06.;}{\levelnumbers\'01;}\rtlch\fcs1 \ab0\ai0\af39\afs20 \ltrch\fcs0 \b0\i0\f39\fs20\fbias0 \fi-357\li2506\jclisttab\tx2509\lin2506 }{\listlevel\levelnfc255\levelnfcn255\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0
|
|
||||||
{\leveltext\'02i.;}{\levelnumbers;}\rtlch\fcs1 \ab0\ai0\af39\afs20 \ltrch\fcs0 \b0\i0\f39\fs20\fbias0 \fi-357\li2863\jclisttab\tx2866\lin2863 }{\listlevel\levelnfc255\levelnfcn255\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0
|
|
||||||
{\leveltext\'02A.;}{\levelnumbers;}\rtlch\fcs1 \ab0\ai0\af39\afs20 \ltrch\fcs0 \b0\i0\f39\fs20\fbias0 \fi-358\li3221\jclisttab\tx3223\lin3221 }{\listname ;}\listid398796681}{\list\listtemplateid789093748\listhybrid{\listlevel\levelnfc23\levelnfcn23
|
|
||||||
\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid-317712510\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \s34\fi-363\li720\jclisttab\tx720\lin720 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0
|
|
||||||
\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0
|
|
||||||
\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2160\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
|
|
||||||
\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691
|
|
||||||
\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3600\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}
|
|
||||||
\f10\fbias0 \fi-360\li4320\jclisttab\tx4320\lin4320 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5040
|
|
||||||
\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li5760\jclisttab\tx5760\lin5760 }{\listlevel
|
|
||||||
\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6480\jclisttab\tx6480\lin6480 }{\listname ;}\listid477573462}
|
|
||||||
{\list\listtemplateid-53848358{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'00.;}{\levelnumbers\'01;}\rtlch\fcs1 \ab\ai0\af38\afs20 \ltrch\fcs0 \b\i0\f38\fs20\fbias0 \s1
|
|
||||||
\fi-357\li357\jclisttab\tx360\lin357 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'01.;}{\levelnumbers\'01;}\rtlch\fcs1 \ab\ai0\af38\afs20 \ltrch\fcs0 \b\i0\f38\fs20\fbias0 \s2
|
|
||||||
\fi-363\li720\jclisttab\tx720\lin720 }{\listlevel\levelnfc2\levelnfcn2\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'02.;}{\levelnumbers\'01;}\rtlch\fcs1 \ab\ai0\af38\afs20 \ltrch\fcs0 \b\i0\f38\fs20\fbias0 \s3
|
|
||||||
\fi-357\li1077\jclisttab\tx1440\lin1077 }{\listlevel\levelnfc3\levelnfcn3\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'03.;}{\levelnumbers\'01;}\rtlch\fcs1 \ab0\ai0\af39\afs20 \ltrch\fcs0
|
|
||||||
\b0\i0\strike0\f39\fs20\ulnone\fbias0 \s4\fi-358\li1435\jclisttab\tx1437\lin1435 }{\listlevel\levelnfc1\levelnfcn1\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'04.;}{\levelnumbers\'01;}\rtlch\fcs1
|
|
||||||
\ab0\ai0\af39\afs20 \ltrch\fcs0 \b0\i0\strike0\f39\fs20\ulnone\fbias0 \s5\fi-357\li1792\jclisttab\tx2155\lin1792 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'02\'05.;}{\levelnumbers
|
|
||||||
\'01;}\rtlch\fcs1 \ab0\ai0\af39\afs20 \ltrch\fcs0 \b0\i0\f39\fs20\fbias0 \s6\fi-357\li2149\jclisttab\tx2152\lin2149 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
|
|
||||||
\'02\'06.;}{\levelnumbers\'01;}\rtlch\fcs1 \ab0\ai0\af39\afs20 \ltrch\fcs0 \b0\i0\f39\fs20\fbias0 \s7\fi-357\li2506\jclisttab\tx2509\lin2506 }{\listlevel\levelnfc255\levelnfcn255\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0
|
|
||||||
{\leveltext\'02i.;}{\levelnumbers;}\rtlch\fcs1 \ab0\ai0\af39\afs20 \ltrch\fcs0 \b0\i0\f39\fs20\fbias0 \s8\fi-357\li2863\jclisttab\tx2866\lin2863 }{\listlevel\levelnfc255\levelnfcn255\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0
|
|
||||||
{\leveltext\'02A.;}{\levelnumbers;}\rtlch\fcs1 \ab0\ai0\af39\afs20 \ltrch\fcs0 \b0\i0\f39\fs20\fbias0 \s9\fi-358\li3221\jclisttab\tx3223\lin3221 }{\listname ;}\listid752163927}{\list\listtemplateid-296591990\listhybrid{\listlevel\levelnfc23\levelnfcn23
|
|
||||||
\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \s40\fi-357\li2863\jclisttab\tx2866\lin2863 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1
|
|
||||||
\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
|
|
||||||
\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2160\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0
|
|
||||||
\fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3600\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc23
|
|
||||||
\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4320\jclisttab\tx4320\lin4320 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0
|
|
||||||
\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5040\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
|
|
||||||
\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li5760\jclisttab\tx5760\lin5760 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6480
|
|
||||||
\jclisttab\tx6480\lin6480 }{\listname ;}\listid810947713}{\list\listtemplateid285099256\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid-308626962
|
|
||||||
\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \s34\fi-357\li1077\jclisttab\tx1080\lin1077 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}
|
|
||||||
\f2\fbias0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2160
|
|
||||||
\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li2880\jclisttab\tx2880\lin2880 }
|
|
||||||
{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3600\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc23\levelnfcn23
|
|
||||||
\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4320\jclisttab\tx4320\lin4320 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0
|
|
||||||
\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5040\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1
|
|
||||||
\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li5760\jclisttab\tx5760\lin5760 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
|
|
||||||
\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6480\jclisttab\tx6480\lin6480 }{\listname ;}\listid1121073746}{\list\listtemplateid-1813845996\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0
|
|
||||||
\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \s39\fi-357\li2506\jclisttab\tx2509\lin2506 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
|
|
||||||
\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2160
|
|
||||||
\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel\levelnfc23
|
|
||||||
\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3600\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1
|
|
||||||
\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4320\jclisttab\tx4320\lin4320 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
|
|
||||||
\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5040\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li5760
|
|
||||||
\jclisttab\tx5760\lin5760 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6480\jclisttab\tx6480\lin6480 }{\listname
|
|
||||||
;}\listid1219436735}{\list\listtemplateid280937824\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0
|
|
||||||
\fi-360\li1124\lin1124 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li1844\lin1844 }{\listlevel
|
|
||||||
\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2564\lin2564 }{\listlevel\levelnfc23\levelnfcn23\leveljc0
|
|
||||||
\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li3284\lin3284 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0
|
|
||||||
\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li4004\lin4004 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0
|
|
||||||
\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4724\lin4724 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext
|
|
||||||
\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5444\lin5444 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698691
|
|
||||||
\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li6164\lin6164 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0
|
|
||||||
\fi-360\li6884\lin6884 }{\listname ;}\listid1422722544}{\list\listtemplateid303218272\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid612407812
|
|
||||||
\'01\u-3913 ?;}{\levelnumbers;}\f3\cf18\fbias0 \s36\fi-358\li1435\jclisttab\tx1437\lin1435 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0
|
|
||||||
\fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2160\jclisttab\tx2160\lin2160 }{\listlevel
|
|
||||||
\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0
|
|
||||||
\levelstartat1\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3600\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
|
|
||||||
\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4320\jclisttab\tx4320\lin4320 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0
|
|
||||||
\fi-360\li5040\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li5760\jclisttab\tx5760\lin5760 }{\listlevel\levelnfc23
|
|
||||||
\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6480\jclisttab\tx6480\lin6480 }{\listname ;}\listid1559511898}{\list\listtemplateid-743794326\listhybrid
|
|
||||||
{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid2033377338\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \s35\fi-357\li1077\jclisttab\tx1080\lin1077 }{\listlevel\levelnfc23
|
|
||||||
\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0
|
|
||||||
\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2160\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1
|
|
||||||
\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0
|
|
||||||
{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3600\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693
|
|
||||||
\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4320\jclisttab\tx4320\lin4320 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}
|
|
||||||
\f3\fbias0 \fi-360\li5040\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li5760
|
|
||||||
\jclisttab\tx5760\lin5760 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6480\jclisttab\tx6480\lin6480 }
|
|
||||||
{\listname ;}\listid1567649130}{\list\listtemplateid-154908222\listhybrid{\listlevel\levelnfc3\levelnfcn3\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid-596080174\'02\'00.;}{\levelnumbers\'01;}
|
|
||||||
\rtlch\fcs1 \ab\ai0\af0 \ltrch\fcs0 \b\i0\fbias0 \s93\fi-360\li360\jclisttab\tx360\lin360 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698713\'02\'01.;}{\levelnumbers
|
|
||||||
\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698715\'02\'02.;}{\levelnumbers\'01;}
|
|
||||||
\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li2160\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698703\'02\'03.;}{\levelnumbers\'01;}\rtlch\fcs1
|
|
||||||
\af0 \ltrch\fcs0 \fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698713\'02\'04.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0
|
|
||||||
\ltrch\fcs0 \fi-360\li3600\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698715\'02\'05.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0
|
|
||||||
\fi-180\li4320\jclisttab\tx4320\lin4320 }{\listlevel\levelnfc0\levelnfcn0\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698703\'02\'06.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li5040
|
|
||||||
\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc4\levelnfcn4\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698713\'02\'07.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-360\li5760
|
|
||||||
\jclisttab\tx5760\lin5760 }{\listlevel\levelnfc2\levelnfcn2\leveljc2\leveljcn2\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698715\'02\'08.;}{\levelnumbers\'01;}\rtlch\fcs1 \af0 \ltrch\fcs0 \fi-180\li6480
|
|
||||||
\jclisttab\tx6480\lin6480 }{\listname ;}\listid1795057320}{\list\listtemplateid-961874242\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid-1175557160
|
|
||||||
\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \s37\fi-357\li1792\jclisttab\tx1795\lin1792 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}
|
|
||||||
\f2\fbias0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li2160
|
|
||||||
\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li2880\jclisttab\tx2880\lin2880 }
|
|
||||||
{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3600\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc23\levelnfcn23
|
|
||||||
\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4320\jclisttab\tx4320\lin4320 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0
|
|
||||||
\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5040\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1
|
|
||||||
\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li5760\jclisttab\tx5760\lin5760 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
|
|
||||||
\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6480\jclisttab\tx6480\lin6480 }{\listname ;}\listid1848404271}{\list\listtemplateid-1802592190\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0
|
|
||||||
\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid1229593488\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \s38\fi-357\li2149\jclisttab\tx2152\lin2149 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0
|
|
||||||
\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
|
|
||||||
\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2160\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689
|
|
||||||
\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}
|
|
||||||
\f2\fbias0 \fi-360\li3600\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4320
|
|
||||||
\jclisttab\tx4320\lin4320 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5040\jclisttab\tx5040\lin5040 }
|
|
||||||
{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li5760\jclisttab\tx5760\lin5760 }{\listlevel\levelnfc23\levelnfcn23
|
|
||||||
\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6480\jclisttab\tx6480\lin6480 }{\listname ;}\listid1877695764}{\list\listtemplateid1186249844
|
|
||||||
\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid1637229796\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \s33\fi-357\li357\jclisttab\tx360\lin357 }{\listlevel
|
|
||||||
\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li1440\jclisttab\tx1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0
|
|
||||||
\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2160\jclisttab\tx2160\lin2160 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0
|
|
||||||
\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li2880\jclisttab\tx2880\lin2880 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0
|
|
||||||
\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3600\jclisttab\tx3600\lin3600 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext
|
|
||||||
\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4320\jclisttab\tx4320\lin4320 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689
|
|
||||||
\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5040\jclisttab\tx5040\lin5040 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}
|
|
||||||
\f2\fbias0 \fi-360\li5760\jclisttab\tx5760\lin5760 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6480
|
|
||||||
\jclisttab\tx6480\lin6480 }{\listname ;}\listid2054619191}{\list\listtemplateid758572558\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698689
|
|
||||||
\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li720\lin720 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0
|
|
||||||
\fi-360\li1440\lin1440 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li2160\lin2160 }{\listlevel
|
|
||||||
\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li2880\lin2880 }{\listlevel\levelnfc23\levelnfcn23\leveljc0
|
|
||||||
\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3600\lin3600 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1
|
|
||||||
\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698693\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li4320\lin4320 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0
|
|
||||||
\levelindent0{\leveltext\leveltemplateid67698689\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li5040\lin5040 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext
|
|
||||||
\leveltemplateid67698691\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li5760\lin5760 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698693
|
|
||||||
\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6480\lin6480 }{\listname ;}\listid2085955335}{\list\listtemplateid-235387302\listhybrid{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\levelspace0\levelindent0
|
|
||||||
{\leveltext\leveltemplateid-1242156798\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li360\lin360 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698713
|
|
||||||
\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li1080\lin1080 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698715\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0
|
|
||||||
\fi-360\li1800\lin1800 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698703\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li2520\lin2520 }{\listlevel
|
|
||||||
\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698713\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li3240\lin3240 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0
|
|
||||||
\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698715\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li3960\lin3960 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1
|
|
||||||
\lvltentative\levelspace0\levelindent0{\leveltext\leveltemplateid67698703\'01\u-3913 ?;}{\levelnumbers;}\f3\fbias0 \fi-360\li4680\lin4680 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0
|
|
||||||
\levelindent0{\leveltext\leveltemplateid67698713\'01o;}{\levelnumbers;}\f2\fbias0 \fi-360\li5400\lin5400 }{\listlevel\levelnfc23\levelnfcn23\leveljc0\leveljcn0\levelfollow0\levelstartat1\lvltentative\levelspace0\levelindent0{\leveltext
|
|
||||||
\leveltemplateid67698715\'01\u-3929 ?;}{\levelnumbers;}\f10\fbias0 \fi-360\li6120\lin6120 }{\listname ;}\listid2106606675}}{\*\listoverridetable{\listoverride\listid2054619191\listoverridecount0\ls1}{\listoverride\listid477573462\listoverridecount0\ls2}
|
|
||||||
{\listoverride\listid1567649130\listoverridecount0\ls3}{\listoverride\listid1559511898\listoverridecount0\ls4}{\listoverride\listid1848404271\listoverridecount0\ls5}{\listoverride\listid1877695764\listoverridecount0\ls6}{\listoverride\listid1219436735
|
|
||||||
\listoverridecount0\ls7}{\listoverride\listid810947713\listoverridecount0\ls8}{\listoverride\listid196815738\listoverridecount0\ls9}{\listoverride\listid398796681\listoverridecount0\ls10}{\listoverride\listid394402059\listoverridecount0\ls11}
|
|
||||||
{\listoverride\listid752163927\listoverridecount0\ls12}{\listoverride\listid189493747\listoverridecount0\ls13}{\listoverride\listid2106606675\listoverridecount0\ls14}{\listoverride\listid1559511898\listoverridecount0\ls15}{\listoverride\listid1848404271
|
|
||||||
\listoverridecount0\ls16}{\listoverride\listid1848404271\listoverridecount0\ls17}{\listoverride\listid1848404271\listoverridecount0\ls18}{\listoverride\listid1848404271\listoverridecount0\ls19}{\listoverride\listid1848404271\listoverridecount0\ls20}
|
|
||||||
{\listoverride\listid1848404271\listoverridecount0\ls21}{\listoverride\listid1848404271\listoverridecount0\ls22}{\listoverride\listid1848404271\listoverridecount0\ls23}{\listoverride\listid1848404271\listoverridecount0\ls24}{\listoverride\listid1422722544
|
|
||||||
\listoverridecount0\ls25}{\listoverride\listid1848404271\listoverridecount0\ls26}{\listoverride\listid1848404271\listoverridecount0\ls27}{\listoverride\listid1848404271\listoverridecount0\ls28}{\listoverride\listid1559511898\listoverridecount0\ls29}
|
|
||||||
{\listoverride\listid1559511898\listoverridecount0\ls30}{\listoverride\listid1795057320\listoverridecount0\ls31}{\listoverride\listid1559511898\listoverridecount0\ls32}{\listoverride\listid2085955335\listoverridecount0\ls33}{\listoverride\listid1567649130
|
|
||||||
\listoverridecount9{\lfolevel}{\lfolevel}{\lfolevel}{\lfolevel}{\lfolevel}{\lfolevel}{\lfolevel}{\lfolevel}{\lfolevel}\ls34}{\listoverride\listid1559511898\listoverridecount9{\lfolevel}{\lfolevel}{\lfolevel}{\lfolevel}{\lfolevel}{\lfolevel}{\lfolevel}
|
|
||||||
{\lfolevel}{\lfolevel}\ls35}{\listoverride\listid1121073746\listoverridecount9{\lfolevel}{\lfolevel}{\lfolevel}{\lfolevel}{\lfolevel}{\lfolevel}{\lfolevel}{\lfolevel}{\lfolevel}\ls36}{\listoverride\listid-119\listoverridecount9{\lfolevel}{\lfolevel
|
|
||||||
\listoverridestartat\levelstartat0}{\lfolevel\listoverridestartat\levelstartat0}{\lfolevel\listoverridestartat\levelstartat0}{\lfolevel\listoverridestartat\levelstartat0}{\lfolevel\listoverridestartat\levelstartat0}{\lfolevel\listoverridestartat
|
|
||||||
\levelstartat0}{\lfolevel\listoverridestartat\levelstartat0}{\lfolevel\listoverridestartat\levelstartat0}\ls37}}{\*\pgptbl {\pgp\ipgp0\itap0\li0\ri0\sb0\sa0}}{\*\rsidtbl \rsid459234\rsid864014\rsid921734\rsid1456345\rsid1516446\rsid2370159\rsid3171405
|
|
||||||
\rsid3283580\rsid4090875\rsid6695507\rsid6971592\rsid7940540\rsid8259195\rsid8404268\rsid10029334\rsid14092627}{\mmathPr\mmathFont34\mbrkBin0\mbrkBinSub0\msmallFrac0\mdispDef1\mlMargin0\mrMargin0\mdefJc1\mwrapIndent1440\mintLim0\mnaryLim1}{\info
|
|
||||||
{\title English}{\creatim\yr2010\mo12\dy9\hr23\min18}{\revtim\yr2011\mo5\dy17\hr7\min10}{\version1}{\edmins0}{\nofpages5}{\nofwords2129}{\nofchars12139}{\nofcharsws14240}{\vern49273}}{\*\userprops {\propname db_document_id}\proptype30{\staticval 8666}
|
|
||||||
{\propname ContentTypeId}\proptype30{\staticval 0x010100BDA1A6A220A40A419EFB9E5917ACC6AD}{\propname _CopySource}\proptype30{\staticval }{\propname LicenseModel}\proptype30{\staticval }{\propname ProductID}\proptype30{\staticval }{\propname FileType}
|
|
||||||
\proptype30{\staticval }{\propname MScom}\proptype30{\staticval 1}{\propname Status}\proptype30{\staticval }{\propname Language}\proptype30{\staticval }{\propname ProductName}\proptype30{\staticval }{\propname Channel}\proptype30{\staticval }{\propname Or
|
|
||||||
iginator}\proptype30{\staticval }{\propname PublishDate}\proptype30{\staticval }{\propname RetirementDate}\proptype30{\staticval }{\propname SoftwareType}\proptype30{\staticval }{\propname ProductVersion}\proptype30{\staticval }{\propname Owner}
|
|
||||||
\proptype30{\staticval }}{\*\xmlnstbl {\xmlns1 http://schemas.microsoft.com/office/word/2003/wordml}}\paperw12240\paperh15840\margl720\margr720\margt720\margb720\gutter0\ltrsect
|
|
||||||
\widowctrl\ftnbj\aenddoc\trackmoves0\trackformatting1\donotembedsysfont0\relyonvml0\donotembedlingdata0\grfdocevents0\validatexml1\showplaceholdtext0\ignoremixedcontent0\saveinvalidxml0\showxmlerrors1\noxlattoyen
|
|
||||||
\expshrtn\noultrlspc\dntblnsbdb\nospaceforul\hyphcaps0\formshade\horzdoc\dgmargin\dghspace95\dgvspace180\dghorigin720\dgvorigin720\dghshow2\dgvshow1
|
|
||||||
\jexpand\viewkind1\viewscale100\pgbrdrhead\pgbrdrfoot\splytwnine\ftnlytwnine\htmautsp\nolnhtadjtbl\useltbaln\alntblind\lytcalctblwd\lyttblrtgr\lnbrkrule\nobrkwrptbl\snaptogridincell\rempersonalinfo\allowfieldendsel
|
|
||||||
\wrppunct\asianbrkrule\rsidroot1456345\newtblstyruls\nogrowautofit\usenormstyforlist\noindnmbrts\felnbrelev\nocxsptable\indrlsweleven\noafcnsttbl\afelev\utinl\hwelev\spltpgpar\notcvasp\notbrkcnstfrctbl\notvatxbx\krnprsnet\cachedcolbal \nouicompat \fet0
|
|
||||||
{\*\wgrffmtfilter 013f}\nofeaturethrottle1\ilfomacatclnup12{\*\ftnsep \ltrpar \pard\plain \ltrpar\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid459234 \chftnsep
|
|
||||||
\par }}{\*\ftnsepc \ltrpar \pard\plain \ltrpar\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid459234 \chftnsepc
|
|
||||||
\par }}{\*\aftnsep \ltrpar \pard\plain \ltrpar\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid459234 \chftnsep
|
|
||||||
\par }}{\*\aftnsepc \ltrpar \pard\plain \ltrpar\ql \li0\ri0\sb120\sa120\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af0 \ltrch\fcs0 \insrsid459234 \chftnsepc
|
|
||||||
\par }}\ltrpar \sectd \ltrsect\psz1\linex0\headery0\footery0\endnhere\sectlinegrid360\sectdefaultcl\sectrsid1456345\sftnbj {\headerl \ltrpar \pard\plain \ltrpar\s81\ql \li0\ri0\sb120\sa120\widctlpar
|
|
||||||
\tqc\tx4320\tqr\tx8640\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0
|
|
||||||
\insrsid1456345
|
|
||||||
\par }}{\headerr \ltrpar \pard\plain \ltrpar\s81\ql \li0\ri0\sb120\sa120\widctlpar\tqc\tx4320\tqr\tx8640\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \insrsid1456345
|
|
||||||
\par }}{\footerl \ltrpar \pard\plain \ltrpar\s83\ql \li0\ri0\sb120\sa120\widctlpar\tqc\tx4320\tqr\tx8640\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \insrsid1456345
|
|
||||||
\par }}{\footerr \ltrpar \pard\plain \ltrpar\s83\ql \li0\ri0\sb120\sa120\widctlpar\tqc\tx4320\tqr\tx8640\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \insrsid1456345
|
|
||||||
\par }}{\headerf \ltrpar \pard\plain \ltrpar\s81\ql \li0\ri0\sb120\sa120\widctlpar\tqc\tx4320\tqr\tx8640\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \insrsid1456345
|
|
||||||
\par }}{\footerf \ltrpar \pard\plain \ltrpar\s83\ql \li0\ri0\sb120\sa120\widctlpar\tqc\tx4320\tqr\tx8640\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \insrsid1456345
|
|
||||||
\par }}{\*\pnseclvl1\pnucrm\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl2\pnucltr\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl3\pndec\pnstart1\pnindent720\pnhang {\pntxta .}}{\*\pnseclvl4\pnlcltr\pnstart1\pnindent720\pnhang {\pntxta )}}
|
|
||||||
{\*\pnseclvl5\pndec\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl6\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl7\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl8
|
|
||||||
\pnlcltr\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}{\*\pnseclvl9\pnlcrm\pnstart1\pnindent720\pnhang {\pntxtb (}{\pntxta )}}\pard\plain \ltrpar
|
|
||||||
\s42\ql \li0\ri0\sb120\sa120\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8259195 \rtlch\fcs1 \ab\af38\afs28\alang1025 \ltrch\fcs0
|
|
||||||
\b\fs28\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 {\*\bkmkstart _GoBack}{\*\bkmkend _GoBack}\hich\af38\dbch\af13\loch\f38
|
|
||||||
MICROSOFT SOFTWARE LICENSE TERMS}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
|
|
||||||
\par }\pard\plain \ltrpar\s43\ql \li0\ri0\sb120\sa120\nowidctlpar\brdrb\brdrs\brdrw10\brsp20 \wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8259195 \rtlch\fcs1 \ab\af38\afs28\alang1025 \ltrch\fcs0
|
|
||||||
\b\fs28\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 MICROSOFT SQL SERVER COMPACT 4.0 }{\rtlch\fcs1 \af38\afs20
|
|
||||||
\ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
|
|
||||||
\par }\pard\plain \ltrpar\s44\ql \li0\ri0\sb120\sa120\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8259195 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
|
|
||||||
These license terms are an agreement between Microsoft Corporation (or based on where you live, one of its affiliates) and you. Please read them. They apply to the software named above, which includes the media on which you received it, if any. The terms
|
|
||||||
\hich\af38\dbch\af13\loch\f38 a\hich\af38\dbch\af13\loch\f38 lso apply to any Microsoft}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s34 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard\plain \ltrpar\s34\ql \fi-360\li360\ri0\sb120\sa120\nowidctlpar
|
|
||||||
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls2\adjustright\rin0\lin360\itap0\pararsid8259195 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1
|
|
||||||
\af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 updates,}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s34 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
|
|
||||||
supplements,}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s34 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
|
|
||||||
Internet-based services, and}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s34 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
|
|
||||||
support services}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
|
|
||||||
\par }\pard\plain \ltrpar\s44\ql \li0\ri0\sb120\sa120\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8259195 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
|
|
||||||
for this software, unless other terms accompany those items. If so, those terms apply.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid1456345
|
|
||||||
\par }{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 BY USING THE SOFTWARE, YOU ACCEPT THESE TERMS. IF YOU DO NOT ACCEPT THEM, DO NOT USE THE SOFTWARE.}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0
|
|
||||||
\fs20\dbch\af13\insrsid1456345
|
|
||||||
\par }\pard\plain \ltrpar\s61\ql \li0\ri0\sb120\sa120\nowidctlpar\brdrt\brdrs\brdrw10\brsp20 \wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid8259195 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 If you comply with these license terms, you have the rights below.}{
|
|
||||||
\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s1 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 1.\tab}}\pard\plain \ltrpar\s1\ql \fi-357\li357\ri0\sb120\sa120\nowidctlpar
|
|
||||||
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls12\outlinelevel0\adjustright\rin0\lin357\itap0\pararsid8259195 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0 \b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {
|
|
||||||
\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 INSTALLATION AND USE RIGHTS. }{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s2 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid921734 \hich\af38\dbch\af13\loch\f38 a.\tab}}\pard\plain \ltrpar\s2\ql \fi-363\li720\ri0\sb120\sa120\nowidctlpar
|
|
||||||
\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl1\outlinelevel1\adjustright\rin0\lin720\itap0\pararsid8259195 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid921734 \hich\af38\dbch\af13\loch\f38 Installation and Use.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0
|
|
||||||
\cs57\b0\fs20\dbch\af13\insrsid921734 \hich\af38\dbch\af13\loch\f38 You may install and use any numb\hich\af38\dbch\af13\loch\f38 er of copies of the software on your devices to design, develop and test your programs for use with the software.
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s2 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid921734\charrsid3283580 \hich\af38\dbch\af13\loch\f38 b.\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0
|
|
||||||
\fs20\dbch\af13\insrsid921734\charrsid3283580 \hich\af38\dbch\af13\loch\f38 Included Microsoft Programs. }{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid921734\charrsid3283580 \hich\af38\dbch\af13\loch\f38
|
|
||||||
The software contains the Microsoft Visual C++ 2008 Express}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid921734 \hich\af38\dbch\af13\loch\f38 }{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid10029334
|
|
||||||
\hich\af38\dbch\af13\loch\f38 Edition }{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid921734 \hich\af38\dbch\af13\loch\f38 components listed below}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0
|
|
||||||
\b0\fs20\dbch\af13\insrsid921734\charrsid3283580 \hich\af38\dbch\af13\loch\f38 . You may only use these components with the software.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid8259195 \hich\af38\dbch\af13\loch\f38 }{\rtlch\fcs1
|
|
||||||
\ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid921734\charrsid3283580 \hich\af38\dbch\af13\loch\f38 The Microsoft Visual C++ 2008 Express license terms located at }{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\cf17\insrsid921734\charrsid3283580
|
|
||||||
\hich\af38\dbch\af11\loch\f38 %Program Files%\\Microsoft SQL Server Compact Edition\\v4.0 }{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid921734\charrsid3283580 \hich\af38\dbch\af13\loch\f38
|
|
||||||
apply to your use of them, except that the components listed below may be used f\hich\af38\dbch\af13\loch\f38 or commercial hosting services when used in conjunction with the}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid921734
|
|
||||||
\hich\af38\dbch\af13\loch\f38 software.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid921734\charrsid3283580 \hich\af38\dbch\af13\loch\f38 }{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid921734
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s94 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \f3\fs20\insrsid921734\charrsid3283580 \loch\af3\dbch\af11\hich\f3 \'b7\tab}}\pard\plain \ltrpar\s94\ql \fi-360\li1080\ri0\sb120\sa120\sl276\slmult1
|
|
||||||
\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\ls33\adjustright\rin0\lin1080\itap0\pararsid8259195\contextualspace \rtlch\fcs1 \af0\afs22\alang1025 \ltrch\fcs0 \fs22\lang1033\langfe1033\loch\af31506\hich\af31506\dbch\af11\cgrid\langnp1033\langfenp1033 {
|
|
||||||
\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \f38\fs20\insrsid921734\charrsid3283580 \hich\af38\dbch\af11\loch\f38 Microsoft_VC90_CRT_x86.msm
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s94 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \f3\fs20\insrsid921734\charrsid3283580 \loch\af3\dbch\af11\hich\f3 \'b7\tab}\hich\af38\dbch\af11\loch\f38 policy_9_0_Microsoft_VC90_CRT_x86.msm
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s94 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \f3\fs20\insrsid921734\charrsid3283580 \loch\af3\dbch\af11\hich\f3 \'b7\tab}\hich\af38\dbch\af11\loch\f38 Microsoft_VC90_CRT_x86_x64.msm
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s94 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \f3\fs20\insrsid921734\charrsid3283580 \loch\af3\dbch\af11\hich\f3 \'b7\tab}\hich\af38\dbch\af11\loch\f38 policy_9_0_Microsoft_VC90_CRT_x86_x64.msm
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s94 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \f3\fs20\insrsid921734\charrsid3283580 \loch\af3\dbch\af11\hich\f3 \'b7\tab}\hich\af38\dbch\af11\loch\f38 VC90.CRT_X86_msvcr90.dll
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s94 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \f3\fs20\lang1046\langfe1033\langnp1046\insrsid921734\charrsid864014 \loch\af3\dbch\af11\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0
|
|
||||||
\f38\fs20\lang1046\langfe1033\langnp1046\insrsid921734\charrsid864014 \hich\af38\dbch\af11\loch\f38 VC90.\hich\af38\dbch\af11\loch\f38 CRT_X86_Microsoft.VC90.CRT.manifest
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s94 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \f3\fs20\insrsid921734\charrsid3283580 \loch\af3\dbch\af11\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \f38\fs20\insrsid921734\charrsid3283580 \hich\af38\dbch\af11\loch\f38
|
|
||||||
VC90.CRT_AMD64_msvcr90.dll
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s94 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \f3\fs20\lang1046\langfe1033\langnp1046\insrsid921734\charrsid864014 \loch\af3\dbch\af11\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0
|
|
||||||
\f38\fs20\lang1046\langfe1033\langnp1046\insrsid921734\charrsid864014 \hich\af38\dbch\af11\loch\f38 VC90.CRT_AMD64_Microsoft.VC90.CRT.manifest
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s1 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 2.\tab}}\pard\plain \ltrpar\s1\ql \fi-357\li357\ri0\sb120\sa120\nowidctlpar
|
|
||||||
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls12\outlinelevel0\adjustright\rin0\lin357\itap0\pararsid8259195 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0 \b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {
|
|
||||||
\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 ADDITIONAL LICENSING REQUIREMENTS AND/OR USE RIGHTS.}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s2 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 a.\tab}}\pard\plain \ltrpar\s2\ql \fi-363\li720\ri0\sb120\sa120\nowidctlpar
|
|
||||||
\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl1\outlinelevel1\adjustright\rin0\lin720\itap0\pararsid8259195 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 Distributable Code.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0
|
|
||||||
\cs57\b0\fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 The software contains code that you are per\hich\af38\dbch\af13\loch\f38 mitted to distribute in programs you develop if you comply with the terms below.}{\rtlch\fcs1 \ab0\af38\afs20
|
|
||||||
\ltrch\fcs0 \b0\fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s49 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 i.\tab}}\pard\plain \ltrpar\s49\ql \fi-357\li1077\ri0\sb120\sa120\nowidctlpar
|
|
||||||
\jclisttab\tx1080\wrapdefault\aspalpha\aspnum\faauto\ls10\ilvl2\outlinelevel2\adjustright\rin0\lin1077\itap0\pararsid8259195 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 Right to Use and Distribute.}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0
|
|
||||||
\cs58\fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 \hich\f38 The code and text files listed below are \'93\loch\f38 \hich\f38 Distributable Code.\'94}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s50 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\cf18\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard\plain \ltrpar\s50\ql \fi-358\li1435\ri0\sb120\sa120\nowidctlpar
|
|
||||||
\jclisttab\tx1437\wrapdefault\aspalpha\aspnum\faauto\ls4\adjustright\rin0\lin1435\itap0\pararsid8259195 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\ul\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1
|
|
||||||
\af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 REDIST.TXT Files}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\ulnone\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
|
|
||||||
. You may copy and distribute the object code form of code lis\hich\af38\dbch\af13\loch\f38 ted in REDIST.TXT files.}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\ulnone\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s50 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\cf18\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
|
|
||||||
\hich\af38\dbch\af13\loch\f38 Third Party Distribution}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\ulnone\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
|
|
||||||
. You may permit distributors of your programs to copy and distribute the Distributable Code as part of those programs.}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\ulnone\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s49 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 ii.\tab}}\pard\plain \ltrpar\s49\ql \fi-357\li1077\ri0\sb120\sa120\nowidctlpar
|
|
||||||
\jclisttab\tx1077\wrapdefault\aspalpha\aspnum\faauto\ls10\ilvl2\outlinelevel2\adjustright\rin0\lin1077\itap0\pararsid8259195 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 Distribution Requirements.}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0
|
|
||||||
\cs58\fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 For any Distributable Code you distribute, you must}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s36 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\cf18\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard\plain \ltrpar\s36\ql \fi-358\li1435\ri0\sb120\sa120\nowidctlpar
|
|
||||||
\jclisttab\tx1437\wrapdefault\aspalpha\aspnum\faauto\ls4\adjustright\rin0\lin1435\itap0\pararsid8259195 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1
|
|
||||||
\af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 add significant primary functionality to it in your programs;}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s36 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\cf18\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
|
|
||||||
\hich\af38\dbch\af13\loch\f38 for any Distributable Code having a filename extension of .lib, distribute only the results of running such Distributable Code through a linker with your program;}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0
|
|
||||||
\fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s36 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\cf18\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
|
|
||||||
\hich\af38\dbch\af13\loch\f38 distribute Distributable Co\hich\af38\dbch\af13\loch\f38 de included in a setup program only as part of that setup program without modification;}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s36 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\cf18\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
|
|
||||||
\hich\af38\dbch\af13\loch\f38 require distributors and external end users to agree to terms that protect it at least as much as this agreement; }{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s36 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\cf18\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
|
|
||||||
\hich\af38\dbch\af13\loch\f38 display your valid copyright notice on your progr\hich\af38\dbch\af13\loch\f38 ams; and}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s36 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\cf18\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
|
|
||||||
\hich\af38\dbch\af13\loch\f38 indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\hich\f38 \rquote \loch\f38 fees, related to the distribution or use of your programs.}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0
|
|
||||||
\fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s49 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 iii.\tab}}\pard\plain \ltrpar\s49\ql \fi-357\li1077\ri0\sb120\sa120\nowidctlpar
|
|
||||||
\jclisttab\tx1077\wrapdefault\aspalpha\aspnum\faauto\ls10\ilvl2\outlinelevel2\adjustright\rin0\lin1077\itap0\pararsid8259195 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 Distribution Restrictions.}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0
|
|
||||||
\cs58\fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 You may not}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s36 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\cf18\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard\plain \ltrpar\s36\ql \fi-358\li1435\ri0\sb120\sa120\nowidctlpar
|
|
||||||
\jclisttab\tx1437\wrapdefault\aspalpha\aspnum\faauto\ls4\adjustright\rin0\lin1435\itap0\pararsid8259195 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1
|
|
||||||
\af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 alter any copyright, trademark or patent notice in the \hich\af38\dbch\af13\loch\f38 Distributable Code;}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0
|
|
||||||
\fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s36 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\cf18\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
|
|
||||||
\hich\af38\dbch\af13\loch\f38 use Microsoft\hich\f38 \rquote \loch\f38 s trademarks in your programs\hich\f38 \rquote \loch\f38 names or in a way that suggests your programs come from or are endorsed by Microsoft;}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0
|
|
||||||
\fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s36 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\cf18\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
|
|
||||||
\hich\af38\dbch\af13\loch\f38 distribute Distributable Code to run on a platform other than the Windows platform;}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s36 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\cf18\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
|
|
||||||
\hich\af38\dbch\af13\loch\f38 include Distributable Code in malicious, deceptive or unlawful programs; or}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s36 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\cf18\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
|
|
||||||
\hich\af38\dbch\af13\loch\f38 modify or distribute the source code of any Distributable Code so that any part of it becomes subject to an Excluded License. An Excluded License is one that requires, as a condi\hich\af38\dbch\af13\loch\f38
|
|
||||||
tion of use, modification or distribution, that}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s37 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard\plain \ltrpar\s37\ql \fi-357\li1792\ri0\sb120\sa120\nowidctlpar
|
|
||||||
\jclisttab\tx1795\wrapdefault\aspalpha\aspnum\faauto\ls5\adjustright\rin0\lin1792\itap0\pararsid8259195 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1
|
|
||||||
\af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 the code be disclosed or distributed in source code form; or}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s37 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
|
|
||||||
others have the right to modify it.}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s1 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 3.\tab}}\pard\plain \ltrpar\s1\ql \fi-357\li357\ri0\sb120\sa120\nowidctlpar
|
|
||||||
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls12\outlinelevel0\adjustright\rin0\lin357\itap0\pararsid8259195 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0 \b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {
|
|
||||||
\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 SCOPE OF LICENSE.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
|
|
||||||
The software is licensed, not sold. This agreement only gives you some rights to use t\hich\af38\dbch\af13\loch\f38
|
|
||||||
he software. Microsoft reserves all other rights. Unless applicable law gives you more rights despite this limitation, you may use the software only as expressly permitted in this agreement. In doing so, you must comply with any technical limitations in t
|
|
||||||
\hich\af38\dbch\af13\loch\f38 h\hich\af38\dbch\af13\loch\f38 e software that only allow you to use it in certain ways. You may not}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s34 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard\plain \ltrpar\s34\ql \fi-363\li720\ri0\sb120\sa120\nowidctlpar
|
|
||||||
\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls2\adjustright\rin0\lin720\itap0\pararsid8259195 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1
|
|
||||||
\af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 work around any technical limitations in the software;}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s34 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
|
|
||||||
reverse engineer, decompile or disassemble the software, except and only to the extent that applicable law expressly permits, d\hich\af38\dbch\af13\loch\f38 espite this limitation;}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
|
|
||||||
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s34 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
|
|
||||||
make more copies of the software than specified in this agreement or allowed by applicable law, despite this limitation;}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s34 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
|
|
||||||
publish the software for others to copy;}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s34 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
|
|
||||||
rent, lease or lend the software;}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid921734 \hich\af38\dbch\af13\loch\f38 or}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s34 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
|
|
||||||
transfer the software or \hich\af38\dbch\af13\loch\f38 th}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid921734 \hich\af38\dbch\af13\loch\f38 is agreement to any third party. }{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0
|
|
||||||
\fs20\dbch\af13\insrsid1456345\charrsid921734
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s1 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 4.\tab}}\pard\plain \ltrpar\s1\ql \fi-357\li357\ri0\sb120\sa120\nowidctlpar
|
|
||||||
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls12\outlinelevel0\adjustright\rin0\lin357\itap0\pararsid8259195 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0 \b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {
|
|
||||||
\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 BACKUP COPY.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
|
|
||||||
You may make one backup copy of the software. You may use it only to reinstall the software.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s1 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 5.\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
|
|
||||||
\hich\af38\dbch\af13\loch\f38 DOCUMENTATION.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 Any person that has valid acc\hich\af38\dbch\af13\loch\f38
|
|
||||||
ess to your computer or internal network may copy and use the documentation for your internal, reference purposes.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s1 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 6.\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
|
|
||||||
\hich\af38\dbch\af13\loch\f38 EXPORT RESTRICTIONS.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
|
|
||||||
The software is subject to United States export laws and regulations. You must comply with all domestic and internati\hich\af38\dbch\af13\loch\f38
|
|
||||||
onal export laws and regulations that apply to the software. These laws include restrictions on destinations, end users and end use. For additional information, see }{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \cs73\b0\fs20\dbch\af13\insrsid8404268
|
|
||||||
\hich\af38\dbch\af13\loch\f38 www.microsoft.com/exporting}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid8404268 .}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \cs73\b0\fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s1 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 7.\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
|
|
||||||
\hich\af38\dbch\af13\loch\f38 SUPPORT SERVICES. }{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 \hich\f38 Because this software is \'93\loch\f38 \hich\f38 as is,\'94\loch\f38 we may
|
|
||||||
\hich\af38\dbch\af13\loch\f38 not provide support services for it.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s1 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 8.\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
|
|
||||||
\hich\af38\dbch\af13\loch\f38 ENTIRE AGREEMENT.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
|
|
||||||
This agreement, and the terms for supplements, updates, Internet-based services and support services that you use, are the entire agreement for the software and support services.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid1456345
|
|
||||||
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s1 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 9.\tab}}\pard \ltrpar\s1\ql \fi-360\li360\ri0\sb120\sa120\nowidctlpar
|
|
||||||
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls12\outlinelevel0\adjustright\rin0\lin360\itap0\pararsid8259195 {\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 APPLICABLE LAW.}{\rtlch\fcs1
|
|
||||||
\af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s2 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 a.\tab}}\pard\plain \ltrpar\s2\ql \fi-363\li720\ri0\sb120\sa120\nowidctlpar
|
|
||||||
\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl1\outlinelevel1\adjustright\rin0\lin720\itap0\pararsid8259195 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 United States.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0
|
|
||||||
\b0\fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
|
|
||||||
If you acquired the software in the United States, Washington state law governs the interpretation of this agreement and applies to claims for breach of it, regardless of conflict of laws principles. The laws of the state where you live g
|
|
||||||
\hich\af38\dbch\af13\loch\f38 overn all other claims, including claims under state consumer protection laws, unfair competition laws, and in tort.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s2 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 b.\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
|
|
||||||
\hich\af38\dbch\af13\loch\f38 Outside the United States.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 If you acquired the software in any other country, the laws of that country apply.}{
|
|
||||||
\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s1 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 10.\tab}}\pard\plain \ltrpar\s1\ql \fi-357\li357\ri0\sb120\sa120\nowidctlpar
|
|
||||||
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls12\outlinelevel0\adjustright\rin0\lin357\itap0\pararsid8259195 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0 \b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {
|
|
||||||
\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 LEGAL EFFECT.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 This agr\hich\af38\dbch\af13\loch\f38
|
|
||||||
eement describes certain legal rights. You may have other rights under the laws of your country. You may also have rights with respect to the party from whom you acquired the software. This agreement does not change your rights under the laws of your coun
|
|
||||||
\hich\af38\dbch\af13\loch\f38 t\hich\af38\dbch\af13\loch\f38 ry if the laws of your country do not permit it to do so.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0 \b0\fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s1 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 11.\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
|
|
||||||
\hich\af38\dbch\af13\loch\f38 \hich\f38 DISCLAIMER OF WARRANTY. THE SOFTWARE IS LICENSED \'93\loch\f38 \hich\f38 AS-IS.\'94\loch\f38
|
|
||||||
YOU BEAR THE RISK OF USING IT. MICROSOFT GIVES NO EXPRESS WARRANTIES, GUARANTEES OR CONDITIONS. YOU MAY HAVE ADDITIONAL CONSUMER RIGHTS \hich\af38\dbch\af13\loch\f38
|
|
||||||
UNDER YOUR LOCAL LAWS WHICH THIS AGREEMENT CANNOT CHANGE. TO THE EXTENT PERMITTED UNDER YOUR LOCAL LAWS, MICROSOFT EXCLUDES THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT.}{\rtlch\fcs1 \af38\afs20
|
|
||||||
\ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s1 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 12.\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268
|
|
||||||
\hich\af38\dbch\af13\loch\f38 LIMITATION ON AND EXCLUSION OF\hich\af38\dbch\af13\loch\f38 REMEDIES AND DAMAGES}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\insrsid8404268 \hich\af38\dbch\af11\loch\f38
|
|
||||||
. YOU CAN RECOVER FROM MICROSOFT AND ITS SUPPLIERS ONLY DIRECT DAMAGES UP TO U.S. $5.00. YOU CANNOT RECOVER ANY OTHER DAMAGES, INCLUDING CONSEQUENTIAL, LOST PROFITS, SPECIAL, INDIRECT OR INCIDENTAL DAMAGES.}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0
|
|
||||||
\fs20\insrsid1456345
|
|
||||||
\par }\pard\plain \ltrpar\s24\ql \li357\ri0\sb120\sa120\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin357\itap0\pararsid8259195 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 This limitation applies to}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0
|
|
||||||
\fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s34 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard\plain \ltrpar\s34\ql \fi-363\li720\ri0\sb120\sa120\nowidctlpar
|
|
||||||
\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls2\adjustright\rin0\lin720\itap0\pararsid8259195 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1
|
|
||||||
\af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38 anything related to the software, services, content (including code) on third party Internet sites, or third party programs; and}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0
|
|
||||||
\fs20\dbch\af13\insrsid1456345
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s34 \rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\loch\af3\hich\af3\dbch\af13\insrsid8404268 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
|
|
||||||
claims for breach of contract, breach of warranty, guarantee or condition, strict liability, negligence, or other t\hich\af38\dbch\af13\loch\f38 ort to the extent permitted by applicable law.}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0
|
|
||||||
\fs20\dbch\af13\insrsid1456345
|
|
||||||
\par }\pard\plain \ltrpar\ql \li360\ri0\sb120\sa120\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin360\itap0\pararsid8259195 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid8404268 \hich\af38\dbch\af13\loch\f38
|
|
||||||
It also applies even if Microsoft knew or should have known about the possibility of the damages. The above limitation or exclusion may not apply to you because your country may not allow the exclusion or limi\hich\af38\dbch\af13\loch\f38
|
|
||||||
tation of incidental, consequential or other damages.}{\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid1456345
|
|
||||||
\par }\pard \ltrpar\ql \li0\ri0\sa200\sl276\slmult1\widctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0 {\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid14092627 \page
|
|
||||||
\par }\pard\plain \ltrpar\s42\ql \li0\ri0\sb120\sa120\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14092627 \rtlch\fcs1 \ab\af38\afs28\alang1025 \ltrch\fcs0
|
|
||||||
\b\fs28\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 MICROSOFT SOFTWARE SUPPLEMENTAL LICENSE TERMS
|
|
||||||
\par }\pard \ltrpar\s42\ql \li0\ri0\sb120\sa120\nowidctlpar\brdrb\brdrs\brdrw10\brsp20 \wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14092627 {\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid14092627
|
|
||||||
\hich\af38\dbch\af13\loch\f38 ENTITY FRAMEWORK 4.1
|
|
||||||
\par }\pard\plain \ltrpar\s44\ql \li0\ri0\sb120\sa120\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14092627 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \ab0\af38 \ltrch\fcs0 \b0\dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38
|
|
||||||
Microsoft Corporation (or based on where you live, one of its affiliates) licenses this supplement to you. If you are licensed to \hich\af38\dbch\af13\loch\f38 \hich\f38 use Microsoft Windows Operating System software (the \'93\loch\f38 \hich\f38 software
|
|
||||||
\'94\loch\f38 ), you may use this supplement. You may not use it if you do not have a license for the software. You may use this supplement with each validly licensed copy of the software.}{\rtlch\fcs1 \ab0\af38\afs20 \ltrch\fcs0
|
|
||||||
\b0\fs20\dbch\af13\insrsid14092627
|
|
||||||
\par }{\rtlch\fcs1 \ab0\af38 \ltrch\fcs0 \b0\dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 The following lice\hich\af38\dbch\af13\loch\f38
|
|
||||||
nse terms describe additional use terms for this supplement. These terms and the license terms for the software apply to your use of the supplement. If there is a conflict, these supplemental license terms apply.
|
|
||||||
\par }{\rtlch\fcs1 \af38 \ltrch\fcs0 \dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 By using this supplement, you accept these \hich\af38\dbch\af13\loch\f38 terms. If you do not accept them, do not use this supplement.
|
|
||||||
\par }\pard\plain \ltrpar\s61\ql \li0\ri0\sb120\sa120\nowidctlpar\brdrt\brdrs\brdrw10\brsp20 \wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14092627 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 If you comply with these license terms, you have the rights below.
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s1 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 13.\tab}}\pard\plain \ltrpar\s1\ql \fi-357\li357\ri0\sb120\sa120\nowidctlpar
|
|
||||||
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls12\outlinelevel0\adjustright\rin0\lin357\itap0\pararsid14092627 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0 \b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
|
|
||||||
{\rtlch\fcs1 \af38 \ltrch\fcs0 \dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 DISTRIBUTABLE CODE. }{\rtlch\fcs1 \ab0\af38 \ltrch\fcs0 \b0\dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 \hich\f38
|
|
||||||
The supplement is comprised of Distributable Code. \'93\loch\f38 \hich\f38 Distributable Code\'94\loch\f38 is code that you are permitted to d\hich\af38\dbch\af13\loch\f38 istribute in programs you develop if you comply with the terms below.
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s2 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 a.\tab}}\pard\plain \ltrpar\s2\ql \fi-363\li720\ri0\sb120\sa120\nowidctlpar
|
|
||||||
\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl1\outlinelevel1\adjustright\rin0\lin720\itap0\pararsid14092627 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 Right to Use and Distribute.
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s51 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\loch\af3\hich\af3\dbch\af13\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard\plain \ltrpar\s51\ql \fi-357\li1077\ri0\sb120\sa120\nowidctlpar
|
|
||||||
\jclisttab\tx1080\wrapdefault\aspalpha\aspnum\faauto\ls36\adjustright\rin0\lin1077\itap0\pararsid14092627 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\ul\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1
|
|
||||||
\af38 \ltrch\fcs0 \ulnone\dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 You may copy and distribute the object code form of the supplement.
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s51 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\loch\af3\hich\af3\dbch\af13\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}{\rtlch\fcs1 \af38 \ltrch\fcs0 \dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38
|
|
||||||
Third Party Distribution}{\rtlch\fcs1 \af38 \ltrch\fcs0 \ulnone\dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 . You may permit distributors of your programs to copy and distr\hich\af38\dbch\af13\loch\f38
|
|
||||||
ibute the Distributable Code as part of those programs.
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s2 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 b.\tab}}\pard\plain \ltrpar\s2\ql \fi-363\li720\ri0\sb120\sa120\nowidctlpar
|
|
||||||
\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl1\outlinelevel1\adjustright\rin0\lin720\itap0\pararsid14092627 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 Distribution Requirements. For any Distributable Code you distribute, you must
|
|
||||||
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\loch\af3\hich\af3\dbch\af13\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard\plain \ltrpar\s35\ql \fi-357\li1077\ri0\sb120\sa120\nowidctlpar
|
|
||||||
\jclisttab\tx1080\wrapdefault\aspalpha\aspnum\faauto\ls34\adjustright\rin0\lin1077\itap0\pararsid14092627 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1
|
|
||||||
\af38 \ltrch\fcs0 \dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 add significant primary functionality to it in your programs;
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\loch\af3\hich\af3\dbch\af13\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38 for any Distributable Code having a filename extension of .
|
|
||||||
\hich\af38\dbch\af13\loch\f38 lib, distribute only the results of running such Distributable Code through a linker with your program;
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\loch\af3\hich\af3\dbch\af13\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38
|
|
||||||
distribute Distributable Code included in a setup program only as part of that setup program without modification;
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\loch\af3\hich\af3\dbch\af13\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38 require distributors and external en\hich\af38\dbch\af13\loch\f38
|
|
||||||
d users to agree to terms that protect it at least as much as this agreement;
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\loch\af3\hich\af3\dbch\af13\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38 display your valid copyright notice on your programs; and
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\loch\af3\hich\af3\dbch\af13\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38
|
|
||||||
indemnify, defend, and hold harmless Microsoft from any claims, including attorneys\hich\f38 \rquote \loch\f38 fees, related to the distribution o\hich\af38\dbch\af13\loch\f38 r use of your programs.
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s2 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 c.\tab}}\pard\plain \ltrpar\s2\ql \fi-363\li720\ri0\sb120\sa120\nowidctlpar
|
|
||||||
\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl1\outlinelevel1\adjustright\rin0\lin720\itap0\pararsid14092627 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 Distribution Restrictions. You may not
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\loch\af3\hich\af3\dbch\af13\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard\plain \ltrpar\s35\ql \fi-357\li1077\ri0\sb120\sa120\nowidctlpar
|
|
||||||
\jclisttab\tx1080\wrapdefault\aspalpha\aspnum\faauto\ls34\adjustright\rin0\lin1077\itap0\pararsid14092627 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1
|
|
||||||
\af38 \ltrch\fcs0 \dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 alter any copyright, trademark or patent notice in the Distributable Code;
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\loch\af3\hich\af3\dbch\af13\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38 use Microsoft\hich\f38 \rquote \loch\f38
|
|
||||||
s trademarks in your programs\hich\f38 \rquote \loch\f38 names or in a way that suggests your programs come from or are endorsed b\hich\af38\dbch\af13\loch\f38 y Microsoft;
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\loch\af3\hich\af3\dbch\af13\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38
|
|
||||||
distribute Distributable Code to run on a platform other than the Windows platform;
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\loch\af3\hich\af3\dbch\af13\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38
|
|
||||||
include Distributable Code in malicious, deceptive or unlawful programs; or
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\loch\af3\hich\af3\dbch\af13\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38
|
|
||||||
modify or distribute the source code of any Distributable Code so that any part of \hich\af38\dbch\af13\loch\f38 it becomes subject to an Excluded License. An Excluded License is one that requires, as a condition of use, modification or distribution, that
|
|
||||||
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s36 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\cf18\loch\af3\hich\af3\dbch\af13\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard\plain \ltrpar\s36\ql \fi-358\li1435\ri0\sb120\sa120\nowidctlpar
|
|
||||||
\jclisttab\tx1437\wrapdefault\aspalpha\aspnum\faauto\ls35\adjustright\rin0\lin1435\itap0\pararsid14092627 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0 \fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1
|
|
||||||
\af38 \ltrch\fcs0 \dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 the code be disclosed or distributed in source code form; or
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s36 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\cf18\loch\af3\hich\af3\dbch\af13\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38 others have the right to modify it.
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s1 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\loch\af38\hich\af38\dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 14.\tab}}\pard\plain \ltrpar\s1\ql \fi-357\li357\ri0\sb120\sa120\nowidctlpar
|
|
||||||
\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls12\outlinelevel0\adjustright\rin0\lin357\itap0\pararsid14092627 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0 \b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033
|
|
||||||
{\rtlch\fcs1 \af38 \ltrch\fcs0 \dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 SUPPORT SERVICES\hich\af38\dbch\af13\loch\f38 FOR SUPPLEMENT. }{\rtlch\fcs1 \ab0\af38 \ltrch\fcs0 \b0\dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38
|
|
||||||
Microsoft provides support services for this software as described at }{\rtlch\fcs1 \ab0\af0 \ltrch\fcs0 \cs73\b0\ul\cf2\dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38 www.support.microsoft.com/common/international.aspx}{\rtlch\fcs1 \ab0\af38
|
|
||||||
\ltrch\fcs0 \b0\dbch\af13\insrsid14092627 .
|
|
||||||
\par }\pard\plain \ltrpar\ql \li0\ri0\sb120\sa120\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14092627 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \ab\af38 \ltrch\fcs0 \b\dbch\af13\insrsid14092627 \hich\af38\dbch\af13\loch\f38
|
|
||||||
Please note: As this software is distributed in Quebec, Canada, these license terms are provided below in French.
|
|
||||||
\par }{\rtlch\fcs1 \ab\af38 \ltrch\fcs0 \b\lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 \hich\f38 Remarque: Ce logiciel \'e9\loch\f38 \hich\f38 tant distribu\'e9\loch\f38 \hich\f38 au Qu\'e9\loch\f38 \hich\f38
|
|
||||||
bec, Canada, les termes de cette licence sont fournis ci-dessous en fran\'e7\loch\f38 ais.
|
|
||||||
\par }{\rtlch\fcs1 \af38 \ltrch\fcs0 \lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627
|
|
||||||
\par }\pard\plain \ltrpar\s42\ql \li0\ri0\sb120\sa120\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14092627 \rtlch\fcs1 \ab\af38\afs28\alang1025 \ltrch\fcs0
|
|
||||||
\b\fs28\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \fs20\lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 TERMES DU CONTRAT DE LICENCE D\hich\f38
|
|
||||||
\rquote \loch\f38 \hich\f38 UN SUPPL\'c9\loch\f38 MENT MICROSOFT
|
|
||||||
\par }\pard\plain \ltrpar\s44\ql \li0\ri0\sb120\sa120\nowidctlpar\brdrb\brdrs\brdrw10\brsp20 \wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14092627 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \lang1024\langfe1024\dbch\af13\noproof\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 ENTITY FRAMEWORK 4.1}{\rtlch\fcs1 \af38
|
|
||||||
\ltrch\fcs0 \lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 }{\rtlch\fcs1 \af38 \ltrch\fcs0 \fs20\lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627
|
|
||||||
\par }\pard \ltrpar\s44\ql \li0\ri0\sb120\sa120\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14092627 {\rtlch\fcs1 \af38 \ltrch\fcs0 \b0\lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627
|
|
||||||
\hich\af38\dbch\af13\loch\f38 \hich\f38 Microsoft Corporation (ou en fonction du lieu o\'f9\loch\f38 vous vi\hich\af38\dbch\af13\loch\f38 vez, l\hich\f38 \rquote \loch\f38 \hich\f38 un de ses affili\'e9\loch\f38 \hich\f38
|
|
||||||
s) vous accorde une licence pour ce suppl\'e9\loch\f38 \hich\f38 ment. Si vous \'ea\loch\f38 tes titulaire d\hich\f38 \rquote \loch\f38 une licence d\hich\f38 \rquote \loch\f38 utilisation du logiciel }{\rtlch\fcs1 \af38 \ltrch\fcs0
|
|
||||||
\b0\lang1024\langfe1024\dbch\af13\noproof\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 Microsoft Windows Operating System}{\rtlch\fcs1 \af38 \ltrch\fcs0 \b0\lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627
|
|
||||||
\hich\af38\dbch\af13\loch\f38 \hich\f38 (le \'ab\~\loch\f38 logiciel\~\hich\f38 \'bb\loch\f38 \hich\f38 ), vous pouvez utiliser ce suppl\'e9\loch\f38 ment. Vous n\hich\f38 \rquote \'ea\loch\f38 \hich\f38 tes pas autoris\'e9\loch\f38 \hich\f38 \'e0
|
|
||||||
\loch\f38 util\hich\af38\dbch\af13\loch\f38 \hich\f38 iser ce suppl\'e9\loch\f38 ment si vous n\hich\f38 \rquote \'ea\loch\f38 tes pas titulaire d\hich\f38 \rquote \loch\f38 \hich\f38
|
|
||||||
une licence pour le logiciel. Vous pouvez utiliser une copie de ce suppl\'e9\loch\f38 \hich\f38 ment avec chaque copie conc\'e9\loch\f38 \hich\f38 d\'e9\loch\f38 e sous licence du logiciel.}{\rtlch\fcs1 \ab0\af38 \ltrch\fcs0 \cs96\insrsid14092627
|
|
||||||
\par }{\rtlch\fcs1 \af38 \ltrch\fcs0 \b0\lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 \hich\f38 Les conditions de licence suivantes d\'e9\loch\f38 crivent les conditions d\hich\f38 \rquote \loch\f38 utilisation
|
|
||||||
\hich\af38\dbch\af13\loch\f38 \hich\f38 suppl\'e9\loch\f38 \hich\f38 mentaires applicables pour ce suppl\'e9\loch\f38 \hich\f38 ment. Les pr\'e9\loch\f38 \hich\f38 sentes conditions et les conditions de licence pour le logiciel s'appliquent \'e0\loch\f38
|
|
||||||
\hich\f38 l'utilisation du suppl\'e9\loch\f38 \hich\f38 ment. En cas de conflit, les pr\'e9\loch\f38 \hich\f38 sentes conditions de licence suppl\'e9\loch\f38 mentaires s\hich\f38 \rquote \loch\f38 appliquent.}{\rtlch\fcs1 \af38 \ltrch\fcs0
|
|
||||||
\b0\insrsid14092627
|
|
||||||
\par }{\rtlch\fcs1 \af38 \ltrch\fcs0 \lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 En utili\hich\af38\dbch\af13\loch\f38 \hich\f38 sant ce suppl\'e9\loch\f38
|
|
||||||
ment, vous acceptez ces termes. Si vous ne les acceptez pas, n\hich\f38 \rquote \loch\f38 \hich\f38 utilisez pas ce suppl\'e9\loch\f38 ment.
|
|
||||||
\par }\pard \ltrpar\s44\ql \li0\ri0\sb120\sa120\nowidctlpar\brdrt\brdrs\brdrw10\brsp20 \wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin0\itap0\pararsid14092627 {\rtlch\fcs1 \af38 \ltrch\fcs0 \lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627
|
|
||||||
\hich\af38\dbch\af13\loch\f38 \hich\f38 Dans le cadre du pr\'e9\loch\f38 sent accord de licence, vous disposez des droits ci-dessous.
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s1 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\lang1036\langfe1033\loch\af38\hich\af38\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 15.\tab}}\pard\plain \ltrpar
|
|
||||||
\s1\ql \fi-357\li357\ri0\sb120\sa120\nowidctlpar\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls12\outlinelevel0\adjustright\rin0\lin357\itap0\pararsid14092627 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 CODE DISTRIBUABLE. }{\rtlch\fcs1 \ab0\af38
|
|
||||||
\ltrch\fcs0 \b0\lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 \hich\f38 Le suppl\'e9\loch\f38 \hich\f38 ment constitue du Code Distribuable. Le \'ab\~\hich\af38\dbch\af13\loch\f38 Code Distribuable\~\hich\f38 \'bb
|
|
||||||
\loch\f38 \hich\f38 est le code que vous \'ea\loch\f38 \hich\f38 tes autoris\'e9\loch\f38 \hich\f38 \'e0\loch\f38 \hich\f38 distribuer dans les programmes que vous d\'e9\loch\f38 \hich\f38 veloppez, sous r\'e9\loch\f38 \hich\f38
|
|
||||||
serve de vous conformer aux termes ci-apr\'e8\loch\f38 s.
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s2 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\lang1036\langfe1033\loch\af38\hich\af38\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 a.\tab}}\pard\plain \ltrpar
|
|
||||||
\s2\ql \fi-363\li720\ri0\sb120\sa120\nowidctlpar\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl1\outlinelevel1\adjustright\rin0\lin720\itap0\pararsid14092627 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \ab0\af38 \ltrch\fcs0 \lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 Droit d\hich\f38 \rquote \loch\f38
|
|
||||||
utilisation et de distribution.
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s51 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\lang1036\langfe1033\loch\af3\hich\af3\dbch\af13\langnp1036\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard\plain \ltrpar
|
|
||||||
\s51\ql \fi-357\li1077\ri0\sb120\sa120\nowidctlpar\jclisttab\tx1080\wrapdefault\aspalpha\aspnum\faauto\ls37\adjustright\rin0\lin1077\itap0\pararsid14092627 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\fs19\ul\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \ulnone\lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 \hich\f38 Vous \'ea\loch\f38 \hich\f38
|
|
||||||
tes autoris\'e9\loch\f38 \hich\f38 \'e0\loch\f38 \hich\f38 copier et \'e0\loch\f38 distribuer la versio\hich\af38\dbch\af13\loch\f38 \hich\f38 n en code objet du suppl\'e9\loch\f38 ment.
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s51 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\lang1036\langfe1033\loch\af3\hich\af3\dbch\af13\langnp1036\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard \ltrpar\s51\ql \fi-357\li1077\ri0\sb120\sa120\nowidctlpar
|
|
||||||
\jclisttab\tx1080\wrapdefault\aspalpha\aspnum\faauto\ls36\adjustright\rin0\lin1077\itap0\pararsid14092627 {\rtlch\fcs1 \af38 \ltrch\fcs0 \lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38
|
|
||||||
Distribution par des tierces parties}{\rtlch\fcs1 \af38 \ltrch\fcs0 \ulnone\lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 \hich\f38 . Vous pouvez autoriser les distributeurs de vos programmes \'e0\loch\f38
|
|
||||||
\hich\f38 copier et \'e0\loch\f38 \hich\f38 distribuer le code distribuable en tant que partie int\'e9\loch\f38 grante de ces programmes.
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s2 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\lang1036\langfe1033\loch\af38\hich\af38\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 b.\tab}}\pard\plain \ltrpar
|
|
||||||
\s2\ql \fi-363\li720\ri0\sb120\sa120\nowidctlpar\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl1\outlinelevel1\adjustright\rin0\lin720\itap0\pararsid14092627 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 Conditions de distribution. Pour p
|
|
||||||
\hich\af38\dbch\af13\loch\f38 ouvoir distribuer du code distribuable, vous devez\~:
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\lang1036\langfe1033\loch\af3\hich\af3\dbch\af13\langnp1036\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard\plain \ltrpar
|
|
||||||
\s35\ql \fi-357\li1077\ri0\sb120\sa120\nowidctlpar\jclisttab\tx1080\wrapdefault\aspalpha\aspnum\faauto\ls34\adjustright\rin0\lin1077\itap0\pararsid14092627 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 \hich\f38 y ajouter des fonctionnalit\'e9
|
|
||||||
\loch\f38 s importantes au sein de vos programmes,
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\lang1036\langfe1033\loch\af3\hich\af3\dbch\af13\langnp1036\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard \ltrpar\s35\ql \fi-357\li1077\ri0\sb120\sa120\widctlpar
|
|
||||||
\jclisttab\tx1080\wrapdefault\aspalpha\aspnum\faauto\ls34\adjustright\rin0\lin1077\itap0\pararsid14092627 {\rtlch\fcs1 \af38 \ltrch\fcs0 \lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38
|
|
||||||
pour tout Code distribuable dont l\hich\f38 \rquote \loch\f38 \hich\f38 extension de nom de fichier est .lib, distribuer seulement les r\'e9\loch\f38 sultats de l\hich\f38 \rquote \loch\f38 \hich\f38 ex\'e9\loch\f38 cution de ce Code
|
|
||||||
\hich\af38\dbch\af13\loch\f38 \hich\f38 distribuable \'e0\loch\f38 l\hich\f38 \rquote \loch\f38 aide d\hich\f38 \rquote \loch\f38 \hich\f38 un \'e9\loch\f38 diteur de liens avec votre programme\~;
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\lang1036\langfe1033\loch\af3\hich\af3\dbch\af13\langnp1036\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38
|
|
||||||
distribuer le Code distribuable inclus dans un programme d\hich\f38 \rquote \loch\f38 \hich\f38 installation seulement en tant que partie int\'e9\loch\f38 grante de ce programme sans modification\~;
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\lang1036\langfe1033\loch\af3\hich\af3\dbch\af13\langnp1036\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard \ltrpar\s35\ql \fi-357\li1077\ri0\sb120\sa120\nowidctlpar
|
|
||||||
\jclisttab\tx1080\wrapdefault\aspalpha\aspnum\faauto\ls34\adjustright\rin0\lin1077\itap0\pararsid14092627 {\rtlch\fcs1 \af38 \ltrch\fcs0 \lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38
|
|
||||||
lier les distributeurs et les utilisateur\hich\af38\dbch\af13\loch\f38 \hich\f38 s externes par un contrat dont les termes les prot\'e8\loch\f38 \hich\f38 gent autant que le pr\'e9\loch\f38 sent contrat,
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\lang1036\langfe1033\loch\af3\hich\af3\dbch\af13\langnp1036\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38
|
|
||||||
afficher votre propre mention de droits d\hich\f38 \rquote \loch\f38 auteur valable sur vos programmes et
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\lang1036\langfe1033\loch\af3\hich\af3\dbch\af13\langnp1036\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38 \hich\f38 garantir et d\'e9\loch\f38
|
|
||||||
\hich\f38 fendre Microsoft contre toute r\'e9\loch\f38 clamation, y compris pour les honoraires d\hich\f38 \rquote \loch\f38 a\hich\af38\dbch\af13\loch\f38 \hich\f38 vocats, qui r\'e9\loch\f38 sulterait de la distribution ou l\hich\f38 \rquote \loch\f38
|
|
||||||
utilisation de vos programmes.
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s2 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\lang1036\langfe1033\loch\af38\hich\af38\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 c.\tab}}\pard\plain \ltrpar
|
|
||||||
\s2\ql \fi-363\li720\ri0\sb120\sa120\nowidctlpar\jclisttab\tx720\wrapdefault\aspalpha\aspnum\faauto\ls12\ilvl1\outlinelevel1\adjustright\rin0\lin720\itap0\pararsid14092627 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 Restrictions de distribution. Vous n\hich\f38
|
|
||||||
\rquote \'ea\loch\f38 \hich\f38 tes pas autoris\'e9\loch\f38 \hich\f38 \'e0\~\loch\f38 :
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\lang1036\langfe1033\loch\af3\hich\af3\dbch\af13\langnp1036\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard\plain \ltrpar
|
|
||||||
\s35\ql \fi-357\li1077\ri0\sb120\sa120\nowidctlpar\jclisttab\tx1080\wrapdefault\aspalpha\aspnum\faauto\ls34\adjustright\rin0\lin1077\itap0\pararsid14092627 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 modifier toute mention de droits d\hich\f38
|
|
||||||
\rquote \loch\f38 auteur, de \hich\af38\dbch\af13\loch\f38 \hich\f38 marques ou de droits de propri\'e9\loch\f38 \hich\f38 t\'e9\loch\f38 industrielle pouvant figurer dans le code distribuable,
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\lang1036\langfe1033\loch\af3\hich\af3\dbch\af13\langnp1036\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38
|
|
||||||
utiliser les marques de Microsoft dans les noms de vos programmes ou d\hich\f38 \rquote \loch\f38 \hich\f38 une fa\'e7\loch\f38 \hich\f38 on qui sugg\'e8\loch\f38 \hich\f38 re que vos programmes sont fournis par Microsoft ou sous la responsabilit\'e9
|
|
||||||
\loch\f38 d\hich\af38\dbch\af13\loch\f38 e Microsoft,
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\lang1036\langfe1033\loch\af3\hich\af3\dbch\af13\langnp1036\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38 \hich\f38
|
|
||||||
distribuer le Code distribuable en vue de son ex\'e9\loch\f38 cution sur une plate-forme autre que la plate-forme\~Windows,
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\lang1036\langfe1033\loch\af3\hich\af3\dbch\af13\langnp1036\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38
|
|
||||||
inclure le Code distribuable dans des programmes malveillants, trompeurs ou interdits par la loi, ou
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s35 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\lang1036\langfe1033\loch\af3\hich\af3\dbch\af13\langnp1036\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38 modifier ou distribuer le code s
|
|
||||||
\hich\af38\dbch\af13\loch\f38 \hich\f38 ource de code distribuable de mani\'e8\loch\f38 \hich\f38 re \'e0\loch\f38 ce qu\hich\f38 \rquote \loch\f38 il fasse l\hich\f38 \rquote \loch\f38 \hich\f38 objet, en partie ou dans son int\'e9\loch\f38 \hich\f38
|
|
||||||
gralit\'e9\loch\f38 , d\hich\f38 \rquote \loch\f38 une Licence Exclue. Une Licence Exclue implique comme condition d\hich\f38 \rquote \loch\f38 utilisation, de modification ou de distribution, que\~:
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s36 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\cf18\lang1036\langfe1033\loch\af3\hich\af3\dbch\af13\langnp1036\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}}\pard\plain \ltrpar
|
|
||||||
\s36\ql \fi-358\li1435\ri0\sb120\sa120\nowidctlpar\jclisttab\tx1437\wrapdefault\aspalpha\aspnum\faauto\ls35\adjustright\rin0\lin1435\itap0\pararsid14092627 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 \hich\f38 le code soit d\'e9\loch\f38 \hich\f38
|
|
||||||
voil\'e9\loch\f38 \hich\f38 ou distribu\'e9\loch\f38 \hich\af38\dbch\af13\loch\f38 dans sa forme de code source, ou
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s36 \rtlch\fcs1 \af38\afs19 \ltrch\fcs0 \fs19\cf18\lang1036\langfe1033\loch\af3\hich\af3\dbch\af13\langnp1036\insrsid14092627 \loch\af3\dbch\af13\hich\f3 \'b7\tab}\hich\af38\dbch\af13\loch\f38 d\hich\f38 \rquote \loch\f38
|
|
||||||
autres aient le droit de le modifier.
|
|
||||||
\par {\listtext\pard\plain\ltrpar \s1 \rtlch\fcs1 \ab\af38\afs20 \ltrch\fcs0 \b\fs20\lang1036\langfe1033\loch\af38\hich\af38\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 16.\tab}}\pard\plain \ltrpar
|
|
||||||
\s1\ql \fi-357\li357\ri0\sb120\sa120\nowidctlpar\jclisttab\tx360\wrapdefault\aspalpha\aspnum\faauto\ls12\outlinelevel0\adjustright\rin0\lin357\itap0\pararsid14092627 \rtlch\fcs1 \ab\af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\b\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38 \ltrch\fcs0 \lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 SERVICES D\hich\f38 \rquote \loch\f38 \hich\f38
|
|
||||||
ASSISTANCE TECHNIQUE POUR LE SUPPL\'c9\loch\f38 MENT. }{\rtlch\fcs1 \ab0\af38 \ltrch\fcs0 \b0\lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 Microsoft fournit des services d\hich\f38 \rquote \loch\f38
|
|
||||||
assistance technique pour ce logiciel disponibles sur le site }{\rtlch\fcs1 \ab0\af0 \ltrch\fcs0 \cs73\b0\ul\cf2\lang1036\langfe1033\dbch\af13\langnp1036\insrsid14092627 \hich\af38\dbch\af13\loch\f38 www.support.microsoft.com/common/int
|
|
||||||
\hich\af38\dbch\af13\loch\f38 ernational.aspx.}{\rtlch\fcs1 \ab0\af38 \ltrch\fcs0 \b0\lang2057\langfe2057\dbch\af13\langnp2057\langfenp2057\insrsid14092627
|
|
||||||
\par }\pard\plain \ltrpar\ql \li360\ri0\sb120\sa120\nowidctlpar\wrapdefault\aspalpha\aspnum\faauto\adjustright\rin0\lin360\itap0\pararsid8259195 \rtlch\fcs1 \af38\afs19\alang1025 \ltrch\fcs0
|
|
||||||
\fs19\lang1033\langfe1033\loch\af38\hich\af38\dbch\af11\cgrid\langnp1033\langfenp1033 {\rtlch\fcs1 \af38\afs20 \ltrch\fcs0 \fs20\dbch\af13\insrsid864014
|
|
||||||
\par }{\*\themedata 504b030414000600080000002100e9de0fbfff0000001c020000130000005b436f6e74656e745f54797065735d2e786d6cac91cb4ec3301045f748fc83e52d4a
|
|
||||||
9cb2400825e982c78ec7a27cc0c8992416c9d8b2a755fbf74cd25442a820166c2cd933f79e3be372bd1f07b5c3989ca74aaff2422b24eb1b475da5df374fd9ad
|
|
||||||
5689811a183c61a50f98f4babebc2837878049899a52a57be670674cb23d8e90721f90a4d2fa3802cb35762680fd800ecd7551dc18eb899138e3c943d7e503b6
|
|
||||||
b01d583deee5f99824e290b4ba3f364eac4a430883b3c092d4eca8f946c916422ecab927f52ea42b89a1cd59c254f919b0e85e6535d135a8de20f20b8c12c3b0
|
|
||||||
0c895fcf6720192de6bf3b9e89ecdbd6596cbcdd8eb28e7c365ecc4ec1ff1460f53fe813d3cc7f5b7f020000ffff0300504b030414000600080000002100a5d6
|
|
||||||
a7e7c0000000360100000b0000005f72656c732f2e72656c73848fcf6ac3300c87ef85bd83d17d51d2c31825762fa590432fa37d00e1287f68221bdb1bebdb4f
|
|
||||||
c7060abb0884a4eff7a93dfeae8bf9e194e720169aaa06c3e2433fcb68e1763dbf7f82c985a4a725085b787086a37bdbb55fbc50d1a33ccd311ba548b6309512
|
|
||||||
0f88d94fbc52ae4264d1c910d24a45db3462247fa791715fd71f989e19e0364cd3f51652d73760ae8fa8c9ffb3c330cc9e4fc17faf2ce545046e37944c69e462
|
|
||||||
a1a82fe353bd90a865aad41ed0b5b8f9d6fd010000ffff0300504b0304140006000800000021006b799616830000008a0000001c0000007468656d652f746865
|
|
||||||
6d652f7468656d654d616e616765722e786d6c0ccc4d0ac3201040e17da17790d93763bb284562b2cbaebbf600439c1a41c7a0d29fdbd7e5e38337cedf14d59b
|
|
||||||
4b0d592c9c070d8a65cd2e88b7f07c2ca71ba8da481cc52c6ce1c715e6e97818c9b48d13df49c873517d23d59085adb5dd20d6b52bd521ef2cdd5eb9246a3d8b
|
|
||||||
4757e8d3f729e245eb2b260a0238fd010000ffff0300504b03041400060008000000210096b5ade296060000501b0000160000007468656d652f7468656d652f
|
|
||||||
7468656d65312e786d6cec594f6fdb3614bf0fd87720746f6327761a07758ad8b19b2d4d1bc46e871e698996d850a240d2497d1bdae38001c3ba618715d86d87
|
|
||||||
615b8116d8a5fb34d93a6c1dd0afb0475292c5585e9236d88aad3e2412f9e3fbff1e1fa9abd7eec70c1d1221294fda5efd72cd4324f1794093b0eddd1ef62fad
|
|
||||||
79482a9c0498f184b4bd2991deb58df7dfbb8ad755446282607d22d771db8b944ad79796a40fc3585ee62949606ecc458c15bc8a702910f808e8c66c69b9565b
|
|
||||||
5d8a314d3c94e018c8de1a8fa94fd05093f43672e23d06af89927ac06762a049136785c10607758d9053d965021d62d6f6804fc08f86e4bef210c352c144dbab
|
|
||||||
999fb7b4717509af678b985ab0b6b4ae6f7ed9ba6c4170b06c788a705430adf71bad2b5b057d03606a1ed7ebf5babd7a41cf00b0ef83a6569632cd467faddec9
|
|
||||||
699640f6719e76b7d6ac355c7c89feca9cccad4ea7d36c65b258a206641f1b73f8b5da6a6373d9c11b90c537e7f08dce66b7bbeae00dc8e257e7f0fd2badd586
|
|
||||||
8b37a088d1e4600ead1ddaef67d40bc898b3ed4af81ac0d76a197c86826828a24bb318f3442d8ab518dfe3a20f000d6458d104a9694ac6d88728eee2782428d6
|
|
||||||
0cf03ac1a5193be4cbb921cd0b495fd054b5bd0f530c1931a3f7eaf9f7af9e3f45c70f9e1d3ff8e9f8e1c3e3073f5a42ceaa6d9c84e5552fbffdeccfc71fa33f
|
|
||||||
9e7ef3f2d117d57859c6fffac327bffcfc793510d26726ce8b2f9ffcf6ecc98baf3efdfdbb4715f04d814765f890c644a29be408edf3181433567125272371be
|
|
||||||
15c308d3f28acd249438c19a4b05fd9e8a1cf4cd296699771c393ac4b5e01d01e5a30a787d72cf1178108989a2159c77a2d801ee72ce3a5c545a6147f32a9979
|
|
||||||
3849c26ae66252c6ed637c58c5bb8b13c7bfbd490a75330f4b47f16e441c31f7184e140e494214d273fc80900aedee52ead87597fa824b3e56e82e451d4c2b4d
|
|
||||||
32a423279a668bb6690c7e9956e90cfe766cb37b077538abd27a8b1cba48c80acc2a841f12e698f13a9e281c57911ce298950d7e03aba84ac8c154f8655c4f2a
|
|
||||||
f074481847bd804859b5e696007d4b4edfc150b12addbecba6b18b148a1e54d1bc81392f23b7f84137c2715a851dd0242a633f900710a218ed715505dfe56e86
|
|
||||||
e877f0034e16bafb0e258ebb4faf06b769e888340b103d3311da9750aa9d0a1cd3e4efca31a3508f6d0c5c5c398602f8e2ebc71591f5b616e24dd893aa3261fb
|
|
||||||
44f95d843b5974bb5c04f4edafb95b7892ec1108f3f98de75dc97d5772bdff7cc95d94cf672db4b3da0a6557f70db629362d72bcb0431e53c6066acac80d699a
|
|
||||||
6409fb44d08741bdce9c0e4971624a2378cceaba830b05366b90e0ea23aaa241845368b0eb9e2612ca8c742851ca251ceccc70256d8d87265dd96361531f186c
|
|
||||||
3d9058edf2c00eafe8e1fc5c509031bb4d680e9f39a3154de0accc56ae644441edd76156d7429d995bdd88664a9dc3ad50197c38af1a0c16d684060441db0256
|
|
||||||
5e85f3b9660d0713cc48a0ed6ef7dedc2dc60b17e92219e180643ed27acffba86e9c94c78ab90980d8a9f0913ee49d62b512b79626fb06dccee2a432bbc60276
|
|
||||||
b9f7dec44b7904cfbca4f3f6443ab2a49c9c2c41476dafd55c6e7ac8c769db1bc399161ee314bc2e75cf8759081743be1236ec4f4d6693e5336fb672c5dc24a8
|
|
||||||
c33585b5fb9cc24e1d4885545b58463634cc5416022cd19cacfccb4d30eb45296023fd35a458598360f8d7a4003bbaae25e331f155d9d9a5116d3bfb9a95523e
|
|
||||||
51440ca2e0088dd844ec6370bf0e55d027a012ae264c45d02f708fa6ad6da6dce29c255df9f6cae0ec38666984b372ab5334cf640b37795cc860de4ae2816e95
|
|
||||||
b21be5ceaf8a49f90b52a51cc6ff3355f47e0237052b81f6800fd7b802239daf6d8f0b1571a8426944fdbe80c6c1d40e8816b88b8569082ab84c36ff0539d4ff
|
|
||||||
6dce591a26ade1c0a7f669880485fd484582903d284b26fa4e2156cff62e4b9265844c4495c495a9157b440e091bea1ab8aaf7760f4510eaa69a6465c0e04ec6
|
|
||||||
9ffb9e65d028d44d4e39df9c1a52ecbd3607fee9cec7263328e5d661d3d0e4f62f44acd855ed7ab33cdf7bcb8ae889599bd5c8b3029895b6825696f6af29c239
|
|
||||||
b75a5bb1e6345e6ee6c28117e73586c1a2214ae1be07e93fb0ff51e133fb65426fa843be0fb515c187064d0cc206a2fa926d3c902e907670048d931db4c1a449
|
|
||||||
59d366ad93b65abe595f70a75bf03d616c2dd959fc7d4e6317cd99cbcec9c58b34766661c7d6766ca1a9c1b327531486c6f941c638c67cd22a7f75e2a37be0e8
|
|
||||||
2db8df9f30254d30c1372581a1f51c983c80e4b71ccdd28dbf000000ffff0300504b0304140006000800000021000dd1909fb60000001b010000270000007468
|
|
||||||
656d652f7468656d652f5f72656c732f7468656d654d616e616765722e786d6c2e72656c73848f4d0ac2301484f78277086f6fd3ba109126dd88d0add40384e4
|
|
||||||
350d363f2451eced0dae2c082e8761be9969bb979dc9136332de3168aa1a083ae995719ac16db8ec8e4052164e89d93b64b060828e6f37ed1567914b284d2624
|
|
||||||
52282e3198720e274a939cd08a54f980ae38a38f56e422a3a641c8bbd048f7757da0f19b017cc524bd62107bd5001996509affb3fd381a89672f1f165dfe5141
|
|
||||||
73d9850528a2c6cce0239baa4c04ca5bbabac4df000000ffff0300504b01022d0014000600080000002100e9de0fbfff0000001c020000130000000000000000
|
|
||||||
0000000000000000005b436f6e74656e745f54797065735d2e786d6c504b01022d0014000600080000002100a5d6a7e7c0000000360100000b00000000000000
|
|
||||||
000000000000300100005f72656c732f2e72656c73504b01022d00140006000800000021006b799616830000008a0000001c0000000000000000000000000019
|
|
||||||
0200007468656d652f7468656d652f7468656d654d616e616765722e786d6c504b01022d001400060008000000210096b5ade296060000501b00001600000000
|
|
||||||
000000000000000000d60200007468656d652f7468656d652f7468656d65312e786d6c504b01022d00140006000800000021000dd1909fb60000001b01000027
|
|
||||||
00000000000000000000000000a00900007468656d652f7468656d652f5f72656c732f7468656d654d616e616765722e786d6c2e72656c73504b050600000000050005005d0100009b0a00000000}
|
|
||||||
{\*\colorschememapping 3c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d225554462d3822207374616e64616c6f6e653d22796573223f3e0d0a3c613a636c724d
|
|
||||||
617020786d6c6e733a613d22687474703a2f2f736368656d61732e6f70656e786d6c666f726d6174732e6f72672f64726177696e676d6c2f323030362f6d6169
|
|
||||||
6e22206267313d226c743122207478313d22646b3122206267323d226c743222207478323d22646b322220616363656e74313d22616363656e74312220616363
|
|
||||||
656e74323d22616363656e74322220616363656e74333d22616363656e74332220616363656e74343d22616363656e74342220616363656e74353d22616363656e74352220616363656e74363d22616363656e74362220686c696e6b3d22686c696e6b2220666f6c486c696e6b3d22666f6c486c696e6b222f3e}
|
|
||||||
{\*\latentstyles\lsdstimax267\lsdlockeddef0\lsdsemihiddendef1\lsdunhideuseddef1\lsdqformatdef0\lsdprioritydef99{\lsdlockedexcept \lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority0 \lsdlocked0 Normal;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 1;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 2;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 3;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 4;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 5;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 6;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 7;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 8;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority9 \lsdlocked0 heading 9;
|
|
||||||
\lsdpriority39 \lsdlocked0 toc 1;\lsdpriority39 \lsdlocked0 toc 2;\lsdpriority39 \lsdlocked0 toc 3;\lsdpriority39 \lsdlocked0 toc 4;\lsdpriority39 \lsdlocked0 toc 5;\lsdpriority39 \lsdlocked0 toc 6;\lsdpriority39 \lsdlocked0 toc 7;
|
|
||||||
\lsdpriority39 \lsdlocked0 toc 8;\lsdpriority39 \lsdlocked0 toc 9;\lsdqformat1 \lsdpriority35 \lsdlocked0 caption;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority10 \lsdlocked0 Title;\lsdpriority1 \lsdlocked0 Default Paragraph Font;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority11 \lsdlocked0 Subtitle;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority22 \lsdlocked0 Strong;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority20 \lsdlocked0 Emphasis;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority59 \lsdlocked0 Table Grid;\lsdunhideused0 \lsdlocked0 Placeholder Text;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority1 \lsdlocked0 No Spacing;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 1;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 1;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 1;\lsdunhideused0 \lsdlocked0 Revision;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority34 \lsdlocked0 List Paragraph;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority29 \lsdlocked0 Quote;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority30 \lsdlocked0 Intense Quote;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 1;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 1;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 1;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 2;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 2;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 2;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 2;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 2;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 2;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 3;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 3;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 3;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 3;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 3;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 3;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 4;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 4;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 4;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 4;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 4;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 5;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 5;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 5;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 5;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 5;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 5;\lsdsemihidden0 \lsdunhideused0 \lsdpriority60 \lsdlocked0 Light Shading Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority61 \lsdlocked0 Light List Accent 6;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority62 \lsdlocked0 Light Grid Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority63 \lsdlocked0 Medium Shading 1 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority64 \lsdlocked0 Medium Shading 2 Accent 6;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority65 \lsdlocked0 Medium List 1 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority66 \lsdlocked0 Medium List 2 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority67 \lsdlocked0 Medium Grid 1 Accent 6;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority68 \lsdlocked0 Medium Grid 2 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority69 \lsdlocked0 Medium Grid 3 Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority70 \lsdlocked0 Dark List Accent 6;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdpriority71 \lsdlocked0 Colorful Shading Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority72 \lsdlocked0 Colorful List Accent 6;\lsdsemihidden0 \lsdunhideused0 \lsdpriority73 \lsdlocked0 Colorful Grid Accent 6;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority19 \lsdlocked0 Subtle Emphasis;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority21 \lsdlocked0 Intense Emphasis;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority31 \lsdlocked0 Subtle Reference;\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority32 \lsdlocked0 Intense Reference;
|
|
||||||
\lsdsemihidden0 \lsdunhideused0 \lsdqformat1 \lsdpriority33 \lsdlocked0 Book Title;\lsdpriority37 \lsdlocked0 Bibliography;\lsdqformat1 \lsdpriority39 \lsdlocked0 TOC Heading;}}{\*\datastore 010500000200000018000000
|
|
||||||
4d73786d6c322e534158584d4c5265616465722e362e30000000000000000000004a0000
|
|
||||||
d0cf11e0a1b11ae1000000000000000000000000000000003e000300feff0900060000000000000000000000010000000100000000000000001000000200000001000000feffffff0000000000000000ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
|
||||||
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
|
||||||
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
|
||||||
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
|
||||||
fffffffffffffffffdffffff04000000feffffff050000000e000000060000000700000008000000090000000a0000000b0000000c0000000d0000000f000000110000001000000022000000feffffff130000001400000015000000160000001700000018000000190000001a0000001b0000001c0000001d0000001e00
|
|
||||||
00001f0000002000000021000000feffffff23000000feffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
|
||||||
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
|
||||||
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
|
||||||
ffffffffffffffffffffffffffffffff52006f006f007400200045006e00740072007900000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000500ffffffffffffffff010000000c6ad98892f1d411a65f0040963251e5000000000000000000000000a0ad
|
|
||||||
e83b9c14cc0103000000c01a0000000000004d0073006f004400610074006100530074006f0072006500000000000000000000000000000000000000000000000000000000000000000000000000000000001a000101ffffffffffffffff050000000000000000000000000000000000000000000000a0ade83b9c14cc01
|
|
||||||
a0ade83b9c14cc01000000000000000000000000c70053005a00db00c300dd004e00c300c800d40053003100c800420044005500d80059004600ca00430051003d003d000000000000000000000000000000000032000101ffffffffffffffff030000000000000000000000000000000000000000000000a0ade83b9c14
|
|
||||||
cc01a0ade83b9c14cc010000000000000000000000004900740065006d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000201ffffffff04000000ffffffff000000000000000000000000000000000000000000000000
|
|
||||||
00000000000000000000000000000000c100000000000000010000000200000003000000feffffff0500000006000000070000000800000009000000feffffff0b0000000c0000000d0000000e0000000f000000100000001100000012000000130000001400000015000000160000001700000018000000190000001a00
|
|
||||||
00001b0000001c0000001d0000001e0000001f000000200000002100000022000000230000002400000025000000260000002700000028000000290000002a0000002b0000002c0000002d0000002e0000002f00000030000000310000003200000033000000340000003500000036000000370000003800000039000000
|
|
||||||
3a0000003b0000003c0000003d0000003e0000003f00000040000000410000004200000043000000440000004500000046000000470000004800000049000000feffffff4b0000004c0000004d0000004e0000004f000000feffffff510000005200000053000000feffffff550000005600000057000000580000005900
|
|
||||||
0000feffffff5b0000005c0000005d0000005e0000005f000000600000006100000062000000630000006400000065000000660000006700000068000000690000006a000000feffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff
|
|
||||||
ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff3c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d227574662d3822207374616e64616c6f6e653d22796573223f3e3c44696374696f6e617279205361766564427956657273696f6e3d22332e362e31382e3022204d
|
|
||||||
696e696d756d56657273696f6e3d22332e362e342e302220786d6c6e733d22687474703a2f2f736368656d61732e627573696e6573732d696e746567726974792e636f6d2f6465616c6275696c6465722f323030362f64696374696f6e617279222f3e000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000000000003c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d225554462d3822207374616e64616c6f6e653d226e6f223f3e0d0a3c64733a6461746173746f72654974656d2064733a6974656d49443d227b38463742
|
|
||||||
323639442d363344332d343441332d394241302d3130443445313831364130397d2220786d6c6e733a64733d22687474703a2f2f736368656d61732e6f70656e786d6c666f726d6174732e6f72672f6f6666696365446f63756d656e742f323030362f637573746f6d586d6c223e3c64733a736368656d61526566733e3c
|
|
||||||
64733a736368656d615265662064733a7572693d22687474703a2f2f736368656d61732e62757369500072006f007000650072007400690065007300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000200ffffffffffffffffffffffff000000000000
|
|
||||||
000000000000000000000000000000000000000000000000000000000000040000005401000000000000ce00c90032004a0031005500d600cd004a00c4003400d500db00d8005900d3005800450045004100440041003d003d00000000000000000000000000000000003200010102000000080000000600000000000000
|
|
||||||
00000000000000000000000000000000a0ade83b9c14cc01a0ade83b9c14cc010000000000000000000000004900740065006d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000201ffffffff07000000ffffffff0000
|
|
||||||
000000000000000000000000000000000000000000000000000000000000000000000a000000f50f000000000000500072006f007000650072007400690065007300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000200ffffffffffffffffffffffff
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000000000004a00000051010000000000006e6573732d696e746567726974792e636f6d2f6465616c6275696c6465722f323030362f64696374696f6e617279222f3e3c2f64733a736368656d61526566733e3c2f64733a6461746173746f72
|
|
||||||
654974656d3e00000000000000000000000000000000000000000000000000000000000000000000000000000000000000003c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d227574662d3822207374616e64616c6f6e653d22796573223f3e3c53657373696f6e20786d6c6e733d22687474703a
|
|
||||||
2f2f736368656d61732e627573696e6573732d696e746567726974792e636f6d2f6465616c6275696c6465722f323030362f616e7377657273223e3c5661726961626c65204e616d653d22636f6e74726163747265666572656e6365222052656c6576616e743d2266616c7365223e3c56616c75653e323031302d4d4149
|
|
||||||
4e422d3030313031333c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d226d73636f6d223e3c56616c75653e66616c73653c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d2266696c6574797065223e3c56616c75653e2e7274663c2f56616c7565
|
|
||||||
3e3c2f5661726961626c653e3c5661726961626c65204e616d653d226c616e6775616765616c6c223e3c56616c75653e456e676c6973683c2f56616c75653e3c56616c75653e4368696e657365202853696d706c6966696564293c2f56616c75653e3c56616c75653e4368696e6573652028547261646974696f6e616c29
|
|
||||||
3c2f56616c75653e3c56616c75653e437a6563683c2f56616c75653e3c56616c75653e4672656e63683c2f56616c75653e3c56616c75653e4765726d616e3c2f56616c75653e3c56616c75653e4974616c69616e3c2f56616c75653e3c56616c75653e4a6170616e6573653c2f56616c75653e3c56616c75653e4b6f7265
|
|
||||||
616e3c2f56616c75653e3c56616c75653e506f6c6973683c2f56616c75653e3c56616c75653e506f727475677565736520284272617a696c293c2f56616c75653e3c56616c75653e5275737369616e3c2f56616c75653e3c56616c75653e5370616e6973683c2f56616c75653e3c56616c75653e5475726b6973683c2f56
|
|
||||||
616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d225f5f72657175657374646967657374222052656c6576616e743d2266616c7365223e3c56616c75653e3078464532363934364137393337363741383635383139334236383646353743433745453838394237353842444536304337444435
|
|
||||||
39313644303831354244424344374335363534444137353735353430323832393342384331414345463833393630344143344634383342454533313330394235394442384434393734454335322c30392044656320323031302032323a32323a3430202d303030303c2f56616c75653e3c2f5661726961626c653e3c5661
|
|
||||||
726961626c65204e616d653d225f5f6576656e7476616c69646174696f6e222052656c6576616e743d2266616c7365223e3c56616c75653e2f77455741674b4f3239697043414c623449756d444c2b75437032397970624e71637a6d5230493767414e52424e67333c2f56616c75653e3c2f5661726961626c653e3c5661
|
|
||||||
726961626c65204e616d653d2263746c303024706c616365686f6c6465726d61696e24686663657370636f6e74726163747265666572656e6365222052656c6576616e743d2266616c7365223e3c56616c75653e323031302d4d41494e422d3030313031333c2f56616c75653e3c2f5661726961626c653e3c5661726961
|
|
||||||
626c65204e616d653d2263616e616461617661696c223e3c56616c75653e747275653c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d2263616e6164616672656e6368223e3c56616c75653e747275653c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d
|
|
||||||
653d2266696c65666f726d6174223e3c56616c75653e66616c73653c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d22736f66747761726574797065223e3c56616c75653e467265652c205374616e64616c6f6e6520536f6674776172653c2f56616c75653e3c2f5661726961626c65
|
|
||||||
3e3c5661726961626c65204e616d653d2270726f647563746e616d65223e3c56616c75653e53514c2053657276657220436f6d7061637420342e303c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d226e756d6265726f66636f70696573223e3c56616c75653e416e79206e756d6265
|
|
||||||
72206f6620636f706965733c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d2270726f6475637476657273696f6e223e3c56616c75653e4e6f6e653c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d2276657273696f6e76697369626c65223e3c56
|
|
||||||
616c75653e66616c73653c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d226368616e6e656c223e3c56616c75653e52657461696c3c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d227374616e64616c6f6e657573657269676874223e3c56616c
|
|
||||||
75653e4f6e6c7920746f2064657369676e2c20646576656c6f7020616e64207465737420746865207573657227732070726f6772616d733c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d226d65646961656c656d656e747374656d706c61746573223e3c56616c75653e66616c7365
|
|
||||||
3c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d2264697374726962757461626c65636f6465223e3c56616c75653e747275653c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d2264697374726962757461626c65636f646574797065223e3c5661
|
|
||||||
6c75653e5265646973742e7478743c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d227265646973747478746f6e6c696e65223e3c56616c75653e66616c73653c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d22696e7465726e616c7265617373
|
|
||||||
69676e6d656e74223e3c56616c75653e66616c73653c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d226c6963656e73657472616e73666572223e3c56616c75653e66616c73653c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d226f746865726d
|
|
||||||
6963726f736f667470726f6772616d73223e3c56616c75653e747275653c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d226e65746672616d65776f726b223e3c56616c75653e66616c73653c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d226f
|
|
||||||
746865726d6963726f736f667470726f6772616d737465726d73223e3c56616c75653e546865207365706172617465206c6963656e7365207465726d73206173736f636961746564207769746820746865206f74686572204d6963726f736f66742070726f6772616d733c2f56616c75653e3c2f5661726961626c653e3c
|
|
||||||
5661726961626c65204e616d653d2270726572656c65617365636f6465223e3c56616c75653e66616c73653c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d227468697264706172747970726f6772616d73223e3c56616c75653e66616c73653c2f56616c75653e3c2f566172696162
|
|
||||||
6c653e3c5661726961626c65204e616d653d2262656e63686d61726b696e67223e3c56616c75653e66616c73653c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d226d706567223e3c56616c75653e66616c73653c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65
|
|
||||||
204e616d653d22696e7465726e657462617365647365727669636573223e3c56616c75653e66616c73653c2f56616c75653e3c2f5661726961626c653e3c5661726961626c65204e616d653d225f5f6576656e7474617267657422204b6e6f776e3d2266616c7365222052656c6576616e743d2266616c7365222f3e3c56
|
|
||||||
61726961626c65204e616d653d225f5f6576656e74617267756d656e7422204b6e6f776e3d2266616c7365222052656c6576616e743d2266616c7365222f3e3c5661726961626c65204e616d653d226c61756e6368646976616374696f6e22204b6e6f776e3d2266616c7365222052656c6576616e743d2266616c736522
|
|
||||||
2f3e3c5661726961626c65204e616d653d225f5f737064756d6d79746578743122204b6e6f776e3d2266616c7365222052656c6576616e743d2266616c7365222f3e3c5661726961626c65204e616d653d225f5f737064756d6d79746578743222204b6e6f776e3d2266616c7365222052656c6576616e743d2266616c73
|
|
||||||
65222f3e3c5661726961626c65204e616d653d226f726967696e61746f72223e3c56616c75653e5245444d4f4e445c64636f7265793c2f56616c75653e3c2f5661726961626c653e3c506172616d65746572204e616d653d2264625f646973706c61795f616c6c5f636f6d6d656e7473223e3c56616c75653e66616c7365
|
|
||||||
3c2f56616c75653e3c2f506172616d657465723e3c506172616d65746572204e616d653d2264625f73686f775f73756d6d617279223e3c56616c75653e64697361626c65643c2f56616c75653e3c2f506172616d657465723e3c506172616d65746572204e616d653d2264625f74656d706c6174655f666f726d223e3c56
|
|
||||||
616c75653e35323032636439312d396439322d343338612d386637642d3630613864313464336162303c2f56616c75653e3c2f506172616d657465723e3c506172616d65746572204e616d653d2264625f74656d706c6174655f7265666572656e6365223e3c56616c75653e5553455445524d535f4d41494e423c2f5661
|
|
||||||
6c75653e3c2f506172616d657465723e3c506172616d65746572204e616d653d2264625f74656d706c6174655f76657273696f6e223e3c56616c75653e32303130313130393c2f56616c75653e3c2f506172616d657465723e3c506172616d65746572204e616d653d2264625f7472616e73616374696f6e5f6578746572
|
|
||||||
6e616c5f6c6162656c223e3c56616c75653e323031302d4d41494e422d3030313031333c2f56616c75653e3c2f506172616d657465723e3c506172616d65746572204e616d653d2264625f7472616e73616374696f6e5f6964223e3c56616c75653e333432323c2f56616c75653e3c2f506172616d657465723e3c506172
|
|
||||||
616d65746572204e616d653d2264625f766973697465645f7061676573223e3c56616c75653e313c2f56616c75653e3c56616c75653e323c2f56616c75653e3c56616c75653e333c2f56616c75653e3c56616c75653e343c2f56616c75653e3c56616c75653e363c2f56616c75653e3c56616c75653e373c2f56616c7565
|
|
||||||
3e3c56616c75653e313c2f56616c75653e3c56616c75653e323c2f56616c75653e3c56616c75653e333c2f56616c75653e3c56616c75653e313c2f56616c75653e3c56616c75653e313c2f56616c75653e3c2f506172616d657465723e3c2f53657373696f6e3e00000000000000000000003c3f786d6c2076657273696f
|
|
||||||
6e3d22312e302220656e636f64696e673d225554462d3822207374616e64616c6f6e653d226e6f223f3e0d0a3c64733a6461746173746f72654974656d2064733a6974656d49443d227b36443039393742412d414434442d343732362d423545462d3836333335433431303030437d2220786d6c6e733a64733d22687474
|
|
||||||
703a2f2f736368656d61732e6f70656e786d6c666f726d6174732e6f72672f6f6666696365446f63756d656e742f323030362f637573746f6d586d6c223e3c64733a736368656d61526566733e3c64733a736368656d615265662064733a7572693d22687474703a2f2f736368656d61732e627573696e6573732d696e74
|
|
||||||
6567726974792e636f6d2f6465616c6275696c6465722f323030362f616e7377657273222f3e3c2f64733a736368656d61526566733e3c2f64733a6461746173746f72654974656d3e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d100c7003500
|
|
||||||
c3004700c200c400d50056005500ca00dc00c600d30051004a004a003200dd00c600320041003d003d000000000000000000000000000000000032000101ffffffff0b000000090000000000000000000000000000000000000000000000a0ade83b9c14cc01a0ade83b9c14cc0100000000000000000000000049007400
|
|
||||||
65006d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000201ffffffff0a000000ffffffff00000000000000000000000000000000000000000000000000000000000000000000000050000000db000000000000005000
|
|
||||||
72006f007000650072007400690065007300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000200ffffffffffffffffffffffff000000000000000000000000000000000000000000000000000000000000000000000000540000004f01000000000000
|
|
||||||
d300c300d4004f005600d400c000440034005500ce00df004400ce005a005100c100df0034005400550051003d003d000000000000000000000000000000000032000100ffffffffffffffff0c0000000000000000000000000000000000000000000000a0ade83b9c14cc01a0ade83b9c14cc0100000000000000000000
|
|
||||||
00003c3f6d736f2d636f6e74656e74547970653f3e3c466f726d54656d706c6174657320786d6c6e733d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f7368617265706f696e742f76332f636f6e74656e74747970652f666f726d73223e3c446973706c61793e446f63756d656e744c696272
|
|
||||||
617279466f726d3c2f446973706c61793e3c456469743e446f63756d656e744c696272617279466f726d3c2f456469743e3c4e65773e446f63756d656e744c696272617279466f726d3c2f4e65773e3c2f466f726d54656d706c617465733e00000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000003c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d225554462d3822207374616e64616c6f6e653d226e6f223f3e0d0a3c64733a6461746173746f72654974656d2064733a6974656d49443d227b31414533373743362d333532392d344135352d424339422d33343039323543463636
|
|
||||||
37307d2220786d6c6e733a64733d22687474703a2f2f736368656d61732e6f70656e786d6c666f726d6174732e6f72672f6f6666696365446f63756d656e742f323030362f637573746f6d586d6c223e3c64733a736368656d61526566733e3c64733a736368656d615265662064733a7572693d22687474703a2f2f7363
|
|
||||||
68656d61732e6d6963726f736f66742e636f6d2f7368617265706f696e742f76332f636f6e74656e74747970652f666f726d73222f3e3c2f64733a736368656d61526566733e3c2f64733a6461746173746f72654974656d3e00000000000000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000003c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d225554462d3822207374616e64616c6f6e653d226e6f223f3e0d0a3c64733a6461746173746f72654974656d2064733a6974656d49443d227b35373045334443452d303334382d344237392d424630452d45363530
|
|
||||||
38374637393335317d2220786d6c6e733a64733d22687474703a2f2f736368656d61732e6f70656e786d6c666f726d6174732e6f72672f6f6666696365446f63756d656e742f323030362f637573746f6d586d6c223e3c64733a736368656d61526566733e3c64733a736368656d615265662064733a7572693d22687474
|
|
||||||
703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f323030362f6d657461646174612f636f6e74656e7454797065222f3e3c64733a736368656d615265662064733a7572693d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f323030362f6d65
|
|
||||||
7461646174612f70726f706572746965732f4900740065006d0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a000201ffffffff0d000000ffffffff00000000000000000000000000000000000000000000000000000000
|
|
||||||
000000000000000012000000761f000000000000500072006f007000650072007400690065007300000000000000000000000000000000000000000000000000000000000000000000000000000000000000000016000200ffffffffffffffffffffffff0000000000000000000000000000000000000000000000000000
|
|
||||||
000000000000000000005a00000004040000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff000000000000000000000000000000000000000000000000
|
|
||||||
0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000ffffffffffffffffffffffff00000000000000000000000000000000000000000000
|
|
||||||
00000000000000000000000000000000000000000000000000003c3f786d6c2076657273696f6e3d22312e302220656e636f64696e673d227574662d38223f3e3c63743a636f6e74656e7454797065536368656d612063743a5f3d2222206d613a5f3d2222206d613a636f6e74656e74547970654e616d653d22446f6375
|
|
||||||
6d656e7422206d613a636f6e74656e745479706549443d223078303130313030424441314136413232304134304134313945464239453539313741434336414422206d613a636f6e74656e745479706556657273696f6e3d22313722206d613a636f6e74656e74547970654465736372697074696f6e3d22437265617465
|
|
||||||
2061206e657720646f63756d656e742e22206d613a636f6e74656e745479706553636f70653d2222206d613a76657273696f6e49443d2266343736346339666166646632336436653035343862333630623130346130332220786d6c6e733a63743d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f
|
|
||||||
6d2f6f66666963652f323030362f6d657461646174612f636f6e74656e74547970652220786d6c6e733a6d613d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f323030362f6d657461646174612f70726f706572746965732f6d65746141747472696275746573223e0d0a3c
|
|
||||||
7873643a736368656d61207461726765744e616d6573706163653d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f323030362f6d657461646174612f70726f7065727469657322206d613a726f6f743d227472756522206d613a6669656c647349443d223732326565636431
|
|
||||||
63363230323961373830386363653964376530623264396522206e73323a5f3d222220786d6c6e733a7873643d22687474703a2f2f7777772e77332e6f72672f323030312f584d4c536368656d612220786d6c6e733a703d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f32
|
|
||||||
3030362f6d657461646174612f70726f706572746965732220786d6c6e733a6e73323d2235616265626439612d376264662d343438322d393437632d633333353535323462663833223e0d0a3c7873643a696d706f7274206e616d6573706163653d2235616265626439612d376264662d343438322d393437632d633333
|
|
||||||
353535323462663833222f3e0d0a3c7873643a656c656d656e74206e616d653d2270726f70657274696573223e0d0a3c7873643a636f6d706c6578547970653e0d0a3c7873643a73657175656e63653e0d0a3c7873643a656c656d656e74206e616d653d22646f63756d656e744d616e6167656d656e74223e0d0a3c7873
|
|
||||||
643a636f6d706c6578547970653e0d0a3c7873643a616c6c3e0d0a3c7873643a656c656d656e74207265663d226e73323a4368616e6e656c222f3e0d0a3c7873643a656c656d656e74207265663d226e73323a4f726967696e61746f72222f3e0d0a3c7873643a656c656d656e74207265663d226e73323a50726f647563
|
|
||||||
744e616d6522206d696e4f63637572733d2230222f3e0d0a3c7873643a656c656d656e74207265663d226e73323a50726f6475637456657273696f6e22206d696e4f63637572733d2230222f3e0d0a3c7873643a656c656d656e74207265663d226e73323a5075626c6973684461746522206d696e4f63637572733d2230
|
|
||||||
222f3e0d0a3c7873643a656c656d656e74207265663d226e73323a5265746972656d656e744461746522206d696e4f63637572733d2230222f3e0d0a3c7873643a656c656d656e74207265663d226e73323a536f6674776172655479706522206d696e4f63637572733d2230222f3e0d0a3c7873643a656c656d656e7420
|
|
||||||
7265663d226e73323a4d53636f6d22206d696e4f63637572733d2230222f3e0d0a3c7873643a656c656d656e74207265663d226e73323a53746174757322206d696e4f63637572733d2230222f3e0d0a3c7873643a656c656d656e74207265663d226e73323a4c6963656e73654d6f64656c22206d696e4f63637572733d
|
|
||||||
2230222f3e0d0a3c7873643a656c656d656e74207265663d226e73323a50726f64756374494422206d696e4f63637572733d2230222f3e0d0a3c7873643a656c656d656e74207265663d226e73323a4f776e657222206d696e4f63637572733d2230222f3e0d0a3c7873643a656c656d656e74207265663d226e73323a4c
|
|
||||||
616e677561676522206d696e4f63637572733d2230222f3e0d0a3c7873643a656c656d656e74207265663d226e73323a46696c6554797065222f3e0d0a3c2f7873643a616c6c3e0d0a3c2f7873643a636f6d706c6578547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c2f7873643a73657175656e63653e0d0a
|
|
||||||
3c2f7873643a636f6d706c6578547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c2f7873643a736368656d613e0d0a3c7873643a736368656d61207461726765744e616d6573706163653d2235616265626439612d376264662d343438322d393437632d6333333535353234626638332220656c656d656e7446
|
|
||||||
6f726d44656661756c743d227175616c69666965642220786d6c6e733a7873643d22687474703a2f2f7777772e77332e6f72672f323030312f584d4c536368656d612220786d6c6e733a646d733d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f323030362f646f63756d65
|
|
||||||
6e744d616e6167656d656e742f7479706573223e0d0a3c7873643a696d706f7274206e616d6573706163653d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f323030362f646f63756d656e744d616e6167656d656e742f7479706573222f3e0d0a3c7873643a656c656d656e
|
|
||||||
74206e616d653d224368616e6e656c22206d613a696e6465783d223822206d613a646973706c61794e616d653d224368616e6e656c22206d613a696e7465726e616c4e616d653d224368616e6e656c223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374696f6e20626173653d22646d
|
|
||||||
733a54657874223e0d0a3c7873643a6d61784c656e6774682076616c75653d22323535222f3e0d0a3c2f7873643a7265737472696374696f6e3e0d0a3c2f7873643a73696d706c65547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d224f726967696e61746f722220
|
|
||||||
6d613a696e6465783d223922206d613a646973706c61794e616d653d224f726967696e61746f7222206d613a696e7465726e616c4e616d653d224f726967696e61746f72223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374696f6e20626173653d22646d733a54657874223e0d0a3c
|
|
||||||
7873643a6d61784c656e6774682076616c75653d22323535222f3e0d0a3c2f7873643a7265737472696374696f6e3e0d0a3c2f7873643a73696d706c65547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d2250726f647563744e616d6522206d613a696e6465783d22
|
|
||||||
313022206e696c6c61626c653d227472756522206d613a646973706c61794e616d653d2250726f647563744e616d6522206d613a64656661756c743d2222206d613a696e7465726e616c4e616d653d2250726f647563744e616d65223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374
|
|
||||||
696f6e20626173653d22646d733a4e6f7465222f3e0d0a3c2f7873643a73696d706c65547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d2250726f6475637456657273696f6e22206d613a696e6465783d22313122206e696c6c61626c653d227472756522206d613a
|
|
||||||
646973706c61794e616d653d2250726f6475637456657273696f6e22206d613a696e7465726e616c4e616d653d2250726f6475637456657273696f6e223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374696f6e20626173653d22646d733a54657874223e0d0a3c7873643a6d61784c
|
|
||||||
656e6774682076616c75653d22323535222f3e0d0a3c2f7873643a7265737472696374696f6e3e0d0a3c2f7873643a73696d706c65547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d225075626c6973684461746522206d613a696e6465783d22313222206e696c6c
|
|
||||||
61626c653d227472756522206d613a646973706c61794e616d653d225075626c6973684461746522206d613a666f726d61743d22446174654f6e6c7922206d613a696e7465726e616c4e616d653d225075626c69736844617465223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a726573747269637469
|
|
||||||
6f6e20626173653d22646d733a4461746554696d65222f3e0d0a3c2f7873643a73696d706c65547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d225265746972656d656e744461746522206d613a696e6465783d22313322206e696c6c61626c653d22747275652220
|
|
||||||
6d613a646973706c61794e616d653d225265746972656d656e744461746522206d613a666f726d61743d22446174654f6e6c7922206d613a696e7465726e616c4e616d653d225265746972656d656e7444617465223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374696f6e20626173
|
|
||||||
653d22646d733a4461746554696d65222f3e0d0a3c2f7873643a73696d706c65547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d22536f6674776172655479706522206d613a696e6465783d22313422206e696c6c61626c653d227472756522206d613a646973706c
|
|
||||||
61794e616d653d22536f6674776172655479706522206d613a696e7465726e616c4e616d653d22536f66747761726554797065223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374696f6e20626173653d22646d733a54657874223e0d0a3c7873643a6d61784c656e6774682076616c
|
|
||||||
75653d22323535222f3e0d0a3c2f7873643a7265737472696374696f6e3e0d0a3c2f7873643a73696d706c65547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d224d53636f6d22206d613a696e6465783d22313522206e696c6c61626c653d227472756522206d613a
|
|
||||||
646973706c61794e616d653d224d53636f6d22206d613a64656661756c743d223122206d613a696e7465726e616c4e616d653d224d53636f6d223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374696f6e20626173653d22646d733a426f6f6c65616e222f3e0d0a3c2f7873643a7369
|
|
||||||
6d706c65547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d2253746174757322206d613a696e6465783d22313622206e696c6c61626c653d227472756522206d613a646973706c61794e616d653d2253746174757322206d613a696e7465726e616c4e616d653d2253
|
|
||||||
7461747573223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374696f6e20626173653d22646d733a54657874223e0d0a3c7873643a6d61784c656e6774682076616c75653d22323535222f3e0d0a3c2f7873643a7265737472696374696f6e3e0d0a3c2f7873643a73696d706c655479
|
|
||||||
70653e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d224c6963656e73654d6f64656c22206d613a696e6465783d22313722206e696c6c61626c653d227472756522206d613a646973706c61794e616d653d224c6963656e73654d6f64656c22206d613a696e7465726e616c4e
|
|
||||||
616d653d224c6963656e73654d6f64656c223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374696f6e20626173653d22646d733a54657874223e0d0a3c7873643a6d61784c656e6774682076616c75653d22323535222f3e0d0a3c2f7873643a7265737472696374696f6e3e0d0a3c2f
|
|
||||||
7873643a73696d706c65547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d2250726f64756374494422206d613a696e6465783d22313822206e696c6c61626c653d227472756522206d613a646973706c61794e616d653d2250726f64756374494422206d613a696e74
|
|
||||||
65726e616c4e616d653d2250726f647563744944223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374696f6e20626173653d22646d733a54657874223e0d0a3c7873643a6d61784c656e6774682076616c75653d22323535222f3e0d0a3c2f7873643a7265737472696374696f6e3e0d
|
|
||||||
0a3c2f7873643a73696d706c65547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d224f776e657222206d613a696e6465783d22313922206e696c6c61626c653d227472756522206d613a646973706c61794e616d653d224f776e657222206d613a696e7465726e616c
|
|
||||||
4e616d653d224f776e6572223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374696f6e20626173653d22646d733a54657874223e0d0a3c7873643a6d61784c656e6774682076616c75653d22323535222f3e0d0a3c2f7873643a7265737472696374696f6e3e0d0a3c2f7873643a7369
|
|
||||||
6d706c65547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d224c616e677561676522206d613a696e6465783d22323022206e696c6c61626c653d227472756522206d613a646973706c61794e616d653d224c616e677561676522206d613a696e7465726e616c4e616d
|
|
||||||
653d224c616e6775616765223e0d0a3c7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374696f6e20626173653d22646d733a54657874223e0d0a3c7873643a6d61784c656e6774682076616c75653d22323535222f3e0d0a3c2f7873643a7265737472696374696f6e3e0d0a3c2f7873643a7369
|
|
||||||
6d706c65547970653e0d0a3c2f7873643a656c656d656e743e0d0a3c7873643a656c656d656e74206e616d653d2246696c655479706522206d613a696e6465783d22323122206d613a646973706c61794e616d653d2246696c655479706522206d613a696e7465726e616c4e616d653d2246696c6554797065223e0d0a3c
|
|
||||||
7873643a73696d706c65547970653e0d0a3c7873643a7265737472696374696f6e20626173653d22646d733a54657874223e0d0a3c7873643a6d61784c656e6774682076616c75653d22323535222f3e0d0a3c2f7873643a7265737472696374696f6e3e0d0a3c2f7873643a73696d706c65547970653e0d0a3c2f787364
|
|
||||||
3a656c656d656e743e0d0a3c2f7873643a736368656d613e0d0a3c7873643a736368656d61207461726765744e616d6573706163653d22687474703a2f2f736368656d61732e6f70656e786d6c666f726d6174732e6f72672f7061636b6167652f323030362f6d657461646174612f636f72652d70726f70657274696573
|
|
||||||
2220656c656d656e74466f726d44656661756c743d227175616c69666965642220617474726962757465466f726d44656661756c743d22756e7175616c69666965642220626c6f636b44656661756c743d2223616c6c2220786d6c6e733d22687474703a2f2f736368656d61732e6f70656e786d6c666f726d6174732e6f
|
|
||||||
72672f7061636b6167652f323030362f6d657461646174612f636f72652d70726f706572746965732220786d6c6e733a7873643d22687474703a2f2f7777772e77332e6f72672f323030312f584d4c536368656d612220786d6c6e733a7873693d22687474703a2f2f7777772e77332e6f72672f323030312f584d4c5363
|
|
||||||
68656d612d696e7374616e63652220786d6c6e733a64633d22687474703a2f2f7075726c2e6f72672f64632f656c656d656e74732f312e312f2220786d6c6e733a64637465726d733d22687474703a2f2f7075726c2e6f72672f64632f7465726d732f2220786d6c6e733a6f646f633d22687474703a2f2f736368656d61
|
|
||||||
732e6d6963726f736f66742e636f6d2f6f66666963652f696e7465726e616c2f323030352f696e7465726e616c446f63756d656e746174696f6e223e0d0a3c7873643a696d706f7274206e616d6573706163653d22687474703a2f2f7075726c2e6f72672f64632f656c656d656e74732f312e312f2220736368656d614c
|
|
||||||
6f636174696f6e3d22687474703a2f2f6475626c696e636f72652e6f72672f736368656d61732f786d6c732f7164632f323030332f30342f30322f64632e787364222f3e0d0a3c7873643a696d706f7274206e616d6573706163653d22687474703a2f2f7075726c2e6f72672f64632f7465726d732f2220736368656d61
|
|
||||||
4c6f636174696f6e3d22687474703a2f2f6475626c696e636f72652e6f72672f736368656d61732f786d6c732f7164632f323030332f30342f30322f64637465726d732e787364222f3e0d0a3c7873643a656c656d656e74206e616d653d22636f726550726f706572746965732220747970653d2243545f636f72655072
|
|
||||||
6f70657274696573222f3e0d0a3c7873643a636f6d706c657854797065206e616d653d2243545f636f726550726f70657274696573223e0d0a3c7873643a616c6c3e0d0a3c7873643a656c656d656e74207265663d2264633a63726561746f7222206d696e4f63637572733d223022206d61784f63637572733d2231222f
|
|
||||||
3e0d0a3c7873643a656c656d656e74207265663d2264637465726d733a6372656174656422206d696e4f63637572733d223022206d61784f63637572733d2231222f3e0d0a3c7873643a656c656d656e74207265663d2264633a6964656e74696669657222206d696e4f63637572733d223022206d61784f63637572733d
|
|
||||||
2231222f3e0d0a3c7873643a656c656d656e74206e616d653d22636f6e74656e745479706522206d696e4f63637572733d223022206d61784f63637572733d22312220747970653d227873643a737472696e6722206d613a696e6465783d223022206d613a646973706c61794e616d653d22436f6e74656e742054797065
|
|
||||||
22206d613a726561644f6e6c793d2274727565222f3e0d0a3c7873643a656c656d656e74207265663d2264633a7469746c6522206d696e4f63637572733d223022206d61784f63637572733d223122206d613a696e6465783d223422206d613a646973706c61794e616d653d225469746c65222f3e0d0a3c7873643a656c
|
|
||||||
656d656e74207265663d2264633a7375626a65637422206d696e4f63637572733d223022206d61784f63637572733d2231222f3e0d0a3c7873643a656c656d656e74207265663d2264633a6465736372697074696f6e22206d696e4f63637572733d223022206d61784f63637572733d2231222f3e0d0a3c7873643a656c
|
|
||||||
656d656e74206e616d653d226b6579776f72647322206d696e4f63637572733d223022206d61784f63637572733d22312220747970653d227873643a737472696e67222f3e0d0a3c7873643a656c656d656e74207265663d2264633a6c616e677561676522206d696e4f63637572733d223022206d61784f63637572733d
|
|
||||||
2231222f3e0d0a3c7873643a656c656d656e74206e616d653d2263617465676f727922206d696e4f63637572733d223022206d61784f63637572733d22312220747970653d227873643a737472696e67222f3e0d0a3c7873643a656c656d656e74206e616d653d2276657273696f6e22206d696e4f63637572733d223022
|
|
||||||
206d61784f63637572733d22312220747970653d227873643a737472696e67222f3e0d0a3c7873643a656c656d656e74206e616d653d227265766973696f6e22206d696e4f63637572733d223022206d61784f63637572733d22312220747970653d227873643a737472696e67223e0d0a3c7873643a616e6e6f74617469
|
|
||||||
6f6e3e0d0a3c7873643a646f63756d656e746174696f6e3e0d0a202020202020202020202020202020202020202020202020546869732076616c756520696e6469636174657320746865206e756d626572206f66207361766573206f72207265766973696f6e732e20546865206170706c69636174696f6e206973207265
|
|
||||||
73706f6e7369626c6520666f72207570646174696e6720746869732076616c75652061667465722065616368207265766973696f6e2e0d0a20202020202020202020202020202020202020203c2f7873643a646f63756d656e746174696f6e3e0d0a3c2f7873643a616e6e6f746174696f6e3e0d0a3c2f7873643a656c65
|
|
||||||
6d656e743e0d0a3c7873643a656c656d656e74206e616d653d226c6173744d6f646966696564427922206d696e4f63637572733d223022206d61784f63637572733d22312220747970653d227873643a737472696e67222f3e0d0a3c7873643a656c656d656e74207265663d2264637465726d733a6d6f64696669656422
|
|
||||||
206d696e4f63637572733d223022206d61784f63637572733d2231222f3e0d0a3c7873643a656c656d656e74206e616d653d226c6173745072696e74656422206d696e4f63637572733d223022206d61784f63637572733d22312220747970653d227873643a6461746554696d65222f3e0d0a3c7873643a656c656d656e
|
|
||||||
74206e616d653d22636f6e74656e7453746174757322206d696e4f63637572733d223022206d61784f63637572733d22312220747970653d227873643a737472696e67222f3e0d0a3c2f7873643a616c6c3e0d0a3c2f7873643a636f6d706c6578547970653e0d0a3c2f7873643a736368656d613e0d0a3c2f63743a636f
|
|
||||||
6e74656e7454797065536368656d613e0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
000000000000000000000000000000000000000000000000000000006d65746141747472696275746573222f3e3c64733a736368656d615265662064733a7572693d22687474703a2f2f7777772e77332e6f72672f323030312f584d4c536368656d61222f3e3c64733a736368656d615265662064733a7572693d226874
|
|
||||||
74703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f323030362f6d657461646174612f70726f70657274696573222f3e3c64733a736368656d615265662064733a7572693d2235616265626439612d376264662d343438322d393437632d633333353535323462663833222f3e3c64733a
|
|
||||||
736368656d615265662064733a7572693d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f323030362f646f63756d656e744d616e6167656d656e742f7479706573222f3e3c64733a736368656d615265662064733a7572693d22687474703a2f2f736368656d61732e6f7065
|
|
||||||
6e786d6c666f726d6174732e6f72672f7061636b6167652f323030362f6d657461646174612f636f72652d70726f70657274696573222f3e3c64733a736368656d615265662064733a7572693d22687474703a2f2f7075726c2e6f72672f64632f656c656d656e74732f312e312f222f3e3c64733a736368656d61526566
|
|
||||||
2064733a7572693d22687474703a2f2f7075726c2e6f72672f64632f7465726d732f222f3e3c64733a736368656d615265662064733a7572693d22687474703a2f2f736368656d61732e6d6963726f736f66742e636f6d2f6f66666963652f696e7465726e616c2f323030352f696e7465726e616c446f63756d656e7461
|
|
||||||
74696f6e222f3e3c2f64733a736368656d61526566733e3c2f64733a6461746173746f72654974656d3e000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
|
|
||||||
00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000105000000000000}}
|
|
Binary file not shown.
Binary file not shown.
|
@ -1,3 +0,0 @@
|
||||||
param($installPath, $toolsPath, $package, $project)
|
|
||||||
$project.Object.References.Add("System.Transactions") | Out-Null
|
|
||||||
$project.Object.References.Add("System.Data.Entity") | Out-Null
|
|
Binary file not shown.
|
@ -1,7 +0,0 @@
|
||||||
<?xml version="1.0" encoding="utf-8" ?>
|
|
||||||
<configuration>
|
|
||||||
<configSections>
|
|
||||||
<section name="exceptron" type="Exceptron.Client.Configuration.ExceptronConfiguration,Exceptron.Client" />
|
|
||||||
</configSections>
|
|
||||||
<exceptron apiKey="YOUR_EXCEPTRON_API_KEY" throwExceptions="true" includeMachineName="true"/>
|
|
||||||
</configuration>
|
|
Binary file not shown.
|
@ -1,351 +0,0 @@
|
||||||
<?xml version="1.0"?>
|
|
||||||
<doc>
|
|
||||||
<assembly>
|
|
||||||
<name>Exceptron.Client</name>
|
|
||||||
</assembly>
|
|
||||||
<members>
|
|
||||||
<member name="P:Exceptron.Client.Configuration.ExceptronConfiguration.Host">
|
|
||||||
<summary>
|
|
||||||
exceptron api address. Do not modify this property.
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.Configuration.ExceptronConfiguration.ThrowExceptions">
|
|
||||||
<summary>
|
|
||||||
If ExceptronClinet should throw exceptions in case of an error. Default: <see cref="!:bool.False"/>
|
|
||||||
</summary>
|
|
||||||
<remarks>
|
|
||||||
Its recommended that this flag is set to True during development and <see cref="!:bool.False"/> in production systems.
|
|
||||||
If an exception is thrown while this flag is set to <see cref="!:bool.False"/> the thrown exception will be returned in <see cref="P:Exceptron.Client.Message.ExceptionResponse.Exception"/>
|
|
||||||
</remarks>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.Configuration.ExceptronConfiguration.ApiKey">
|
|
||||||
<summary>
|
|
||||||
The API of this application. Can find your API key in application settings page.
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.Configuration.ExceptronConfiguration.IncludeMachineName">
|
|
||||||
<summary>
|
|
||||||
If the machine name should be attached to the exception report
|
|
||||||
</summary>
|
|
||||||
<remarks>Machine name can be usefull in webfarm enviroments when multiple
|
|
||||||
servers are running the same app and the issue could be machine specific.
|
|
||||||
Hoewever, You might want to disable this feature for privacy reasons.</remarks>
|
|
||||||
</member>
|
|
||||||
<member name="T:Exceptron.Client.ExceptionData">
|
|
||||||
<summary>
|
|
||||||
Represents information that will be used to construct an exception report.
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.ExceptionData.Exception">
|
|
||||||
<summary>
|
|
||||||
Exception that is being reported
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.ExceptionData.Component">
|
|
||||||
<summary>
|
|
||||||
Component that experianced this exception.
|
|
||||||
</summary>
|
|
||||||
<remarks>
|
|
||||||
It is common to use the logger name that was used to log the exception as the component.
|
|
||||||
</remarks>
|
|
||||||
<example>
|
|
||||||
DataAccess, Configuration, Registration, etc.
|
|
||||||
</example>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.ExceptionData.UserId">
|
|
||||||
<summary>
|
|
||||||
ID that will uniquely identify the user
|
|
||||||
</summary>
|
|
||||||
<remarks>
|
|
||||||
This Id does not have to be tied to the user's identity.
|
|
||||||
You can use a system generated unique ID such as GUID.
|
|
||||||
This field is used to report how many unique users are experiencing an error.
|
|
||||||
</remarks>
|
|
||||||
<example>
|
|
||||||
"62E5C8EF-0CA2-43AB-B278-FC6994F776ED"
|
|
||||||
"Timmy@aol.com"
|
|
||||||
"26437"
|
|
||||||
</example>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.ExceptionData.Message">
|
|
||||||
<summary>
|
|
||||||
Any message that should be attached to this exceptions
|
|
||||||
</summary>
|
|
||||||
<example>
|
|
||||||
Something went wrong while checking for application updates.
|
|
||||||
</example>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.ExceptionData.Severity">
|
|
||||||
<summary>
|
|
||||||
Severity of the exception being reported
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.ExceptionData.HttpContext">
|
|
||||||
<summary>
|
|
||||||
<see cref="T:System.Web.HttpContext"/> that triggered this exception. If no <see cref="T:System.Web.HttpContext"/> is provided
|
|
||||||
<see cref="T:Exceptron.Client.ExceptronClient"/> will try to get the current <see cref="T:System.Web.HttpContext"/> from <see cref="P:System.Web.HttpContext.Current"/>
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="M:Exceptron.Client.IExceptronClient.SubmitException(Exceptron.Client.ExceptionData)">
|
|
||||||
<summary>
|
|
||||||
Submit an exception to Exceptron Servers.
|
|
||||||
</summary>
|
|
||||||
<param name="exceptionData">Exception data to be reported to the server</param>
|
|
||||||
</member>
|
|
||||||
<member name="M:Exceptron.Client.IExceptronClient.SubmitException(System.Exception,System.String,Exceptron.Client.ExceptionSeverity,System.String,System.String,System.Web.HttpContext)">
|
|
||||||
<summary>
|
|
||||||
Submit an exception to Exceptron Servers.
|
|
||||||
</summary>
|
|
||||||
<param name="exception">Exception that is being reported</param>
|
|
||||||
<param name="component" example="DataAccess, Configuration, Registration, etc." remarks="It is common to use the logger name that was used to log the exception as the component.">Component that experianced this exception.</param>
|
|
||||||
<param name="severity">Severity of the exception being reported</param>
|
|
||||||
<param name="message" example="Something went wrong while checking for application updates.">Any message that should be attached to this exceptions</param>
|
|
||||||
<param name="userId" remarks="This Id does not have to be tied to the user's identity. 
 You can use a system generated unique ID such as GUID. 
 This field is used to report how many unique users are experiencing an error." example="
 62E5C8EF-0CA2-43AB-B278-FC6994F776ED
 Timmy@aol.com
 26437
 ">ID that will uniquely identify the user</param>
|
|
||||||
<param name="httpContext"><see cref="T:System.Web.HttpContext"/> in which the exception occured. If no <see cref="T:System.Web.HttpContext"/> is provided
|
|
||||||
<see cref="T:Exceptron.Client.ExceptronClient"/> will try to get the current <see cref="T:System.Web.HttpContext"/> from <see cref="P:System.Web.HttpContext.Current"/></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.IExceptronClient.Configuration">
|
|
||||||
<summary>
|
|
||||||
Client Configuration
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.IExceptronClient.ApplicationVersion">
|
|
||||||
<summary>
|
|
||||||
Version of application executing. Default: Version of <see cref="M:System.Reflection.Assembly.GetEntryAssembly"/>
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="M:Exceptron.Client.ExceptronClient.#ctor">
|
|
||||||
<summary>
|
|
||||||
Creates a new instance of <see cref="T:Exceptron.Client.ExceptronClient"/>
|
|
||||||
Loads <see cref="T:Exceptron.Client.Configuration.ExceptronConfiguration"/> from application config file.
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="M:Exceptron.Client.ExceptronClient.#ctor(Exceptron.Client.Configuration.ExceptronConfiguration)">
|
|
||||||
<param name="exceptronConfiguration">Exceptron client configuration</param>
|
|
||||||
</member>
|
|
||||||
<member name="M:Exceptron.Client.ExceptronClient.SubmitException(System.Exception,System.String,Exceptron.Client.ExceptionSeverity,System.String,System.String,System.Web.HttpContext)">
|
|
||||||
<summary>
|
|
||||||
Submit an exception to Exceptron Servers.
|
|
||||||
</summary>
|
|
||||||
<param name="exception">Exception that is being reported</param>
|
|
||||||
<param name="component" example="DataAccess, Configuration, Registration, etc." remarks="It is common to use the logger name that was used to log the exception as the component.">Component that experianced this exception.</param>
|
|
||||||
<param name="severity">Severity of the exception being reported</param>
|
|
||||||
<param name="message" example="Something went wrong while checking for application updates.">Any message that should be attached to this exceptions</param>
|
|
||||||
<param name="userId" remarks="This Id does not have to be tied to the user's identity. 
 You can use a system generated unique ID such as GUID. 
 This field is used to report how many unique users are experiencing an error." example="
 62E5C8EF-0CA2-43AB-B278-FC6994F776ED
 Timmy@aol.com
 26437
 ">ID that will uniquely identify the user</param>
|
|
||||||
<param name="httpContext"><see cref="T:System.Web.HttpContext"/> in which the exception occured. If no <see cref="T:System.Web.HttpContext"/> is provided
|
|
||||||
<see cref="T:Exceptron.Client.ExceptronClient"/> will try to get the current <see cref="T:System.Web.HttpContext"/> from <see cref="P:System.Web.HttpContext.Current"/></param>
|
|
||||||
<returns></returns>
|
|
||||||
</member>
|
|
||||||
<member name="M:Exceptron.Client.ExceptronClient.SubmitException(Exceptron.Client.ExceptionData)">
|
|
||||||
<summary>
|
|
||||||
Submit an exception to Exceptron Servers.
|
|
||||||
</summary>
|
|
||||||
<param name="exceptionData">Exception data to be reported to the server</param>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.ExceptronClient.ClientVersion">
|
|
||||||
<summary>
|
|
||||||
Version of Client
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.ExceptronClient.ClientName">
|
|
||||||
<summary>
|
|
||||||
Name of Client
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.ExceptronClient.Configuration">
|
|
||||||
<summary>
|
|
||||||
Client Configuration
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.ExceptronClient.ApplicationVersion">
|
|
||||||
<summary>
|
|
||||||
Version of application executing. Default: Version of <see cref="M:System.Reflection.Assembly.GetEntryAssembly"/>
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.ExceptronClient.FrameworkType">
|
|
||||||
<summary>
|
|
||||||
Framework Type of the Host Application (.Net/mono)
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.Message.ExceptionResponse.RefId">
|
|
||||||
<summary>
|
|
||||||
Exception report reference ID. This ID will be shared across
|
|
||||||
similar exceptions
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.Message.ExceptionResponse.Successful">
|
|
||||||
<summary>
|
|
||||||
Was the report successfully processed on the server
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.Message.ExceptionResponse.Exception">
|
|
||||||
<summary>
|
|
||||||
Exception that caused the message to fail.
|
|
||||||
</summary>
|
|
||||||
<remarks>
|
|
||||||
This property will only be populated if <see cref="P:Exceptron.Client.Configuration.ExceptronConfiguration.ThrowExceptions"/> is set to <see cref="!:bool.False"/>/>
|
|
||||||
Exception is thrown if <see cref="P:Exceptron.Client.Configuration.ExceptronConfiguration.ThrowExceptions"/> is set to <see cref="!:bool.True"/>.
|
|
||||||
</remarks>
|
|
||||||
</member>
|
|
||||||
<member name="T:Exceptron.Client.ExceptionSeverity">
|
|
||||||
<summary>
|
|
||||||
Severity of the exception being reported
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="F:Exceptron.Client.ExceptionSeverity.None">
|
|
||||||
<summary>
|
|
||||||
Excepted Error. Can be ignored
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="F:Exceptron.Client.ExceptionSeverity.Warning">
|
|
||||||
<summary>
|
|
||||||
Error that can be handled gracefully
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="F:Exceptron.Client.ExceptionSeverity.Error">
|
|
||||||
<summary>
|
|
||||||
Blocking user from completing their intended action
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="F:Exceptron.Client.ExceptionSeverity.Fatal">
|
|
||||||
<summary>
|
|
||||||
Will most likely cause the application to crash
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.Message.ExceptionReport.ap">
|
|
||||||
<summary>
|
|
||||||
API key
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.Message.ExceptionReport.aver">
|
|
||||||
<summary>
|
|
||||||
Application Version
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.Message.ExceptionReport.sv">
|
|
||||||
<summary>
|
|
||||||
Exception Severity
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.Message.ExceptionReport.uid">
|
|
||||||
<summary>
|
|
||||||
User or Instance ID
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.Message.ExceptionReport.ext">
|
|
||||||
<summary>
|
|
||||||
Type of exception
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.Message.ExceptionReport.exm">
|
|
||||||
<summary>
|
|
||||||
Exception message
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.Message.ExceptionReport.stk">
|
|
||||||
<summary>
|
|
||||||
List of frames that make up the StackTrace of the exception
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.Message.ExceptionReport.cmp">
|
|
||||||
<summary>
|
|
||||||
Component that experienced this exception
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.Message.ExceptionReport.msg">
|
|
||||||
<summary>
|
|
||||||
Message that was logged along with the exception.
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.Message.ExceptionReport.cul">
|
|
||||||
<summary>
|
|
||||||
User's culture in
|
|
||||||
</summary>
|
|
||||||
<remarks>http://msdn.microsoft.com/en-us/library/system.globalization.cultureinfo.name.aspx</remarks>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.Message.ExceptionReport.os">
|
|
||||||
<summary>
|
|
||||||
OS Version
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.Message.ExceptionReport.dn">
|
|
||||||
<summary>
|
|
||||||
Name of the Client that generated and is sending this message
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.Message.ExceptionReport.dv">
|
|
||||||
<summary>
|
|
||||||
Version of the Client that generated and is sending this message
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.Message.ExceptionReport.hn">
|
|
||||||
<summary>
|
|
||||||
Host name of the machine that encountered this exception
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<!-- Badly formed XML comment ignored for member "P:Exceptron.Client.Message.ExceptionReport.url" -->
|
|
||||||
<member name="P:Exceptron.Client.Message.ExceptionReport.ua">
|
|
||||||
<summary>
|
|
||||||
Browser useragent
|
|
||||||
</summary>
|
|
||||||
<remarks>Only used for exception in context of a web request/</remarks>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.Message.ExceptionReport.sc">
|
|
||||||
<summary>
|
|
||||||
HTTP response status code
|
|
||||||
</summary>
|
|
||||||
<remarks>Only used for exception in context of a web request/</remarks>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.Message.ExceptionReport.hm">
|
|
||||||
<summary>
|
|
||||||
Indicates the HTTP data transfer method used by the client.
|
|
||||||
</summary>
|
|
||||||
<example>GET, POST, PUT, DELETE</example>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.Message.ExceptionReport.fv">
|
|
||||||
<summary>
|
|
||||||
Framework Version (CLR) of the Host Application
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.Message.ExceptionReport.ft">
|
|
||||||
<summary>
|
|
||||||
Framework Type of the Host Application
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="T:Exceptron.Client.fastJSON.JsonParser">
|
|
||||||
<summary>
|
|
||||||
This class encodes and decodes JSON strings.
|
|
||||||
Spec. details, see http://www.json.org/
|
|
||||||
|
|
||||||
JSON uses Arrays and Objects. These correspond here to the datatypes ArrayList and Hashtable.
|
|
||||||
All numbers are parsed to doubles.
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.Message.Frame.i">
|
|
||||||
<summary>
|
|
||||||
Order of current frame
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.Message.Frame.ln">
|
|
||||||
<summary>
|
|
||||||
Line number of the current frame
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.Message.Frame.fn">
|
|
||||||
<summary>
|
|
||||||
File name of the current frame
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.Message.Frame.m">
|
|
||||||
<summary>
|
|
||||||
Method name for current frame
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
<member name="P:Exceptron.Client.Message.Frame.c">
|
|
||||||
<summary>
|
|
||||||
Class name for current frame
|
|
||||||
</summary>
|
|
||||||
</member>
|
|
||||||
</members>
|
|
||||||
</doc>
|
|
|
@ -1,24 +0,0 @@
|
||||||
using Exceptron.Driver.Message;
|
|
||||||
|
|
||||||
namespace Exceptron.Driver
|
|
||||||
{
|
|
||||||
public class ClientConfiguration
|
|
||||||
{
|
|
||||||
|
|
||||||
public ClientConfiguration()
|
|
||||||
{
|
|
||||||
ServerUrl = "http://api.exceptron.com/v1a/";
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// If ExceptronClinet should throw exceptions in case of an error. Default: <see cref="bool.False"/>
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// Its recommended that this flag is set to True during development and <see cref="bool.False"/> in production systems.
|
|
||||||
/// If an exception is thrown while this flag is set to <see cref="bool.False"/> the thrown exception will be returned in <see cref="ExceptionResponse.Exception"/>
|
|
||||||
/// </remarks>
|
|
||||||
public bool ThrowsExceptions { get; set; }
|
|
||||||
|
|
||||||
internal string ServerUrl { get; set; }
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,211 +0,0 @@
|
||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Diagnostics;
|
|
||||||
using System.Globalization;
|
|
||||||
using System.Reflection;
|
|
||||||
using System.Threading;
|
|
||||||
using Exceptron.Driver.Message;
|
|
||||||
|
|
||||||
namespace Exceptron.Driver
|
|
||||||
{
|
|
||||||
public class ExceptionClient
|
|
||||||
{
|
|
||||||
private readonly string _apiKey;
|
|
||||||
internal IRestClient RestClient { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Version of Driver
|
|
||||||
/// </summary>
|
|
||||||
public string DriverVersion
|
|
||||||
{
|
|
||||||
get { return Assembly.GetExecutingAssembly().GetName().Version.ToString(); }
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Name of Driver
|
|
||||||
/// </summary>
|
|
||||||
public string DriverName
|
|
||||||
{
|
|
||||||
get { return "Official .NET"; }
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Client Configuration
|
|
||||||
/// </summary>
|
|
||||||
public ClientConfiguration ClientConfiguration { get; private set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Environment that the application is running in
|
|
||||||
/// </summary>
|
|
||||||
/// <example>
|
|
||||||
/// Dev, Staging, Production
|
|
||||||
/// </example>
|
|
||||||
public string Enviroment { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Version of application executing. Default: Version of <see cref="Assembly.GetEntryAssembly()"/>
|
|
||||||
/// </summary>
|
|
||||||
public string ApplicationVersion { get; set; }
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/// <param name="apiKey">Your Exceptron API Key</param>
|
|
||||||
public ExceptionClient(string apiKey)
|
|
||||||
: this(apiKey, new ClientConfiguration())
|
|
||||||
{
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <param name="apiKey">Your Exceptron API Key</param>
|
|
||||||
/// <param name="clientConfiguration">Configuration to use for this client </param>
|
|
||||||
private ExceptionClient(string apiKey, ClientConfiguration clientConfiguration)
|
|
||||||
{
|
|
||||||
ClientConfiguration = clientConfiguration;
|
|
||||||
_apiKey = apiKey;
|
|
||||||
|
|
||||||
RestClient = new RestClient();
|
|
||||||
|
|
||||||
SetApplicationVersion();
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Submit an exception to Exceptron Servers.
|
|
||||||
/// </summary>
|
|
||||||
/// <param name="exceptionData">Exception data to be reported to the server</param>
|
|
||||||
public ExceptionResponse SubmitException(ExceptionData exceptionData)
|
|
||||||
{
|
|
||||||
try
|
|
||||||
{
|
|
||||||
if (exceptionData == null)
|
|
||||||
throw new ArgumentNullException("exceptionData");
|
|
||||||
|
|
||||||
if (exceptionData.Exception == null)
|
|
||||||
throw new ArgumentException("ExceptionData.Exception Cannot be null.", "exceptionData");
|
|
||||||
|
|
||||||
var report = new ExceptionReport();
|
|
||||||
|
|
||||||
report.ap = _apiKey;
|
|
||||||
report.dn = DriverName;
|
|
||||||
report.dv = DriverVersion;
|
|
||||||
report.aver = ApplicationVersion;
|
|
||||||
|
|
||||||
report.ext = exceptionData.Exception.GetType().FullName;
|
|
||||||
report.stk = ConvertToFrames(exceptionData.Exception);
|
|
||||||
report.exm = exceptionData.Exception.Message;
|
|
||||||
|
|
||||||
report.cmp = exceptionData.Component;
|
|
||||||
report.uid = exceptionData.UserId;
|
|
||||||
report.env = Enviroment;
|
|
||||||
report.msg = exceptionData.Message;
|
|
||||||
report.cul = Thread.CurrentThread.CurrentCulture.Name;
|
|
||||||
report.os = Environment.OSVersion.VersionString;
|
|
||||||
report.sv = (int)exceptionData.Severity;
|
|
||||||
|
|
||||||
var response = RestClient.Put<ExceptionResponse>(ClientConfiguration.ServerUrl, report);
|
|
||||||
|
|
||||||
return response;
|
|
||||||
}
|
|
||||||
catch (Exception e)
|
|
||||||
{
|
|
||||||
Trace.WriteLine("Unable to submit exception to exceptron. ", e.ToString());
|
|
||||||
|
|
||||||
if (ClientConfiguration.ThrowsExceptions)
|
|
||||||
{
|
|
||||||
throw;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
return new ExceptionResponse { Exception = e };
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
private void SetApplicationVersion()
|
|
||||||
{
|
|
||||||
try
|
|
||||||
{
|
|
||||||
var entryAssembly = GetWebEntryAssembly();
|
|
||||||
|
|
||||||
if (entryAssembly == null)
|
|
||||||
{
|
|
||||||
entryAssembly = Assembly.GetEntryAssembly();
|
|
||||||
}
|
|
||||||
|
|
||||||
if (entryAssembly == null)
|
|
||||||
{
|
|
||||||
entryAssembly = Assembly.GetCallingAssembly();
|
|
||||||
}
|
|
||||||
|
|
||||||
if (entryAssembly != null)
|
|
||||||
{
|
|
||||||
ApplicationVersion = entryAssembly.GetName().Version.ToString();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
catch (Exception e)
|
|
||||||
{
|
|
||||||
Trace.WriteLine("Can't figure out application version.", e.ToString());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
static private Assembly GetWebEntryAssembly()
|
|
||||||
{
|
|
||||||
if (System.Web.HttpContext.Current == null ||
|
|
||||||
System.Web.HttpContext.Current.ApplicationInstance == null)
|
|
||||||
{
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
var type = System.Web.HttpContext.Current.ApplicationInstance.GetType();
|
|
||||||
while (type != null && type.Namespace == "ASP")
|
|
||||||
{
|
|
||||||
type = type.BaseType;
|
|
||||||
}
|
|
||||||
|
|
||||||
return type == null ? null : type.Assembly;
|
|
||||||
}
|
|
||||||
|
|
||||||
internal static List<Frame> ConvertToFrames(Exception exception)
|
|
||||||
{
|
|
||||||
if (exception == null) return null;
|
|
||||||
|
|
||||||
var stackTrace = new StackTrace(exception, true);
|
|
||||||
|
|
||||||
var frames = stackTrace.GetFrames();
|
|
||||||
|
|
||||||
if (frames == null) return null;
|
|
||||||
|
|
||||||
var result = new List<Frame>();
|
|
||||||
|
|
||||||
for (int index = 0; index < frames.Length; index++)
|
|
||||||
{
|
|
||||||
var frame = frames[index];
|
|
||||||
var method = frame.GetMethod();
|
|
||||||
var declaringType = method.DeclaringType;
|
|
||||||
|
|
||||||
var currentFrame = new Frame
|
|
||||||
{
|
|
||||||
i = index,
|
|
||||||
fn = frame.GetFileName(),
|
|
||||||
ln = frame.GetFileLineNumber(),
|
|
||||||
m = method.ToString(),
|
|
||||||
};
|
|
||||||
|
|
||||||
|
|
||||||
currentFrame.m = currentFrame.m.Substring(currentFrame.m.IndexOf(' ')).Trim();
|
|
||||||
|
|
||||||
|
|
||||||
if (declaringType != null)
|
|
||||||
{
|
|
||||||
currentFrame.c = declaringType.FullName;
|
|
||||||
}
|
|
||||||
|
|
||||||
result.Add(currentFrame);
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,54 +0,0 @@
|
||||||
using System;
|
|
||||||
|
|
||||||
namespace Exceptron.Driver
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// Represents information that will be used to construct an exception report.
|
|
||||||
/// </summary>
|
|
||||||
public class ExceptionData
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// Exception that is being reported
|
|
||||||
/// </summary>
|
|
||||||
public Exception Exception { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Component that caused this error.
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// It is common to use the logger name that was used to log the exception as the component.
|
|
||||||
/// </remarks>
|
|
||||||
/// <example>
|
|
||||||
/// DataAccess, Configuration, Registration, etc.
|
|
||||||
/// </example>
|
|
||||||
public string Component { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// ID that will uniquely identify the user
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// This Id does not have to be tied to the user's identity.
|
|
||||||
/// You can use a system generated unique ID such as GUID.
|
|
||||||
/// This field is used to report how many unique users are experiencing an error.
|
|
||||||
/// </remarks>
|
|
||||||
/// <example>
|
|
||||||
/// "62E5C8EF-0CA2-43AB-B278-FC6994F776ED"
|
|
||||||
/// "Timmy@aol.com"
|
|
||||||
/// "26437"
|
|
||||||
/// </example>
|
|
||||||
public string UserId { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Any message that should be attached to this exceptions
|
|
||||||
/// </summary>
|
|
||||||
/// <example>
|
|
||||||
/// Something went wrong while checking for application updates.
|
|
||||||
/// </example>
|
|
||||||
public string Message { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Severity of the exception being reported
|
|
||||||
/// </summary>
|
|
||||||
public ExceptionSeverity Severity { get; set; }
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,28 +0,0 @@
|
||||||
namespace Exceptron.Driver
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// Severity of the exception being reported
|
|
||||||
/// </summary>
|
|
||||||
public enum ExceptionSeverity
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// Excepted Error. Can be ignored
|
|
||||||
/// </summary>
|
|
||||||
None = 0,
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Error that can be handled gracefully
|
|
||||||
/// </summary>
|
|
||||||
Warning = 1,
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Blocking user from completing their intended action
|
|
||||||
/// </summary>
|
|
||||||
Error = 2,
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Will most likely cause the application to crash
|
|
||||||
/// </summary>
|
|
||||||
Fatal = 3
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,7 +0,0 @@
|
||||||
namespace Exceptron.Driver
|
|
||||||
{
|
|
||||||
internal interface IRestClient
|
|
||||||
{
|
|
||||||
TResponse Put<TResponse>(string url, object report) where TResponse : class, new();
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,79 +0,0 @@
|
||||||
using System.Collections.Generic;
|
|
||||||
|
|
||||||
namespace Exceptron.Driver.Message
|
|
||||||
{
|
|
||||||
internal class ExceptionReport
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// API key
|
|
||||||
/// </summary>
|
|
||||||
public string ap { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Application Version
|
|
||||||
/// </summary>
|
|
||||||
public string aver { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Exception Severity
|
|
||||||
/// </summary>
|
|
||||||
public int sv { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// User or Instance ID
|
|
||||||
/// </summary>
|
|
||||||
public string uid { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Type of exception
|
|
||||||
/// </summary>
|
|
||||||
public string ext { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Exception message
|
|
||||||
/// </summary>
|
|
||||||
public string exm { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// List of frames that make up the StackTrace of the exception
|
|
||||||
/// </summary>
|
|
||||||
public List<Frame> stk { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Component that experienced this exception
|
|
||||||
/// </summary>
|
|
||||||
public string cmp { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Environment that this exception occurred in.
|
|
||||||
/// </summary>
|
|
||||||
/// <example>Dev, Stage, Production</example>
|
|
||||||
public string env { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Message that was logged along with the exception.
|
|
||||||
/// </summary>
|
|
||||||
public string msg { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// User's culture in
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>http://msdn.microsoft.com/en-us/library/system.globalization.cultureinfo.name.aspx</remarks>
|
|
||||||
public string cul { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// OS Version
|
|
||||||
/// </summary>
|
|
||||||
public string os { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Name of the driver that generated and is sending this message
|
|
||||||
/// </summary>
|
|
||||||
public string dn { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Version of the driver that generated and is sending this message
|
|
||||||
/// </summary>
|
|
||||||
public string dv { get; set; }
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,33 +0,0 @@
|
||||||
using System;
|
|
||||||
|
|
||||||
namespace Exceptron.Driver.Message
|
|
||||||
{
|
|
||||||
public class ExceptionResponse
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// Exception report reference ID. This ID will be shared across
|
|
||||||
/// similar exceptions
|
|
||||||
/// </summary>
|
|
||||||
public string RefId { get; internal set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Was the report successfully processed on the server
|
|
||||||
/// </summary>
|
|
||||||
public bool Successful
|
|
||||||
{
|
|
||||||
get
|
|
||||||
{
|
|
||||||
return !string.IsNullOrEmpty(RefId);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Exception that caused the message to fail.
|
|
||||||
/// </summary>
|
|
||||||
/// <remarks>
|
|
||||||
/// This property will only be populated if <see cref="ClientConfiguration.ThrowsExceptions"/> is set to <see cref="bool.False"/>/>
|
|
||||||
/// Exception is thrown if <see cref="ClientConfiguration.ThrowsExceptions"/> is set to <see cref="bool.True"/>.
|
|
||||||
/// </remarks>
|
|
||||||
public Exception Exception { get; internal set; }
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,30 +0,0 @@
|
||||||
namespace Exceptron.Driver.Message
|
|
||||||
{
|
|
||||||
internal class Frame
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// Order of current frame
|
|
||||||
/// </summary>
|
|
||||||
public int i { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Line number of the current frame
|
|
||||||
/// </summary>
|
|
||||||
public int ln { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// File name of the current frame
|
|
||||||
/// </summary>
|
|
||||||
public string fn { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Method name for current frame
|
|
||||||
/// </summary>
|
|
||||||
public string m { get; set; }
|
|
||||||
|
|
||||||
/// <summary>
|
|
||||||
/// Class name for current frame
|
|
||||||
/// </summary>
|
|
||||||
public string c { get; set; }
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,39 +0,0 @@
|
||||||
using System.Reflection;
|
|
||||||
using System.Runtime.CompilerServices;
|
|
||||||
using System.Runtime.InteropServices;
|
|
||||||
|
|
||||||
// General Information about an assembly is controlled through the following
|
|
||||||
// set of attributes. Change these attribute values to modify the information
|
|
||||||
// associated with an assembly.
|
|
||||||
[assembly: AssemblyTitle("Exceptron.Driver")]
|
|
||||||
[assembly: AssemblyDescription("")]
|
|
||||||
[assembly: AssemblyConfiguration("")]
|
|
||||||
[assembly: AssemblyCompany("")]
|
|
||||||
[assembly: AssemblyProduct("Exceptron.Driver")]
|
|
||||||
[assembly: AssemblyCopyright("Copyright © 2012")]
|
|
||||||
[assembly: AssemblyTrademark("")]
|
|
||||||
[assembly: AssemblyCulture("")]
|
|
||||||
|
|
||||||
// Setting ComVisible to false makes the types in this assembly not visible
|
|
||||||
// to COM components. If you need to access a type in this assembly from
|
|
||||||
// COM, set the ComVisible attribute to true on that type.
|
|
||||||
[assembly: ComVisible(false)]
|
|
||||||
|
|
||||||
// The following GUID is for the ID of the typelib if this project is exposed to COM
|
|
||||||
[assembly: Guid("a463887e-594f-4733-b227-a79f4ffb2158")]
|
|
||||||
|
|
||||||
// Version information for an assembly consists of the following four values:
|
|
||||||
//
|
|
||||||
// Major Version
|
|
||||||
// Minor Version
|
|
||||||
// Build Number
|
|
||||||
// Revision
|
|
||||||
//
|
|
||||||
// You can specify all the values or you can default the Build and Revision Numbers
|
|
||||||
// by using the '*' as shown below:
|
|
||||||
// [assembly: AssemblyVersion("1.0.*")]
|
|
||||||
[assembly: AssemblyVersion("0.1.0.34")]
|
|
||||||
[assembly: AssemblyFileVersion("0.1.0.34")]
|
|
||||||
[assembly: InternalsVisibleTo("Exceptron.Driver.Tests")]
|
|
||||||
[assembly: InternalsVisibleTo("Exceptron.Api.v1a.Tests")]
|
|
||||||
[assembly: InternalsVisibleTo("DynamicProxyGenAssembly2")]
|
|
|
@ -1,79 +0,0 @@
|
||||||
using System;
|
|
||||||
using System.Diagnostics;
|
|
||||||
using System.IO;
|
|
||||||
using System.Net;
|
|
||||||
using System.Text;
|
|
||||||
using Exceptron.Driver.fastJSON;
|
|
||||||
|
|
||||||
namespace Exceptron.Driver
|
|
||||||
{
|
|
||||||
public sealed class RestClient : IRestClient
|
|
||||||
{
|
|
||||||
public TResponse Put<TResponse>(string url, object content) where TResponse : class ,new()
|
|
||||||
{
|
|
||||||
|
|
||||||
if(content == null)
|
|
||||||
throw new ArgumentNullException("content can not be null", "content");
|
|
||||||
|
|
||||||
if (string.IsNullOrEmpty(url))
|
|
||||||
throw new ArgumentNullException("url can not be null or empty", "url");
|
|
||||||
|
|
||||||
Trace.WriteLine("Attempting PUT to " + url);
|
|
||||||
|
|
||||||
var json = JSON.Instance.ToJSON(content);
|
|
||||||
|
|
||||||
byte[] bytes = Encoding.UTF8.GetBytes(json);
|
|
||||||
var request = (HttpWebRequest)WebRequest.Create(url);
|
|
||||||
request.Timeout = 10000;
|
|
||||||
request.Method = "PUT";
|
|
||||||
request.ContentType = "application/json";
|
|
||||||
request.ContentLength = bytes.Length;
|
|
||||||
request.Accept = "application/json";
|
|
||||||
|
|
||||||
var dataStream = request.GetRequestStream();
|
|
||||||
dataStream.Write(bytes, 0, bytes.Length);
|
|
||||||
dataStream.Close();
|
|
||||||
var webResponse = request.GetResponse();
|
|
||||||
|
|
||||||
var responseStream = new StreamReader(webResponse.GetResponseStream(), Encoding.GetEncoding(1252));
|
|
||||||
var responseString = responseStream.ReadToEnd();
|
|
||||||
|
|
||||||
Trace.WriteLine(responseString);
|
|
||||||
var response = JSON.Instance.ToObject<TResponse>(responseString);
|
|
||||||
|
|
||||||
return response;
|
|
||||||
|
|
||||||
/* try
|
|
||||||
{
|
|
||||||
var dataStream = request.GetRequestStream();
|
|
||||||
dataStream.Write(bytes, 0, bytes.Length);
|
|
||||||
dataStream.Close();
|
|
||||||
webResponse = request.GetResponse();
|
|
||||||
}
|
|
||||||
catch (WebException ex)
|
|
||||||
{
|
|
||||||
Trace.WriteLine("An Error has occurred while Doing HTTP PUT. " + ex);
|
|
||||||
webResponse = ex.Response;
|
|
||||||
}
|
|
||||||
catch (Exception ex)
|
|
||||||
{
|
|
||||||
Trace.WriteLine("An Error has occurred while Doing HTTP PUT. " + ex);
|
|
||||||
}
|
|
||||||
|
|
||||||
var response = new TResponse();
|
|
||||||
|
|
||||||
if (webResponse != null && webResponse.ContentType.Contains("json"))
|
|
||||||
{
|
|
||||||
var responseStream = new StreamReader(webResponse.GetResponseStream(), Encoding.GetEncoding(1252));
|
|
||||||
var responseString = responseStream.ReadToEnd();
|
|
||||||
|
|
||||||
Trace.WriteLine(responseString);
|
|
||||||
response = JSON.Instance.ToObject<TResponse>(responseString);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (response == null) response = new TResponse();
|
|
||||||
|
|
||||||
return response;*/
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,11 +0,0 @@
|
||||||
namespace Exceptron.Driver
|
|
||||||
{
|
|
||||||
public class ValidationError
|
|
||||||
{
|
|
||||||
public string ErrorCode { get; set; }
|
|
||||||
|
|
||||||
public string FieldName { get; set; }
|
|
||||||
|
|
||||||
public string Message { get; set; }
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,20 +0,0 @@
|
||||||
//http://fastjson.codeplex.com/
|
|
||||||
|
|
||||||
using System;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
|
|
||||||
namespace Exceptron.Driver.fastJSON
|
|
||||||
{
|
|
||||||
internal class Getters
|
|
||||||
{
|
|
||||||
public string Name;
|
|
||||||
public JSON.GenericGetter Getter;
|
|
||||||
public Type propertyType;
|
|
||||||
}
|
|
||||||
|
|
||||||
internal class DatasetSchema
|
|
||||||
{
|
|
||||||
public List<string> Info { get; set; }
|
|
||||||
public string Name { get; set; }
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,854 +0,0 @@
|
||||||
//http://fastjson.codeplex.com/
|
|
||||||
|
|
||||||
using System;
|
|
||||||
using System.Collections;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Data;
|
|
||||||
using System.Globalization;
|
|
||||||
using System.IO;
|
|
||||||
using System.Reflection;
|
|
||||||
using System.Reflection.Emit;
|
|
||||||
using Exceptron.Driver.fastJSON;
|
|
||||||
|
|
||||||
namespace Exceptron.Driver.fastJSON
|
|
||||||
{
|
|
||||||
internal delegate string Serialize(object data);
|
|
||||||
internal delegate object Deserialize(string data);
|
|
||||||
|
|
||||||
internal class JSON
|
|
||||||
{
|
|
||||||
public readonly static JSON Instance = new JSON();
|
|
||||||
|
|
||||||
private JSON()
|
|
||||||
{
|
|
||||||
UseSerializerExtension = false;
|
|
||||||
SerializeNullValues = false;
|
|
||||||
UseOptimizedDatasetSchema = false;
|
|
||||||
UsingGlobalTypes = false;
|
|
||||||
}
|
|
||||||
public bool UseOptimizedDatasetSchema = true;
|
|
||||||
public bool UseFastGuid = true;
|
|
||||||
public bool UseSerializerExtension = true;
|
|
||||||
public bool IndentOutput = false;
|
|
||||||
public bool SerializeNullValues = true;
|
|
||||||
public bool UseUTCDateTime = false;
|
|
||||||
public bool ShowReadOnlyProperties = false;
|
|
||||||
public bool UsingGlobalTypes = true;
|
|
||||||
|
|
||||||
public string ToJSON(object obj)
|
|
||||||
{
|
|
||||||
return ToJSON(obj, UseSerializerExtension, UseFastGuid, UseOptimizedDatasetSchema, SerializeNullValues);
|
|
||||||
}
|
|
||||||
|
|
||||||
public string ToJSON(object obj,
|
|
||||||
bool enableSerializerExtensions)
|
|
||||||
{
|
|
||||||
return ToJSON(obj, enableSerializerExtensions, UseFastGuid, UseOptimizedDatasetSchema, SerializeNullValues);
|
|
||||||
}
|
|
||||||
|
|
||||||
public string ToJSON(object obj,
|
|
||||||
bool enableSerializerExtensions,
|
|
||||||
bool enableFastGuid)
|
|
||||||
{
|
|
||||||
return ToJSON(obj, enableSerializerExtensions, enableFastGuid, UseOptimizedDatasetSchema, SerializeNullValues);
|
|
||||||
}
|
|
||||||
|
|
||||||
public string ToJSON(object obj,
|
|
||||||
bool enableSerializerExtensions,
|
|
||||||
bool enableFastGuid,
|
|
||||||
bool enableOptimizedDatasetSchema,
|
|
||||||
bool serializeNullValues)
|
|
||||||
{
|
|
||||||
return new JSONSerializer(enableOptimizedDatasetSchema, enableFastGuid, enableSerializerExtensions, serializeNullValues, IndentOutput).ConvertToJSON(obj);
|
|
||||||
}
|
|
||||||
|
|
||||||
public object Parse(string json)
|
|
||||||
{
|
|
||||||
return new JsonParser(json).Decode();
|
|
||||||
}
|
|
||||||
|
|
||||||
public T ToObject<T>(string json)
|
|
||||||
{
|
|
||||||
return (T)ToObject(json, typeof(T));
|
|
||||||
}
|
|
||||||
|
|
||||||
public object ToObject(string json)
|
|
||||||
{
|
|
||||||
return ToObject(json, null);
|
|
||||||
}
|
|
||||||
|
|
||||||
public object ToObject(string json, Type type)
|
|
||||||
{
|
|
||||||
Dictionary<string, object> ht = new JsonParser(json).Decode() as Dictionary<string, object>;
|
|
||||||
if (ht == null) return null;
|
|
||||||
return ParseDictionary(ht, null, type);
|
|
||||||
}
|
|
||||||
|
|
||||||
#if CUSTOMTYPE
|
|
||||||
internal SafeDictionary<Type, Serialize> _customSerializer = new SafeDictionary<Type, Serialize>();
|
|
||||||
internal SafeDictionary<Type, Deserialize> _customDeserializer = new SafeDictionary<Type, Deserialize>();
|
|
||||||
|
|
||||||
public void RegisterCustomType(Type type, Serialize serializer, Deserialize deserializer)
|
|
||||||
{
|
|
||||||
if (type != null && serializer != null && deserializer != null)
|
|
||||||
{
|
|
||||||
_customSerializer.Add(type, serializer);
|
|
||||||
_customDeserializer.Add(type, deserializer);
|
|
||||||
// reset property cache
|
|
||||||
_propertycache = new SafeDictionary<string, SafeDictionary<string, myPropInfo>>();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
internal bool IsTypeRegistered(Type t)
|
|
||||||
{
|
|
||||||
Serialize s;
|
|
||||||
return _customSerializer.TryGetValue(t, out s);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#region [ PROPERTY GET SET CACHE ]
|
|
||||||
SafeDictionary<Type, string> _tyname = new SafeDictionary<Type, string>();
|
|
||||||
internal string GetTypeAssemblyName(Type t)
|
|
||||||
{
|
|
||||||
string val = "";
|
|
||||||
if (_tyname.TryGetValue(t, out val))
|
|
||||||
return val;
|
|
||||||
else
|
|
||||||
{
|
|
||||||
string s = t.AssemblyQualifiedName;
|
|
||||||
_tyname.Add(t, s);
|
|
||||||
return s;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
SafeDictionary<string, Type> _typecache = new SafeDictionary<string, Type>();
|
|
||||||
private Type GetTypeFromCache(string typename)
|
|
||||||
{
|
|
||||||
Type val = null;
|
|
||||||
if (_typecache.TryGetValue(typename, out val))
|
|
||||||
return val;
|
|
||||||
else
|
|
||||||
{
|
|
||||||
Type t = Type.GetType(typename);
|
|
||||||
_typecache.Add(typename, t);
|
|
||||||
return t;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
SafeDictionary<Type, CreateObject> _constrcache = new SafeDictionary<Type, CreateObject>();
|
|
||||||
private delegate object CreateObject();
|
|
||||||
private object FastCreateInstance(Type objtype)
|
|
||||||
{
|
|
||||||
try
|
|
||||||
{
|
|
||||||
CreateObject c = null;
|
|
||||||
if (_constrcache.TryGetValue(objtype, out c))
|
|
||||||
{
|
|
||||||
return c();
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
DynamicMethod dynMethod = new DynamicMethod("_", objtype, null, true);
|
|
||||||
ILGenerator ilGen = dynMethod.GetILGenerator();
|
|
||||||
|
|
||||||
ilGen.Emit(OpCodes.Newobj, objtype.GetConstructor(Type.EmptyTypes));
|
|
||||||
ilGen.Emit(OpCodes.Ret);
|
|
||||||
c = (CreateObject)dynMethod.CreateDelegate(typeof(CreateObject));
|
|
||||||
_constrcache.Add(objtype, c);
|
|
||||||
return c();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
catch (Exception exc)
|
|
||||||
{
|
|
||||||
throw new Exception(string.Format("Failed to fast create instance for type '{0}' from assemebly '{1}'",
|
|
||||||
objtype.FullName, objtype.AssemblyQualifiedName), exc);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private struct myPropInfo
|
|
||||||
{
|
|
||||||
public bool filled;
|
|
||||||
public Type pt;
|
|
||||||
public Type bt;
|
|
||||||
public Type changeType;
|
|
||||||
public bool isDictionary;
|
|
||||||
public bool isValueType;
|
|
||||||
public bool isGenericType;
|
|
||||||
public bool isArray;
|
|
||||||
public bool isByteArray;
|
|
||||||
public bool isGuid;
|
|
||||||
#if !SILVERLIGHT
|
|
||||||
public bool isDataSet;
|
|
||||||
public bool isDataTable;
|
|
||||||
public bool isHashtable;
|
|
||||||
#endif
|
|
||||||
public GenericSetter setter;
|
|
||||||
public bool isEnum;
|
|
||||||
public bool isDateTime;
|
|
||||||
public Type[] GenericTypes;
|
|
||||||
public bool isInt;
|
|
||||||
public bool isLong;
|
|
||||||
public bool isString;
|
|
||||||
public bool isBool;
|
|
||||||
public bool isClass;
|
|
||||||
public GenericGetter getter;
|
|
||||||
public bool isStringDictionary;
|
|
||||||
public string Name;
|
|
||||||
#if CUSTOMTYPE
|
|
||||||
public bool isCustomType;
|
|
||||||
#endif
|
|
||||||
public bool CanWrite;
|
|
||||||
}
|
|
||||||
|
|
||||||
SafeDictionary<string, SafeDictionary<string, myPropInfo>> _propertycache = new SafeDictionary<string, SafeDictionary<string, myPropInfo>>();
|
|
||||||
private SafeDictionary<string, myPropInfo> Getproperties(Type type, string typename)
|
|
||||||
{
|
|
||||||
SafeDictionary<string, myPropInfo> sd = null;
|
|
||||||
if (_propertycache.TryGetValue(typename, out sd))
|
|
||||||
{
|
|
||||||
return sd;
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
sd = new SafeDictionary<string, myPropInfo>();
|
|
||||||
PropertyInfo[] pr = type.GetProperties(BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Instance);
|
|
||||||
foreach (PropertyInfo p in pr)
|
|
||||||
{
|
|
||||||
myPropInfo d = CreateMyProp(p.PropertyType, p.Name);
|
|
||||||
d.CanWrite = p.CanWrite;
|
|
||||||
d.setter = CreateSetMethod(p);
|
|
||||||
d.getter = CreateGetMethod(p);
|
|
||||||
sd.Add(p.Name, d);
|
|
||||||
}
|
|
||||||
|
|
||||||
_propertycache.Add(typename, sd);
|
|
||||||
return sd;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private myPropInfo CreateMyProp(Type t, string name)
|
|
||||||
{
|
|
||||||
myPropInfo d = new myPropInfo();
|
|
||||||
d.filled = true;
|
|
||||||
d.CanWrite = true;
|
|
||||||
d.pt = t;
|
|
||||||
d.Name = name;
|
|
||||||
d.isDictionary = t.Name.Contains("Dictionary");
|
|
||||||
if (d.isDictionary)
|
|
||||||
d.GenericTypes = t.GetGenericArguments();
|
|
||||||
d.isValueType = t.IsValueType;
|
|
||||||
d.isGenericType = t.IsGenericType;
|
|
||||||
d.isArray = t.IsArray;
|
|
||||||
if (d.isArray)
|
|
||||||
d.bt = t.GetElementType();
|
|
||||||
if (d.isGenericType)
|
|
||||||
d.bt = t.GetGenericArguments()[0];
|
|
||||||
d.isByteArray = t == typeof(byte[]);
|
|
||||||
d.isGuid = (t == typeof(Guid) || t == typeof(Guid?));
|
|
||||||
#if !SILVERLIGHT
|
|
||||||
d.isHashtable = t == typeof(Hashtable);
|
|
||||||
d.isDataSet = t == typeof(DataSet);
|
|
||||||
d.isDataTable = t == typeof(DataTable);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
d.changeType = GetChangeType(t);
|
|
||||||
d.isEnum = t.IsEnum;
|
|
||||||
d.isDateTime = t == typeof(DateTime) || t == typeof(DateTime?);
|
|
||||||
d.isInt = t == typeof(int) || t == typeof(int?);
|
|
||||||
d.isLong = t == typeof(long) || t == typeof(long?);
|
|
||||||
d.isString = t == typeof(string);
|
|
||||||
d.isBool = t == typeof(bool) || t == typeof(bool?);
|
|
||||||
d.isClass = t.IsClass;
|
|
||||||
|
|
||||||
if (d.isDictionary && d.GenericTypes.Length > 0 && d.GenericTypes[0] == typeof(string))
|
|
||||||
d.isStringDictionary = true;
|
|
||||||
|
|
||||||
#if CUSTOMTYPE
|
|
||||||
if (IsTypeRegistered(t))
|
|
||||||
d.isCustomType = true;
|
|
||||||
#endif
|
|
||||||
return d;
|
|
||||||
}
|
|
||||||
|
|
||||||
private delegate void GenericSetter(object target, object value);
|
|
||||||
|
|
||||||
private static GenericSetter CreateSetMethod(PropertyInfo propertyInfo)
|
|
||||||
{
|
|
||||||
MethodInfo setMethod = propertyInfo.GetSetMethod(nonPublic: true);
|
|
||||||
if (setMethod == null)
|
|
||||||
return null;
|
|
||||||
|
|
||||||
Type[] arguments = new Type[2];
|
|
||||||
arguments[0] = arguments[1] = typeof(object);
|
|
||||||
|
|
||||||
DynamicMethod setter = new DynamicMethod("_", typeof(void), arguments, true);
|
|
||||||
ILGenerator il = setter.GetILGenerator();
|
|
||||||
il.Emit(OpCodes.Ldarg_0);
|
|
||||||
il.Emit(OpCodes.Castclass, propertyInfo.DeclaringType);
|
|
||||||
il.Emit(OpCodes.Ldarg_1);
|
|
||||||
|
|
||||||
if (propertyInfo.PropertyType.IsClass)
|
|
||||||
il.Emit(OpCodes.Castclass, propertyInfo.PropertyType);
|
|
||||||
else
|
|
||||||
il.Emit(OpCodes.Unbox_Any, propertyInfo.PropertyType);
|
|
||||||
|
|
||||||
il.EmitCall(OpCodes.Callvirt, setMethod, null);
|
|
||||||
il.Emit(OpCodes.Ret);
|
|
||||||
|
|
||||||
return (GenericSetter)setter.CreateDelegate(typeof(GenericSetter));
|
|
||||||
}
|
|
||||||
|
|
||||||
internal delegate object GenericGetter(object obj);
|
|
||||||
|
|
||||||
|
|
||||||
private GenericGetter CreateGetMethod(PropertyInfo propertyInfo)
|
|
||||||
{
|
|
||||||
MethodInfo getMethod = propertyInfo.GetGetMethod();
|
|
||||||
if (getMethod == null)
|
|
||||||
return null;
|
|
||||||
|
|
||||||
Type[] arguments = new Type[1];
|
|
||||||
arguments[0] = typeof(object);
|
|
||||||
|
|
||||||
DynamicMethod getter = new DynamicMethod("_", typeof(object), arguments, true);
|
|
||||||
ILGenerator il = getter.GetILGenerator();
|
|
||||||
il.Emit(OpCodes.Ldarg_0);
|
|
||||||
il.Emit(OpCodes.Castclass, propertyInfo.DeclaringType);
|
|
||||||
il.EmitCall(OpCodes.Callvirt, getMethod, null);
|
|
||||||
|
|
||||||
if (!propertyInfo.PropertyType.IsClass)
|
|
||||||
il.Emit(OpCodes.Box, propertyInfo.PropertyType);
|
|
||||||
|
|
||||||
il.Emit(OpCodes.Ret);
|
|
||||||
|
|
||||||
return (GenericGetter)getter.CreateDelegate(typeof(GenericGetter));
|
|
||||||
}
|
|
||||||
|
|
||||||
readonly SafeDictionary<Type, List<Getters>> _getterscache = new SafeDictionary<Type, List<Getters>>();
|
|
||||||
internal List<Getters> GetGetters(Type type)
|
|
||||||
{
|
|
||||||
List<Getters> val = null;
|
|
||||||
if (_getterscache.TryGetValue(type, out val))
|
|
||||||
return val;
|
|
||||||
|
|
||||||
PropertyInfo[] props = type.GetProperties(BindingFlags.NonPublic | BindingFlags.Public | BindingFlags.Instance);
|
|
||||||
List<Getters> getters = new List<Getters>();
|
|
||||||
foreach (PropertyInfo p in props)
|
|
||||||
{
|
|
||||||
if (!p.CanWrite && ShowReadOnlyProperties == false) continue;
|
|
||||||
|
|
||||||
object[] att = p.GetCustomAttributes(typeof(System.Xml.Serialization.XmlIgnoreAttribute), false);
|
|
||||||
if (att != null && att.Length > 0)
|
|
||||||
continue;
|
|
||||||
|
|
||||||
JSON.GenericGetter g = CreateGetMethod(p);
|
|
||||||
if (g != null)
|
|
||||||
{
|
|
||||||
Getters gg = new Getters();
|
|
||||||
gg.Name = p.Name;
|
|
||||||
gg.Getter = g;
|
|
||||||
gg.propertyType = p.PropertyType;
|
|
||||||
getters.Add(gg);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
_getterscache.Add(type, getters);
|
|
||||||
return getters;
|
|
||||||
}
|
|
||||||
|
|
||||||
private object ChangeType(object value, Type conversionType)
|
|
||||||
{
|
|
||||||
if (conversionType == typeof(int))
|
|
||||||
return (int)CreateLong((string)value);
|
|
||||||
|
|
||||||
else if (conversionType == typeof(long))
|
|
||||||
return CreateLong((string)value);
|
|
||||||
|
|
||||||
else if (conversionType == typeof(string))
|
|
||||||
return (string)value;
|
|
||||||
|
|
||||||
else if (conversionType == typeof(Guid))
|
|
||||||
return CreateGuid((string)value);
|
|
||||||
|
|
||||||
else if (conversionType.IsEnum)
|
|
||||||
return CreateEnum(conversionType, (string)value);
|
|
||||||
|
|
||||||
return Convert.ChangeType(value, conversionType, CultureInfo.InvariantCulture);
|
|
||||||
}
|
|
||||||
#endregion
|
|
||||||
|
|
||||||
|
|
||||||
private object ParseDictionary(Dictionary<string, object> d, Dictionary<string, object> globaltypes, Type type)
|
|
||||||
{
|
|
||||||
object tn = "";
|
|
||||||
if (d.TryGetValue("$types", out tn))
|
|
||||||
{
|
|
||||||
UsingGlobalTypes = true;
|
|
||||||
globaltypes = new Dictionary<string, object>();
|
|
||||||
foreach (var kv in (Dictionary<string, object>)tn)
|
|
||||||
{
|
|
||||||
globaltypes.Add((string)kv.Value, kv.Key);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
bool found = d.TryGetValue("$type", out tn);
|
|
||||||
#if !SILVERLIGHT
|
|
||||||
if (found == false && type == typeof(System.Object))
|
|
||||||
{
|
|
||||||
return CreateDataset(d, globaltypes);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
if (found)
|
|
||||||
{
|
|
||||||
if (UsingGlobalTypes)
|
|
||||||
{
|
|
||||||
object tname = "";
|
|
||||||
if (globaltypes.TryGetValue((string)tn, out tname))
|
|
||||||
tn = tname;
|
|
||||||
}
|
|
||||||
type = GetTypeFromCache((string)tn);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (type == null)
|
|
||||||
throw new Exception("Cannot determine type");
|
|
||||||
|
|
||||||
string typename = type.FullName;
|
|
||||||
object o = FastCreateInstance(type);
|
|
||||||
SafeDictionary<string, myPropInfo> props = Getproperties(type, typename);
|
|
||||||
foreach (string name in d.Keys)
|
|
||||||
{
|
|
||||||
if (name == "$map")
|
|
||||||
{
|
|
||||||
ProcessMap(o, props, (Dictionary<string, object>)d[name]);
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
myPropInfo pi;
|
|
||||||
if (props.TryGetValue(name, out pi) == false)
|
|
||||||
continue;
|
|
||||||
if (pi.filled == true)
|
|
||||||
{
|
|
||||||
object v = d[name];
|
|
||||||
|
|
||||||
if (v != null)
|
|
||||||
{
|
|
||||||
object oset = null;
|
|
||||||
|
|
||||||
if (pi.isInt)
|
|
||||||
oset = (int)CreateLong((string)v);
|
|
||||||
#if CUSTOMTYPE
|
|
||||||
else if (pi.isCustomType)
|
|
||||||
oset = CreateCustom((string)v, pi.pt);
|
|
||||||
#endif
|
|
||||||
else if (pi.isLong)
|
|
||||||
oset = CreateLong((string)v);
|
|
||||||
|
|
||||||
else if (pi.isString)
|
|
||||||
oset = (string)v;
|
|
||||||
|
|
||||||
else if (pi.isBool)
|
|
||||||
oset = (bool)v;
|
|
||||||
|
|
||||||
else if (pi.isGenericType && pi.isValueType == false && pi.isDictionary == false)
|
|
||||||
#if SILVERLIGHT
|
|
||||||
oset = CreateGenericList((List<object>)v, pi.pt, pi.bt, globaltypes);
|
|
||||||
#else
|
|
||||||
oset = CreateGenericList((ArrayList)v, pi.pt, pi.bt, globaltypes);
|
|
||||||
#endif
|
|
||||||
else if (pi.isByteArray)
|
|
||||||
oset = Convert.FromBase64String((string)v);
|
|
||||||
|
|
||||||
else if (pi.isArray && pi.isValueType == false)
|
|
||||||
#if SILVERLIGHT
|
|
||||||
oset = CreateArray((List<object>)v, pi.pt, pi.bt, globaltypes);
|
|
||||||
#else
|
|
||||||
oset = CreateArray((ArrayList)v, pi.pt, pi.bt, globaltypes);
|
|
||||||
#endif
|
|
||||||
else if (pi.isGuid)
|
|
||||||
oset = CreateGuid((string)v);
|
|
||||||
#if !SILVERLIGHT
|
|
||||||
else if (pi.isDataSet)
|
|
||||||
oset = CreateDataset((Dictionary<string, object>)v, globaltypes);
|
|
||||||
|
|
||||||
else if (pi.isDataTable)
|
|
||||||
oset = this.CreateDataTable((Dictionary<string, object>)v, globaltypes);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
else if (pi.isStringDictionary)
|
|
||||||
oset = CreateStringKeyDictionary((Dictionary<string, object>)v, pi.pt, pi.GenericTypes, globaltypes);
|
|
||||||
|
|
||||||
#if !SILVERLIGHT
|
|
||||||
else if (pi.isDictionary || pi.isHashtable)
|
|
||||||
oset = CreateDictionary((ArrayList)v, pi.pt, pi.GenericTypes, globaltypes);
|
|
||||||
#else
|
|
||||||
else if (pi.isDictionary)
|
|
||||||
oset = CreateDictionary((List<object>)v, pi.pt, pi.GenericTypes, globaltypes);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
else if (pi.isEnum)
|
|
||||||
oset = CreateEnum(pi.pt, (string)v);
|
|
||||||
|
|
||||||
else if (pi.isDateTime)
|
|
||||||
oset = CreateDateTime((string)v);
|
|
||||||
|
|
||||||
else if (pi.isClass && v is Dictionary<string, object>)
|
|
||||||
oset = ParseDictionary((Dictionary<string, object>)v, globaltypes, pi.pt);
|
|
||||||
|
|
||||||
else if (pi.isValueType)
|
|
||||||
oset = ChangeType(v, pi.changeType);
|
|
||||||
|
|
||||||
#if SILVERLIGHT
|
|
||||||
else if (v is List<object>)
|
|
||||||
oset = CreateArray((List<object>)v, pi.pt, typeof(object), globaltypes);
|
|
||||||
#else
|
|
||||||
else if (v is ArrayList)
|
|
||||||
oset = CreateArray((ArrayList)v, pi.pt, typeof(object), globaltypes);
|
|
||||||
#endif
|
|
||||||
else
|
|
||||||
oset = v;
|
|
||||||
|
|
||||||
if (pi.CanWrite)
|
|
||||||
pi.setter(o, oset);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return o;
|
|
||||||
}
|
|
||||||
|
|
||||||
#if CUSTOMTYPE
|
|
||||||
private object CreateCustom(string v, Type type)
|
|
||||||
{
|
|
||||||
Deserialize d;
|
|
||||||
_customDeserializer.TryGetValue(type, out d);
|
|
||||||
return d(v);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
private void ProcessMap(object obj, SafeDictionary<string, JSON.myPropInfo> props, Dictionary<string, object> dic)
|
|
||||||
{
|
|
||||||
foreach (KeyValuePair<string, object> kv in dic)
|
|
||||||
{
|
|
||||||
myPropInfo p = props[kv.Key];
|
|
||||||
object o = p.getter(obj);
|
|
||||||
Type t = Type.GetType((string)kv.Value);
|
|
||||||
if (t == typeof(Guid))
|
|
||||||
p.setter(obj, CreateGuid((string)o));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private long CreateLong(string s)
|
|
||||||
{
|
|
||||||
long num = 0;
|
|
||||||
bool neg = false;
|
|
||||||
foreach (char cc in s)
|
|
||||||
{
|
|
||||||
if (cc == '-')
|
|
||||||
neg = true;
|
|
||||||
else if (cc == '+')
|
|
||||||
neg = false;
|
|
||||||
else
|
|
||||||
{
|
|
||||||
num *= 10;
|
|
||||||
num += (int)(cc - '0');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return neg ? -num : num;
|
|
||||||
}
|
|
||||||
|
|
||||||
private object CreateEnum(Type pt, string v)
|
|
||||||
{
|
|
||||||
// TODO : optimize create enum
|
|
||||||
#if !SILVERLIGHT
|
|
||||||
return Enum.Parse(pt, v);
|
|
||||||
#else
|
|
||||||
return Enum.Parse(pt, v, true);
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
private Guid CreateGuid(string s)
|
|
||||||
{
|
|
||||||
if (s.Length > 30)
|
|
||||||
return new Guid(s);
|
|
||||||
else
|
|
||||||
return new Guid(Convert.FromBase64String(s));
|
|
||||||
}
|
|
||||||
|
|
||||||
private DateTime CreateDateTime(string value)
|
|
||||||
{
|
|
||||||
bool utc = false;
|
|
||||||
// 0123456789012345678
|
|
||||||
// datetime format = yyyy-MM-dd HH:mm:ss
|
|
||||||
int year = (int)CreateLong(value.Substring(0, 4));
|
|
||||||
int month = (int)CreateLong(value.Substring(5, 2));
|
|
||||||
int day = (int)CreateLong(value.Substring(8, 2));
|
|
||||||
int hour = (int)CreateLong(value.Substring(11, 2));
|
|
||||||
int min = (int)CreateLong(value.Substring(14, 2));
|
|
||||||
int sec = (int)CreateLong(value.Substring(17, 2));
|
|
||||||
|
|
||||||
if (value.EndsWith("Z"))
|
|
||||||
utc = true;
|
|
||||||
|
|
||||||
if (UseUTCDateTime == false && utc == false)
|
|
||||||
return new DateTime(year, month, day, hour, min, sec);
|
|
||||||
else
|
|
||||||
return new DateTime(year, month, day, hour, min, sec, DateTimeKind.Utc).ToLocalTime();
|
|
||||||
}
|
|
||||||
|
|
||||||
#if SILVERLIGHT
|
|
||||||
private object CreateArray(List<object> data, Type pt, Type bt, Dictionary<string, object> globalTypes)
|
|
||||||
{
|
|
||||||
Array col = Array.CreateInstance(bt, data.Count);
|
|
||||||
// create an array of objects
|
|
||||||
for (int i = 0; i < data.Count; i++)// each (object ob in data)
|
|
||||||
{
|
|
||||||
object ob = data[i];
|
|
||||||
if (ob is IDictionary)
|
|
||||||
col.SetValue(ParseDictionary((Dictionary<string, object>)ob, globalTypes, bt), i);
|
|
||||||
else
|
|
||||||
col.SetValue(ChangeType(ob, bt), i);
|
|
||||||
}
|
|
||||||
|
|
||||||
return col;
|
|
||||||
}
|
|
||||||
#else
|
|
||||||
private object CreateArray(ArrayList data, Type pt, Type bt, Dictionary<string, object> globalTypes)
|
|
||||||
{
|
|
||||||
ArrayList col = new ArrayList();
|
|
||||||
// create an array of objects
|
|
||||||
foreach (object ob in data)
|
|
||||||
{
|
|
||||||
if (ob is IDictionary)
|
|
||||||
col.Add(ParseDictionary((Dictionary<string, object>)ob, globalTypes, bt));
|
|
||||||
else
|
|
||||||
col.Add(ChangeType(ob, bt));
|
|
||||||
}
|
|
||||||
return col.ToArray(bt);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
|
|
||||||
#if SILVERLIGHT
|
|
||||||
private object CreateGenericList(List<object> data, Type pt, Type bt, Dictionary<string, object> globalTypes)
|
|
||||||
#else
|
|
||||||
private object CreateGenericList(ArrayList data, Type pt, Type bt, Dictionary<string, object> globalTypes)
|
|
||||||
#endif
|
|
||||||
{
|
|
||||||
IList col = (IList)FastCreateInstance(pt);
|
|
||||||
// create an array of objects
|
|
||||||
foreach (object ob in data)
|
|
||||||
{
|
|
||||||
if (ob is IDictionary)
|
|
||||||
col.Add(ParseDictionary((Dictionary<string, object>)ob, globalTypes, bt));
|
|
||||||
#if SILVERLIGHT
|
|
||||||
else if (ob is List<object>)
|
|
||||||
col.Add(((List<object>)ob).ToArray());
|
|
||||||
#else
|
|
||||||
else if (ob is ArrayList)
|
|
||||||
col.Add(((ArrayList)ob).ToArray());
|
|
||||||
#endif
|
|
||||||
else
|
|
||||||
col.Add(ChangeType(ob, bt));
|
|
||||||
}
|
|
||||||
return col;
|
|
||||||
}
|
|
||||||
|
|
||||||
private object CreateStringKeyDictionary(Dictionary<string, object> reader, Type pt, Type[] types, Dictionary<string, object> globalTypes)
|
|
||||||
{
|
|
||||||
var col = (IDictionary)FastCreateInstance(pt);
|
|
||||||
Type t1 = null;
|
|
||||||
Type t2 = null;
|
|
||||||
if (types != null)
|
|
||||||
{
|
|
||||||
t1 = types[0];
|
|
||||||
t2 = types[1];
|
|
||||||
}
|
|
||||||
|
|
||||||
foreach (KeyValuePair<string, object> values in reader)
|
|
||||||
{
|
|
||||||
var key = values.Key;//ChangeType(values.Key, t1);
|
|
||||||
object val = null;
|
|
||||||
if (values.Value is Dictionary<string, object>)
|
|
||||||
val = ParseDictionary((Dictionary<string, object>)values.Value, globalTypes, t2);
|
|
||||||
else
|
|
||||||
val = ChangeType(values.Value, t2);
|
|
||||||
col.Add(key, val);
|
|
||||||
}
|
|
||||||
|
|
||||||
return col;
|
|
||||||
}
|
|
||||||
|
|
||||||
#if SILVERLIGHT
|
|
||||||
private object CreateDictionary(List<object> reader, Type pt, Type[] types, Dictionary<string, object> globalTypes)
|
|
||||||
#else
|
|
||||||
private object CreateDictionary(ArrayList reader, Type pt, Type[] types, Dictionary<string, object> globalTypes)
|
|
||||||
#endif
|
|
||||||
{
|
|
||||||
IDictionary col = (IDictionary)FastCreateInstance(pt);
|
|
||||||
Type t1 = null;
|
|
||||||
Type t2 = null;
|
|
||||||
if (types != null)
|
|
||||||
{
|
|
||||||
t1 = types[0];
|
|
||||||
t2 = types[1];
|
|
||||||
}
|
|
||||||
|
|
||||||
foreach (Dictionary<string, object> values in reader)
|
|
||||||
{
|
|
||||||
object key = values["k"];
|
|
||||||
object val = values["v"];
|
|
||||||
|
|
||||||
if (key is Dictionary<string, object>)
|
|
||||||
key = ParseDictionary((Dictionary<string, object>)key, globalTypes, t1);
|
|
||||||
else
|
|
||||||
key = ChangeType(key, t1);
|
|
||||||
|
|
||||||
if (val is Dictionary<string, object>)
|
|
||||||
val = ParseDictionary((Dictionary<string, object>)val, globalTypes, t2);
|
|
||||||
else
|
|
||||||
val = ChangeType(val, t2);
|
|
||||||
|
|
||||||
col.Add(key, val);
|
|
||||||
}
|
|
||||||
|
|
||||||
return col;
|
|
||||||
}
|
|
||||||
|
|
||||||
private Type GetChangeType(Type conversionType)
|
|
||||||
{
|
|
||||||
if (conversionType.IsGenericType && conversionType.GetGenericTypeDefinition().Equals(typeof(Nullable<>)))
|
|
||||||
return conversionType.GetGenericArguments()[0];
|
|
||||||
|
|
||||||
return conversionType;
|
|
||||||
}
|
|
||||||
#if !SILVERLIGHT
|
|
||||||
private DataSet CreateDataset(Dictionary<string, object> reader, Dictionary<string, object> globalTypes)
|
|
||||||
{
|
|
||||||
DataSet ds = new DataSet();
|
|
||||||
ds.EnforceConstraints = false;
|
|
||||||
ds.BeginInit();
|
|
||||||
|
|
||||||
// read dataset schema here
|
|
||||||
ReadSchema(reader, ds, globalTypes);
|
|
||||||
|
|
||||||
foreach (KeyValuePair<string, object> pair in reader)
|
|
||||||
{
|
|
||||||
if (pair.Key == "$type" || pair.Key == "$schema") continue;
|
|
||||||
|
|
||||||
ArrayList rows = (ArrayList)pair.Value;
|
|
||||||
if (rows == null) continue;
|
|
||||||
|
|
||||||
DataTable dt = ds.Tables[pair.Key];
|
|
||||||
ReadDataTable(rows, dt);
|
|
||||||
}
|
|
||||||
|
|
||||||
ds.EndInit();
|
|
||||||
|
|
||||||
return ds;
|
|
||||||
}
|
|
||||||
|
|
||||||
private void ReadSchema(Dictionary<string, object> reader, DataSet ds, Dictionary<string, object> globalTypes)
|
|
||||||
{
|
|
||||||
var schema = reader["$schema"];
|
|
||||||
|
|
||||||
if (schema is string)
|
|
||||||
{
|
|
||||||
TextReader tr = new StringReader((string)schema);
|
|
||||||
ds.ReadXmlSchema(tr);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
DatasetSchema ms = (DatasetSchema)ParseDictionary((Dictionary<string, object>)schema, globalTypes, typeof(DatasetSchema));
|
|
||||||
ds.DataSetName = ms.Name;
|
|
||||||
for (int i = 0; i < ms.Info.Count; i += 3)
|
|
||||||
{
|
|
||||||
if (ds.Tables.Contains(ms.Info[i]) == false)
|
|
||||||
ds.Tables.Add(ms.Info[i]);
|
|
||||||
ds.Tables[ms.Info[i]].Columns.Add(ms.Info[i + 1], Type.GetType(ms.Info[i + 2]));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void ReadDataTable(ArrayList rows, DataTable dt)
|
|
||||||
{
|
|
||||||
dt.BeginInit();
|
|
||||||
dt.BeginLoadData();
|
|
||||||
List<int> guidcols = new List<int>();
|
|
||||||
List<int> datecol = new List<int>();
|
|
||||||
|
|
||||||
foreach (DataColumn c in dt.Columns)
|
|
||||||
{
|
|
||||||
if (c.DataType == typeof(Guid) || c.DataType == typeof(Guid?))
|
|
||||||
guidcols.Add(c.Ordinal);
|
|
||||||
if (UseUTCDateTime && (c.DataType == typeof(DateTime) || c.DataType == typeof(DateTime?)))
|
|
||||||
datecol.Add(c.Ordinal);
|
|
||||||
}
|
|
||||||
|
|
||||||
foreach (ArrayList row in rows)
|
|
||||||
{
|
|
||||||
object[] v = new object[row.Count];
|
|
||||||
row.CopyTo(v, 0);
|
|
||||||
foreach (int i in guidcols)
|
|
||||||
{
|
|
||||||
string s = (string)v[i];
|
|
||||||
if (s != null && s.Length < 36)
|
|
||||||
v[i] = new Guid(Convert.FromBase64String(s));
|
|
||||||
}
|
|
||||||
if (UseUTCDateTime)
|
|
||||||
{
|
|
||||||
foreach (int i in datecol)
|
|
||||||
{
|
|
||||||
string s = (string)v[i];
|
|
||||||
if (s != null)
|
|
||||||
v[i] = CreateDateTime(s);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
dt.Rows.Add(v);
|
|
||||||
}
|
|
||||||
|
|
||||||
dt.EndLoadData();
|
|
||||||
dt.EndInit();
|
|
||||||
}
|
|
||||||
|
|
||||||
DataTable CreateDataTable(Dictionary<string, object> reader, Dictionary<string, object> globalTypes)
|
|
||||||
{
|
|
||||||
var dt = new DataTable();
|
|
||||||
|
|
||||||
// read dataset schema here
|
|
||||||
var schema = reader["$schema"];
|
|
||||||
|
|
||||||
if (schema is string)
|
|
||||||
{
|
|
||||||
TextReader tr = new StringReader((string)schema);
|
|
||||||
dt.ReadXmlSchema(tr);
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
var ms = (DatasetSchema)this.ParseDictionary((Dictionary<string, object>)schema, globalTypes, typeof(DatasetSchema));
|
|
||||||
dt.TableName = ms.Info[0];
|
|
||||||
for (int i = 0; i < ms.Info.Count; i += 3)
|
|
||||||
{
|
|
||||||
dt.Columns.Add(ms.Info[i + 1], Type.GetType(ms.Info[i + 2]));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
foreach (var pair in reader)
|
|
||||||
{
|
|
||||||
if (pair.Key == "$type" || pair.Key == "$schema")
|
|
||||||
continue;
|
|
||||||
|
|
||||||
var rows = (ArrayList)pair.Value;
|
|
||||||
if (rows == null)
|
|
||||||
continue;
|
|
||||||
|
|
||||||
if (!dt.TableName.Equals(pair.Key, StringComparison.InvariantCultureIgnoreCase))
|
|
||||||
continue;
|
|
||||||
|
|
||||||
ReadDataTable(rows, dt);
|
|
||||||
}
|
|
||||||
|
|
||||||
return dt;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,408 +0,0 @@
|
||||||
//http://fastjson.codeplex.com/
|
|
||||||
|
|
||||||
using System;
|
|
||||||
using System.Collections;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Text;
|
|
||||||
|
|
||||||
namespace Exceptron.Driver.fastJSON
|
|
||||||
{
|
|
||||||
/// <summary>
|
|
||||||
/// This class encodes and decodes JSON strings.
|
|
||||||
/// Spec. details, see http://www.json.org/
|
|
||||||
///
|
|
||||||
/// JSON uses Arrays and Objects. These correspond here to the datatypes ArrayList and Hashtable.
|
|
||||||
/// All numbers are parsed to doubles.
|
|
||||||
/// </summary>
|
|
||||||
internal class JsonParser
|
|
||||||
{
|
|
||||||
enum Token
|
|
||||||
{
|
|
||||||
None = -1, // Used to denote no Lookahead available
|
|
||||||
Curly_Open,
|
|
||||||
Curly_Close,
|
|
||||||
Squared_Open,
|
|
||||||
Squared_Close,
|
|
||||||
Colon,
|
|
||||||
Comma,
|
|
||||||
String,
|
|
||||||
Number,
|
|
||||||
True,
|
|
||||||
False,
|
|
||||||
Null
|
|
||||||
}
|
|
||||||
|
|
||||||
readonly char[] json;
|
|
||||||
readonly StringBuilder s = new StringBuilder();
|
|
||||||
Token lookAheadToken = Token.None;
|
|
||||||
int index;
|
|
||||||
|
|
||||||
internal JsonParser(string json)
|
|
||||||
{
|
|
||||||
this.json = json.ToCharArray();
|
|
||||||
}
|
|
||||||
|
|
||||||
public object Decode()
|
|
||||||
{
|
|
||||||
return ParseValue();
|
|
||||||
}
|
|
||||||
|
|
||||||
private Dictionary<string, object> ParseObject()
|
|
||||||
{
|
|
||||||
Dictionary<string, object> table = new Dictionary<string, object>();
|
|
||||||
|
|
||||||
ConsumeToken(); // {
|
|
||||||
|
|
||||||
while (true)
|
|
||||||
{
|
|
||||||
switch (LookAhead())
|
|
||||||
{
|
|
||||||
|
|
||||||
case Token.Comma:
|
|
||||||
ConsumeToken();
|
|
||||||
break;
|
|
||||||
|
|
||||||
case Token.Curly_Close:
|
|
||||||
ConsumeToken();
|
|
||||||
return table;
|
|
||||||
|
|
||||||
default:
|
|
||||||
{
|
|
||||||
|
|
||||||
// name
|
|
||||||
string name = ParseString();
|
|
||||||
|
|
||||||
// :
|
|
||||||
if (NextToken() != Token.Colon)
|
|
||||||
{
|
|
||||||
throw new Exception("Expected colon at index " + index);
|
|
||||||
}
|
|
||||||
|
|
||||||
// value
|
|
||||||
object value = ParseValue();
|
|
||||||
|
|
||||||
table[name] = value;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
#if SILVERLIGHT
|
|
||||||
private List<object> ParseArray()
|
|
||||||
{
|
|
||||||
List<object> array = new List<object>();
|
|
||||||
#else
|
|
||||||
private ArrayList ParseArray()
|
|
||||||
{
|
|
||||||
ArrayList array = new ArrayList();
|
|
||||||
#endif
|
|
||||||
ConsumeToken(); // [
|
|
||||||
|
|
||||||
while (true)
|
|
||||||
{
|
|
||||||
switch (LookAhead())
|
|
||||||
{
|
|
||||||
|
|
||||||
case Token.Comma:
|
|
||||||
ConsumeToken();
|
|
||||||
break;
|
|
||||||
|
|
||||||
case Token.Squared_Close:
|
|
||||||
ConsumeToken();
|
|
||||||
return array;
|
|
||||||
|
|
||||||
default:
|
|
||||||
{
|
|
||||||
array.Add(ParseValue());
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private object ParseValue()
|
|
||||||
{
|
|
||||||
switch (LookAhead())
|
|
||||||
{
|
|
||||||
case Token.Number:
|
|
||||||
return ParseNumber();
|
|
||||||
|
|
||||||
case Token.String:
|
|
||||||
return ParseString();
|
|
||||||
|
|
||||||
case Token.Curly_Open:
|
|
||||||
return ParseObject();
|
|
||||||
|
|
||||||
case Token.Squared_Open:
|
|
||||||
return ParseArray();
|
|
||||||
|
|
||||||
case Token.True:
|
|
||||||
ConsumeToken();
|
|
||||||
return true;
|
|
||||||
|
|
||||||
case Token.False:
|
|
||||||
ConsumeToken();
|
|
||||||
return false;
|
|
||||||
|
|
||||||
case Token.Null:
|
|
||||||
ConsumeToken();
|
|
||||||
return null;
|
|
||||||
}
|
|
||||||
|
|
||||||
throw new Exception("Unrecognized token at index" + index);
|
|
||||||
}
|
|
||||||
|
|
||||||
private string ParseString()
|
|
||||||
{
|
|
||||||
ConsumeToken(); // "
|
|
||||||
|
|
||||||
s.Length = 0;
|
|
||||||
|
|
||||||
int runIndex = -1;
|
|
||||||
|
|
||||||
while (index < json.Length)
|
|
||||||
{
|
|
||||||
var c = json[index++];
|
|
||||||
|
|
||||||
if (c == '"')
|
|
||||||
{
|
|
||||||
if (runIndex != -1)
|
|
||||||
{
|
|
||||||
if (s.Length == 0)
|
|
||||||
return new string(json, runIndex, index - runIndex - 1);
|
|
||||||
|
|
||||||
s.Append(json, runIndex, index - runIndex - 1);
|
|
||||||
}
|
|
||||||
return s.ToString();
|
|
||||||
}
|
|
||||||
|
|
||||||
if (c != '\\')
|
|
||||||
{
|
|
||||||
if (runIndex == -1)
|
|
||||||
runIndex = index - 1;
|
|
||||||
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (index == json.Length) break;
|
|
||||||
|
|
||||||
if (runIndex != -1)
|
|
||||||
{
|
|
||||||
s.Append(json, runIndex, index - runIndex - 1);
|
|
||||||
runIndex = -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
switch (json[index++])
|
|
||||||
{
|
|
||||||
case '"':
|
|
||||||
s.Append('"');
|
|
||||||
break;
|
|
||||||
|
|
||||||
case '\\':
|
|
||||||
s.Append('\\');
|
|
||||||
break;
|
|
||||||
|
|
||||||
case '/':
|
|
||||||
s.Append('/');
|
|
||||||
break;
|
|
||||||
|
|
||||||
case 'b':
|
|
||||||
s.Append('\b');
|
|
||||||
break;
|
|
||||||
|
|
||||||
case 'f':
|
|
||||||
s.Append('\f');
|
|
||||||
break;
|
|
||||||
|
|
||||||
case 'n':
|
|
||||||
s.Append('\n');
|
|
||||||
break;
|
|
||||||
|
|
||||||
case 'r':
|
|
||||||
s.Append('\r');
|
|
||||||
break;
|
|
||||||
|
|
||||||
case 't':
|
|
||||||
s.Append('\t');
|
|
||||||
break;
|
|
||||||
|
|
||||||
case 'u':
|
|
||||||
{
|
|
||||||
int remainingLength = json.Length - index;
|
|
||||||
if (remainingLength < 4) break;
|
|
||||||
|
|
||||||
// parse the 32 bit hex into an integer codepoint
|
|
||||||
uint codePoint = ParseUnicode(json[index], json[index + 1], json[index + 2], json[index + 3]);
|
|
||||||
s.Append((char)codePoint);
|
|
||||||
|
|
||||||
// skip 4 chars
|
|
||||||
index += 4;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
throw new Exception("Unexpectedly reached end of string");
|
|
||||||
}
|
|
||||||
|
|
||||||
private uint ParseSingleChar(char c1, uint multipliyer)
|
|
||||||
{
|
|
||||||
uint p1 = 0;
|
|
||||||
if (c1 >= '0' && c1 <= '9')
|
|
||||||
p1 = (uint)(c1 - '0') * multipliyer;
|
|
||||||
else if (c1 >= 'A' && c1 <= 'F')
|
|
||||||
p1 = (uint)((c1 - 'A') + 10) * multipliyer;
|
|
||||||
else if (c1 >= 'a' && c1 <= 'f')
|
|
||||||
p1 = (uint)((c1 - 'a') + 10) * multipliyer;
|
|
||||||
return p1;
|
|
||||||
}
|
|
||||||
|
|
||||||
private uint ParseUnicode(char c1, char c2, char c3, char c4)
|
|
||||||
{
|
|
||||||
uint p1 = ParseSingleChar(c1, 0x1000);
|
|
||||||
uint p2 = ParseSingleChar(c2, 0x100);
|
|
||||||
uint p3 = ParseSingleChar(c3, 0x10);
|
|
||||||
uint p4 = ParseSingleChar(c4, 1);
|
|
||||||
|
|
||||||
return p1 + p2 + p3 + p4;
|
|
||||||
}
|
|
||||||
|
|
||||||
private string ParseNumber()
|
|
||||||
{
|
|
||||||
ConsumeToken();
|
|
||||||
|
|
||||||
// Need to start back one place because the first digit is also a token and would have been consumed
|
|
||||||
var startIndex = index - 1;
|
|
||||||
|
|
||||||
do
|
|
||||||
{
|
|
||||||
var c = json[index];
|
|
||||||
|
|
||||||
if ((c >= '0' && c <= '9') || c == '.' || c == '-' || c == '+' || c == 'e' || c == 'E')
|
|
||||||
{
|
|
||||||
if (++index == json.Length) throw new Exception("Unexpected end of string whilst parsing number");
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
break;
|
|
||||||
} while (true);
|
|
||||||
|
|
||||||
return new string(json, startIndex, index - startIndex);
|
|
||||||
}
|
|
||||||
|
|
||||||
private Token LookAhead()
|
|
||||||
{
|
|
||||||
if (lookAheadToken != Token.None) return lookAheadToken;
|
|
||||||
|
|
||||||
return lookAheadToken = NextTokenCore();
|
|
||||||
}
|
|
||||||
|
|
||||||
private void ConsumeToken()
|
|
||||||
{
|
|
||||||
lookAheadToken = Token.None;
|
|
||||||
}
|
|
||||||
|
|
||||||
private Token NextToken()
|
|
||||||
{
|
|
||||||
var result = lookAheadToken != Token.None ? lookAheadToken : NextTokenCore();
|
|
||||||
|
|
||||||
lookAheadToken = Token.None;
|
|
||||||
|
|
||||||
return result;
|
|
||||||
}
|
|
||||||
|
|
||||||
private Token NextTokenCore()
|
|
||||||
{
|
|
||||||
char c;
|
|
||||||
|
|
||||||
// Skip past whitespace
|
|
||||||
do
|
|
||||||
{
|
|
||||||
c = json[index];
|
|
||||||
|
|
||||||
if (c > ' ') break;
|
|
||||||
if (c != ' ' && c != '\t' && c != '\n' && c != '\r') break;
|
|
||||||
|
|
||||||
} while (++index < json.Length);
|
|
||||||
|
|
||||||
if (index == json.Length)
|
|
||||||
{
|
|
||||||
throw new Exception("Reached end of string unexpectedly");
|
|
||||||
}
|
|
||||||
|
|
||||||
c = json[index];
|
|
||||||
|
|
||||||
index++;
|
|
||||||
|
|
||||||
//if (c >= '0' && c <= '9')
|
|
||||||
// return Token.Number;
|
|
||||||
|
|
||||||
switch (c)
|
|
||||||
{
|
|
||||||
case '{':
|
|
||||||
return Token.Curly_Open;
|
|
||||||
|
|
||||||
case '}':
|
|
||||||
return Token.Curly_Close;
|
|
||||||
|
|
||||||
case '[':
|
|
||||||
return Token.Squared_Open;
|
|
||||||
|
|
||||||
case ']':
|
|
||||||
return Token.Squared_Close;
|
|
||||||
|
|
||||||
case ',':
|
|
||||||
return Token.Comma;
|
|
||||||
|
|
||||||
case '"':
|
|
||||||
return Token.String;
|
|
||||||
|
|
||||||
case '0': case '1': case '2': case '3': case '4':
|
|
||||||
case '5': case '6': case '7': case '8': case '9':
|
|
||||||
case '-': case '+': case '.':
|
|
||||||
return Token.Number;
|
|
||||||
|
|
||||||
case ':':
|
|
||||||
return Token.Colon;
|
|
||||||
|
|
||||||
case 'f':
|
|
||||||
if (json.Length - index >= 4 &&
|
|
||||||
json[index + 0] == 'a' &&
|
|
||||||
json[index + 1] == 'l' &&
|
|
||||||
json[index + 2] == 's' &&
|
|
||||||
json[index + 3] == 'e')
|
|
||||||
{
|
|
||||||
index += 4;
|
|
||||||
return Token.False;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
|
|
||||||
case 't':
|
|
||||||
if (json.Length - index >= 3 &&
|
|
||||||
json[index + 0] == 'r' &&
|
|
||||||
json[index + 1] == 'u' &&
|
|
||||||
json[index + 2] == 'e')
|
|
||||||
{
|
|
||||||
index += 3;
|
|
||||||
return Token.True;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
|
|
||||||
case 'n':
|
|
||||||
if (json.Length - index >= 3 &&
|
|
||||||
json[index + 0] == 'u' &&
|
|
||||||
json[index + 1] == 'l' &&
|
|
||||||
json[index + 2] == 'l')
|
|
||||||
{
|
|
||||||
index += 3;
|
|
||||||
return Token.Null;
|
|
||||||
}
|
|
||||||
break;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
throw new Exception("Could not find token at index " + --index);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,518 +0,0 @@
|
||||||
//http://fastjson.codeplex.com/
|
|
||||||
|
|
||||||
using System;
|
|
||||||
using System.Collections;
|
|
||||||
using System.Collections.Generic;
|
|
||||||
using System.Data;
|
|
||||||
using System.Globalization;
|
|
||||||
using System.IO;
|
|
||||||
using System.Text;
|
|
||||||
|
|
||||||
namespace Exceptron.Driver.fastJSON
|
|
||||||
{
|
|
||||||
internal class JSONSerializer
|
|
||||||
{
|
|
||||||
private readonly StringBuilder _output = new StringBuilder();
|
|
||||||
readonly bool useMinimalDataSetSchema;
|
|
||||||
readonly bool fastguid = true;
|
|
||||||
readonly bool useExtension = true;
|
|
||||||
readonly bool serializeNulls = true;
|
|
||||||
readonly int _MAX_DEPTH = 10;
|
|
||||||
bool _Indent = false;
|
|
||||||
bool _useGlobalTypes = true;
|
|
||||||
int _current_depth = 0;
|
|
||||||
private Dictionary<string, int> _globalTypes = new Dictionary<string, int>();
|
|
||||||
|
|
||||||
internal JSONSerializer(bool UseMinimalDataSetSchema, bool UseFastGuid, bool UseExtensions, bool SerializeNulls, bool IndentOutput)
|
|
||||||
{
|
|
||||||
this.useMinimalDataSetSchema = UseMinimalDataSetSchema;
|
|
||||||
this.fastguid = UseFastGuid;
|
|
||||||
this.useExtension = UseExtensions;
|
|
||||||
_Indent = IndentOutput;
|
|
||||||
this.serializeNulls = SerializeNulls;
|
|
||||||
if (useExtension == false)
|
|
||||||
_useGlobalTypes = false;
|
|
||||||
}
|
|
||||||
|
|
||||||
internal string ConvertToJSON(object obj)
|
|
||||||
{
|
|
||||||
WriteValue(obj);
|
|
||||||
|
|
||||||
string str = "";
|
|
||||||
if (_useGlobalTypes)
|
|
||||||
{
|
|
||||||
StringBuilder sb = new StringBuilder();
|
|
||||||
sb.Append("{\"$types\":{");
|
|
||||||
bool pendingSeparator = false;
|
|
||||||
foreach (var kv in _globalTypes)
|
|
||||||
{
|
|
||||||
if (pendingSeparator) sb.Append(',');
|
|
||||||
pendingSeparator = true;
|
|
||||||
sb.Append("\"");
|
|
||||||
sb.Append(kv.Key);
|
|
||||||
sb.Append("\":\"");
|
|
||||||
sb.Append(kv.Value);
|
|
||||||
sb.Append("\"");
|
|
||||||
}
|
|
||||||
sb.Append("},");
|
|
||||||
str = sb.ToString() + _output.ToString();
|
|
||||||
}
|
|
||||||
else
|
|
||||||
str = _output.ToString();
|
|
||||||
|
|
||||||
return str;
|
|
||||||
}
|
|
||||||
|
|
||||||
private void WriteValue(object obj)
|
|
||||||
{
|
|
||||||
if (obj == null || obj is DBNull)
|
|
||||||
_output.Append("null");
|
|
||||||
|
|
||||||
else if (obj is string || obj is char)
|
|
||||||
WriteString((string)obj);
|
|
||||||
|
|
||||||
else if (obj is Guid)
|
|
||||||
WriteGuid((Guid)obj);
|
|
||||||
|
|
||||||
else if (obj is bool)
|
|
||||||
_output.Append(((bool)obj) ? "true" : "false"); // conform to standard
|
|
||||||
|
|
||||||
else if (
|
|
||||||
obj is int || obj is long || obj is double ||
|
|
||||||
obj is decimal || obj is float ||
|
|
||||||
obj is byte || obj is short ||
|
|
||||||
obj is sbyte || obj is ushort ||
|
|
||||||
obj is uint || obj is ulong
|
|
||||||
)
|
|
||||||
_output.Append(((IConvertible)obj).ToString(NumberFormatInfo.InvariantInfo));
|
|
||||||
|
|
||||||
else if (obj is DateTime)
|
|
||||||
WriteDateTime((DateTime)obj);
|
|
||||||
|
|
||||||
else if (obj is IDictionary && obj.GetType().IsGenericType && obj.GetType().GetGenericArguments()[0] == typeof(string))
|
|
||||||
WriteStringDictionary((IDictionary)obj);
|
|
||||||
|
|
||||||
else if (obj is IDictionary)
|
|
||||||
WriteDictionary((IDictionary)obj);
|
|
||||||
#if !SILVERLIGHT
|
|
||||||
else if (obj is DataSet)
|
|
||||||
WriteDataset((DataSet)obj);
|
|
||||||
|
|
||||||
else if (obj is DataTable)
|
|
||||||
this.WriteDataTable((DataTable)obj);
|
|
||||||
#endif
|
|
||||||
else if (obj is byte[])
|
|
||||||
WriteBytes((byte[])obj);
|
|
||||||
|
|
||||||
else if (obj is Array || obj is IList || obj is ICollection)
|
|
||||||
WriteArray((IEnumerable)obj);
|
|
||||||
|
|
||||||
else if (obj is Enum)
|
|
||||||
WriteEnum((Enum)obj);
|
|
||||||
|
|
||||||
#if CUSTOMTYPE
|
|
||||||
else if (JSON.Instance.IsTypeRegistered(obj.GetType()))
|
|
||||||
WriteCustom(obj);
|
|
||||||
#endif
|
|
||||||
else
|
|
||||||
WriteObject(obj);
|
|
||||||
}
|
|
||||||
|
|
||||||
#if CUSTOMTYPE
|
|
||||||
private void WriteCustom(object obj)
|
|
||||||
{
|
|
||||||
Serialize s;
|
|
||||||
JSON.Instance._customSerializer.TryGetValue(obj.GetType(), out s);
|
|
||||||
WriteStringFast(s(obj));
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
private void WriteEnum(Enum e)
|
|
||||||
{
|
|
||||||
// TODO : optimize enum write
|
|
||||||
WriteStringFast(e.ToString());
|
|
||||||
}
|
|
||||||
|
|
||||||
private void WriteGuid(Guid g)
|
|
||||||
{
|
|
||||||
if (fastguid == false)
|
|
||||||
WriteStringFast(g.ToString());
|
|
||||||
else
|
|
||||||
WriteBytes(g.ToByteArray());
|
|
||||||
}
|
|
||||||
|
|
||||||
private void WriteBytes(byte[] bytes)
|
|
||||||
{
|
|
||||||
#if !SILVERLIGHT
|
|
||||||
WriteStringFast(Convert.ToBase64String(bytes, 0, bytes.Length, Base64FormattingOptions.None));
|
|
||||||
#else
|
|
||||||
WriteStringFast(Convert.ToBase64String(bytes, 0, bytes.Length));
|
|
||||||
#endif
|
|
||||||
}
|
|
||||||
|
|
||||||
private void WriteDateTime(DateTime dateTime)
|
|
||||||
{
|
|
||||||
// datetime format standard : yyyy-MM-dd HH:mm:ss
|
|
||||||
DateTime dt = dateTime;
|
|
||||||
if (JSON.Instance.UseUTCDateTime)
|
|
||||||
dt = dateTime.ToUniversalTime();
|
|
||||||
|
|
||||||
_output.Append("\"");
|
|
||||||
_output.Append(dt.Year.ToString("0000", NumberFormatInfo.InvariantInfo));
|
|
||||||
_output.Append("-");
|
|
||||||
_output.Append(dt.Month.ToString("00", NumberFormatInfo.InvariantInfo));
|
|
||||||
_output.Append("-");
|
|
||||||
_output.Append(dt.Day.ToString("00", NumberFormatInfo.InvariantInfo));
|
|
||||||
_output.Append(" ");
|
|
||||||
_output.Append(dt.Hour.ToString("00", NumberFormatInfo.InvariantInfo));
|
|
||||||
_output.Append(":");
|
|
||||||
_output.Append(dt.Minute.ToString("00", NumberFormatInfo.InvariantInfo));
|
|
||||||
_output.Append(":");
|
|
||||||
_output.Append(dt.Second.ToString("00", NumberFormatInfo.InvariantInfo));
|
|
||||||
|
|
||||||
if (JSON.Instance.UseUTCDateTime)
|
|
||||||
_output.Append("Z");
|
|
||||||
|
|
||||||
_output.Append("\"");
|
|
||||||
}
|
|
||||||
#if !SILVERLIGHT
|
|
||||||
private DatasetSchema GetSchema(DataTable ds)
|
|
||||||
{
|
|
||||||
if (ds == null) return null;
|
|
||||||
|
|
||||||
DatasetSchema m = new DatasetSchema();
|
|
||||||
m.Info = new List<string>();
|
|
||||||
m.Name = ds.TableName;
|
|
||||||
|
|
||||||
foreach (DataColumn c in ds.Columns)
|
|
||||||
{
|
|
||||||
m.Info.Add(ds.TableName);
|
|
||||||
m.Info.Add(c.ColumnName);
|
|
||||||
m.Info.Add(c.DataType.ToString());
|
|
||||||
}
|
|
||||||
// TODO : serialize relations and constraints here
|
|
||||||
|
|
||||||
return m;
|
|
||||||
}
|
|
||||||
|
|
||||||
private DatasetSchema GetSchema(DataSet ds)
|
|
||||||
{
|
|
||||||
if (ds == null) return null;
|
|
||||||
|
|
||||||
DatasetSchema m = new DatasetSchema();
|
|
||||||
m.Info = new List<string>();
|
|
||||||
m.Name = ds.DataSetName;
|
|
||||||
|
|
||||||
foreach (DataTable t in ds.Tables)
|
|
||||||
{
|
|
||||||
foreach (DataColumn c in t.Columns)
|
|
||||||
{
|
|
||||||
m.Info.Add(t.TableName);
|
|
||||||
m.Info.Add(c.ColumnName);
|
|
||||||
m.Info.Add(c.DataType.ToString());
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// TODO : serialize relations and constraints here
|
|
||||||
|
|
||||||
return m;
|
|
||||||
}
|
|
||||||
|
|
||||||
private string GetXmlSchema(DataTable dt)
|
|
||||||
{
|
|
||||||
using (var writer = new StringWriter())
|
|
||||||
{
|
|
||||||
dt.WriteXmlSchema(writer);
|
|
||||||
return dt.ToString();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void WriteDataset(DataSet ds)
|
|
||||||
{
|
|
||||||
_output.Append('{');
|
|
||||||
if (useExtension)
|
|
||||||
{
|
|
||||||
WritePair("$schema", useMinimalDataSetSchema ? (object)GetSchema(ds) : ds.GetXmlSchema());
|
|
||||||
_output.Append(',');
|
|
||||||
}
|
|
||||||
bool tablesep = false;
|
|
||||||
foreach (DataTable table in ds.Tables)
|
|
||||||
{
|
|
||||||
if (tablesep) _output.Append(",");
|
|
||||||
tablesep = true;
|
|
||||||
WriteDataTableData(table);
|
|
||||||
}
|
|
||||||
// end dataset
|
|
||||||
_output.Append('}');
|
|
||||||
}
|
|
||||||
|
|
||||||
private void WriteDataTableData(DataTable table)
|
|
||||||
{
|
|
||||||
_output.Append('\"');
|
|
||||||
_output.Append(table.TableName);
|
|
||||||
_output.Append("\":[");
|
|
||||||
DataColumnCollection cols = table.Columns;
|
|
||||||
bool rowseparator = false;
|
|
||||||
foreach (DataRow row in table.Rows)
|
|
||||||
{
|
|
||||||
if (rowseparator) _output.Append(",");
|
|
||||||
rowseparator = true;
|
|
||||||
_output.Append('[');
|
|
||||||
|
|
||||||
bool pendingSeperator = false;
|
|
||||||
foreach (DataColumn column in cols)
|
|
||||||
{
|
|
||||||
if (pendingSeperator) _output.Append(',');
|
|
||||||
WriteValue(row[column]);
|
|
||||||
pendingSeperator = true;
|
|
||||||
}
|
|
||||||
_output.Append(']');
|
|
||||||
}
|
|
||||||
|
|
||||||
_output.Append(']');
|
|
||||||
}
|
|
||||||
|
|
||||||
void WriteDataTable(DataTable dt)
|
|
||||||
{
|
|
||||||
this._output.Append('{');
|
|
||||||
if (this.useExtension)
|
|
||||||
{
|
|
||||||
this.WritePair("$schema", this.useMinimalDataSetSchema ? (object)this.GetSchema(dt) : this.GetXmlSchema(dt));
|
|
||||||
this._output.Append(',');
|
|
||||||
}
|
|
||||||
|
|
||||||
WriteDataTableData(dt);
|
|
||||||
|
|
||||||
// end datatable
|
|
||||||
this._output.Append('}');
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
bool _firstWritten = false;
|
|
||||||
private void WriteObject(object obj)
|
|
||||||
{
|
|
||||||
Indent();
|
|
||||||
if (_useGlobalTypes == false)
|
|
||||||
_output.Append('{');
|
|
||||||
else
|
|
||||||
{
|
|
||||||
if (_firstWritten)
|
|
||||||
_output.Append("{");
|
|
||||||
}
|
|
||||||
_firstWritten = true;
|
|
||||||
_current_depth++;
|
|
||||||
if (_current_depth > _MAX_DEPTH)
|
|
||||||
throw new Exception("Serializer encountered maximum depth of " + _MAX_DEPTH);
|
|
||||||
|
|
||||||
|
|
||||||
Dictionary<string, string> map = new Dictionary<string, string>();
|
|
||||||
Type t = obj.GetType();
|
|
||||||
bool append = false;
|
|
||||||
if (useExtension)
|
|
||||||
{
|
|
||||||
if (_useGlobalTypes == false)
|
|
||||||
WritePairFast("$type", JSON.Instance.GetTypeAssemblyName(t));
|
|
||||||
else
|
|
||||||
{
|
|
||||||
int dt = 0;
|
|
||||||
string ct = JSON.Instance.GetTypeAssemblyName(t);
|
|
||||||
if (_globalTypes.TryGetValue(ct, out dt) == false)
|
|
||||||
{
|
|
||||||
dt = _globalTypes.Count + 1;
|
|
||||||
_globalTypes.Add(ct, dt);
|
|
||||||
}
|
|
||||||
WritePairFast("$type", dt.ToString());
|
|
||||||
}
|
|
||||||
append = true;
|
|
||||||
}
|
|
||||||
|
|
||||||
List<Getters> g = JSON.Instance.GetGetters(t);
|
|
||||||
foreach (var p in g)
|
|
||||||
{
|
|
||||||
if (append)
|
|
||||||
_output.Append(',');
|
|
||||||
object o = p.Getter(obj);
|
|
||||||
if ((o == null || o is DBNull) && serializeNulls == false)
|
|
||||||
append = false;
|
|
||||||
else
|
|
||||||
{
|
|
||||||
WritePair(p.Name, o);
|
|
||||||
if (o != null && useExtension)
|
|
||||||
{
|
|
||||||
Type tt = o.GetType();
|
|
||||||
if (tt == typeof(System.Object))
|
|
||||||
map.Add(p.Name, tt.ToString());
|
|
||||||
}
|
|
||||||
append = true;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if (map.Count > 0 && useExtension)
|
|
||||||
{
|
|
||||||
_output.Append(",\"$map\":");
|
|
||||||
WriteStringDictionary(map);
|
|
||||||
}
|
|
||||||
_current_depth--;
|
|
||||||
Indent();
|
|
||||||
_output.Append('}');
|
|
||||||
_current_depth--;
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
private void Indent()
|
|
||||||
{
|
|
||||||
Indent(false);
|
|
||||||
}
|
|
||||||
|
|
||||||
private void Indent(bool dec)
|
|
||||||
{
|
|
||||||
if (_Indent)
|
|
||||||
{
|
|
||||||
_output.Append("\r\n");
|
|
||||||
for (int i = 0; i < _current_depth - (dec ? 1 : 0); i++)
|
|
||||||
_output.Append("\t");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
private void WritePairFast(string name, string value)
|
|
||||||
{
|
|
||||||
if ((value == null) && serializeNulls == false)
|
|
||||||
return;
|
|
||||||
Indent();
|
|
||||||
WriteStringFast(name);
|
|
||||||
|
|
||||||
_output.Append(':');
|
|
||||||
|
|
||||||
WriteStringFast(value);
|
|
||||||
}
|
|
||||||
|
|
||||||
private void WritePair(string name, object value)
|
|
||||||
{
|
|
||||||
if ((value == null || value is DBNull) && serializeNulls == false)
|
|
||||||
return;
|
|
||||||
Indent();
|
|
||||||
WriteStringFast(name);
|
|
||||||
|
|
||||||
_output.Append(':');
|
|
||||||
|
|
||||||
WriteValue(value);
|
|
||||||
}
|
|
||||||
|
|
||||||
private void WriteArray(IEnumerable array)
|
|
||||||
{
|
|
||||||
Indent();
|
|
||||||
_output.Append('[');
|
|
||||||
|
|
||||||
bool pendingSeperator = false;
|
|
||||||
|
|
||||||
foreach (object obj in array)
|
|
||||||
{
|
|
||||||
Indent();
|
|
||||||
if (pendingSeperator) _output.Append(',');
|
|
||||||
|
|
||||||
WriteValue(obj);
|
|
||||||
|
|
||||||
pendingSeperator = true;
|
|
||||||
}
|
|
||||||
Indent();
|
|
||||||
_output.Append(']');
|
|
||||||
}
|
|
||||||
|
|
||||||
private void WriteStringDictionary(IDictionary dic)
|
|
||||||
{
|
|
||||||
Indent();
|
|
||||||
_output.Append('{');
|
|
||||||
|
|
||||||
bool pendingSeparator = false;
|
|
||||||
|
|
||||||
foreach (DictionaryEntry entry in dic)
|
|
||||||
{
|
|
||||||
if (pendingSeparator) _output.Append(',');
|
|
||||||
|
|
||||||
WritePair((string)entry.Key, entry.Value);
|
|
||||||
|
|
||||||
pendingSeparator = true;
|
|
||||||
}
|
|
||||||
Indent();
|
|
||||||
_output.Append('}');
|
|
||||||
}
|
|
||||||
|
|
||||||
private void WriteDictionary(IDictionary dic)
|
|
||||||
{
|
|
||||||
Indent();
|
|
||||||
_output.Append('[');
|
|
||||||
|
|
||||||
bool pendingSeparator = false;
|
|
||||||
|
|
||||||
foreach (DictionaryEntry entry in dic)
|
|
||||||
{
|
|
||||||
if (pendingSeparator) _output.Append(',');
|
|
||||||
Indent();
|
|
||||||
_output.Append('{');
|
|
||||||
WritePair("k", entry.Key);
|
|
||||||
_output.Append(",");
|
|
||||||
WritePair("v", entry.Value);
|
|
||||||
Indent();
|
|
||||||
_output.Append('}');
|
|
||||||
|
|
||||||
pendingSeparator = true;
|
|
||||||
}
|
|
||||||
Indent();
|
|
||||||
_output.Append(']');
|
|
||||||
}
|
|
||||||
|
|
||||||
private void WriteStringFast(string s)
|
|
||||||
{
|
|
||||||
//Indent();
|
|
||||||
_output.Append('\"');
|
|
||||||
_output.Append(s);
|
|
||||||
_output.Append('\"');
|
|
||||||
}
|
|
||||||
|
|
||||||
private void WriteString(string s)
|
|
||||||
{
|
|
||||||
//Indent();
|
|
||||||
_output.Append('\"');
|
|
||||||
|
|
||||||
int runIndex = -1;
|
|
||||||
|
|
||||||
for (var index = 0; index < s.Length; ++index)
|
|
||||||
{
|
|
||||||
var c = s[index];
|
|
||||||
|
|
||||||
if (c >= ' ' && c < 128 && c != '\"' && c != '\\')
|
|
||||||
{
|
|
||||||
if (runIndex == -1)
|
|
||||||
{
|
|
||||||
runIndex = index;
|
|
||||||
}
|
|
||||||
|
|
||||||
continue;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (runIndex != -1)
|
|
||||||
{
|
|
||||||
_output.Append(s, runIndex, index - runIndex);
|
|
||||||
runIndex = -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
switch (c)
|
|
||||||
{
|
|
||||||
case '\t': _output.Append("\\t"); break;
|
|
||||||
case '\r': _output.Append("\\r"); break;
|
|
||||||
case '\n': _output.Append("\\n"); break;
|
|
||||||
case '"':
|
|
||||||
case '\\': _output.Append('\\'); _output.Append(c); break;
|
|
||||||
default:
|
|
||||||
_output.Append("\\u");
|
|
||||||
_output.Append(((int)c).ToString("X4", NumberFormatInfo.InvariantInfo));
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if (runIndex != -1)
|
|
||||||
{
|
|
||||||
_output.Append(s, runIndex, s.Length - runIndex);
|
|
||||||
}
|
|
||||||
|
|
||||||
_output.Append('\"');
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
|
@ -1,39 +0,0 @@
|
||||||
//http://fastjson.codeplex.com/
|
|
||||||
|
|
||||||
using System.Collections.Generic;
|
|
||||||
|
|
||||||
namespace Exceptron.Driver.fastJSON
|
|
||||||
{
|
|
||||||
internal class SafeDictionary<TKey, TValue>
|
|
||||||
{
|
|
||||||
private readonly object _Padlock = new object();
|
|
||||||
private readonly Dictionary<TKey, TValue> _Dictionary = new Dictionary<TKey, TValue>();
|
|
||||||
|
|
||||||
|
|
||||||
public bool TryGetValue(TKey key, out TValue value)
|
|
||||||
{
|
|
||||||
return _Dictionary.TryGetValue(key, out value);
|
|
||||||
}
|
|
||||||
|
|
||||||
public TValue this[TKey key]
|
|
||||||
{
|
|
||||||
get
|
|
||||||
{
|
|
||||||
return _Dictionary[key];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
public IEnumerator<KeyValuePair<TKey, TValue>> GetEnumerator()
|
|
||||||
{
|
|
||||||
return ((ICollection<KeyValuePair<TKey, TValue>>)_Dictionary).GetEnumerator();
|
|
||||||
}
|
|
||||||
|
|
||||||
public void Add(TKey key, TValue value)
|
|
||||||
{
|
|
||||||
lock (_Padlock)
|
|
||||||
{
|
|
||||||
if (_Dictionary.ContainsKey(key) == false)
|
|
||||||
_Dictionary.Add(key, value);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
File diff suppressed because it is too large
Load Diff
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue