فهرست منبع

删除CSharp目录,CSharp目录代码基本上已经移动到Server目录了

tanghai 9 سال پیش
والد
کامیت
1868d2742e
100فایلهای تغییر یافته به همراه0 افزوده شده و 19468 حذف شده
  1. 0 6
      CSharp/.nuget/NuGet.Config
  2. BIN
      CSharp/.nuget/NuGet.exe
  3. 0 153
      CSharp/.nuget/NuGet.targets
  4. 0 4
      CSharp/App/Editor/App.xaml
  5. 0 20
      CSharp/App/Editor/App.xaml.cs
  6. 0 39
      CSharp/App/Editor/Bootstrapper.cs
  7. 0 225
      CSharp/App/Editor/Editor.csproj
  8. 0 13
      CSharp/App/Editor/NLog.config
  9. 0 21
      CSharp/App/Editor/Shell.xaml
  10. 0 23
      CSharp/App/Editor/Shell.xaml.cs
  11. 0 11
      CSharp/App/Editor/ShellViewModel.cs
  12. 0 37
      CSharp/App/Editor/app.config
  13. 0 63
      CSharp/App/Infrastructure/AutoPopulateExportedViewsBehavior.cs
  14. 0 24
      CSharp/App/Infrastructure/IViewRegionRegistration.cs
  15. 0 99
      CSharp/App/Infrastructure/Infrastructure.csproj
  16. 0 10
      CSharp/App/Infrastructure/Packages.config
  17. 0 36
      CSharp/App/Infrastructure/ViewExportAttribute.cs
  18. 0 19
      CSharp/App/Infrastructure/app.config
  19. 0 53
      CSharp/App/Modules/BehaviorTreeModule/AllTreeView.xaml
  20. 0 116
      CSharp/App/Modules/BehaviorTreeModule/AllTreeView.xaml.cs
  21. 0 88
      CSharp/App/Modules/BehaviorTreeModule/AllTreeViewModel.cs
  22. 0 13
      CSharp/App/Modules/BehaviorTreeModule/BehaviorTreeModule.cs
  23. 0 159
      CSharp/App/Modules/BehaviorTreeModule/BehaviorTreeModule.csproj
  24. 0 1842
      CSharp/App/Modules/BehaviorTreeModule/CSharpOptions.cs
  25. 0 9111
      CSharp/App/Modules/BehaviorTreeModule/DescriptorProtoFile.cs
  26. 0 30
      CSharp/App/Modules/BehaviorTreeModule/FolderVisiableConverter.cs
  27. 0 42
      CSharp/App/Modules/BehaviorTreeModule/ListToStringConverter.cs
  28. 0 34
      CSharp/App/Modules/BehaviorTreeModule/NodeDataEditor.xaml
  29. 0 65
      CSharp/App/Modules/BehaviorTreeModule/NodeDataEditor.xaml.cs
  30. 0 42
      CSharp/App/Modules/BehaviorTreeModule/NodeTypeColorConverter.cs
  31. 0 25
      CSharp/App/Modules/BehaviorTreeModule/NodeTypeToStringConverter.cs
  32. 0 186
      CSharp/App/Modules/BehaviorTreeModule/TreeLayout.cs
  33. 0 415
      CSharp/App/Modules/BehaviorTreeModule/TreeNodeViewModel.cs
  34. 0 104
      CSharp/App/Modules/BehaviorTreeModule/TreeView.xaml
  35. 0 261
      CSharp/App/Modules/BehaviorTreeModule/TreeView.xaml.cs
  36. 0 358
      CSharp/App/Modules/BehaviorTreeModule/TreeViewModel.cs
  37. 0 19
      CSharp/App/Modules/BehaviorTreeModule/app.config
  38. 0 18
      CSharp/CMakeLists.txt
  39. 0 89
      CSharp/CSharp-Mono.sln
  40. 0 1580
      CSharp/CSharp-Mono.sln.DotSettings
  41. 0 8
      CSharp/CSharp-Mono.userprefs
  42. BIN
      CSharp/CSharp.VC.db
  43. 0 139
      CSharp/CSharp.sln
  44. 0 1575
      CSharp/CSharp.sln.DotSettings
  45. 0 6
      CSharp/Config/BuffConfig/1.json
  46. 0 4
      CSharp/Config/GlobalConfig/1.json
  47. 0 4
      CSharp/Config/UnitConfig/1.json
  48. BIN
      CSharp/Egametang.pfx
  49. 0 6
      CSharp/Exe/Profile/App.config
  50. 0 73
      CSharp/Exe/Profile/Profile.csproj
  51. 0 16
      CSharp/Exe/Profile/Program.cs
  52. 0 39
      CSharp/Exe/Profile/Properties/AssemblyInfo.cs
  53. 0 17
      CSharp/Game/Controller/BehaviorTreeNode/Not.cs
  54. 0 24
      CSharp/Game/Controller/BehaviorTreeNode/Selector.cs
  55. 0 24
      CSharp/Game/Controller/BehaviorTreeNode/Sequence.cs
  56. 0 9
      CSharp/Game/Controller/ConfigCategory/BuffCategory.cs
  57. 0 9
      CSharp/Game/Controller/ConfigCategory/GlobalCategory.cs
  58. 0 30
      CSharp/Game/Controller/ConfigCategory/ServerInfoCategory.cs
  59. 0 9
      CSharp/Game/Controller/ConfigCategory/TreeCategory.cs
  60. 0 9
      CSharp/Game/Controller/ConfigCategory/UnitCategory.cs
  61. 0 82
      CSharp/Game/Controller/Controller.csproj
  62. 0 19
      CSharp/Game/Controller/Event/BuffTimeoutEvent.cs
  63. 0 16
      CSharp/Game/Controller/Event/SleepTimeoutEvent.cs
  64. 0 15
      CSharp/Game/Controller/Factory/UnitPlayerFactory.cs
  65. 0 15
      CSharp/Game/Controller/Logic/AddressHelper.cs
  66. 0 20
      CSharp/Game/Controller/Message/CMsgLoginEvent.cs
  67. 0 39
      CSharp/Game/Controller/Properties/AssemblyInfo.cs
  68. 0 56
      CSharp/Game/Model/ACategory.cs
  69. 0 19
      CSharp/Game/Model/AConfig.cs
  70. 0 27
      CSharp/Game/Model/AEventAttribute.cs
  71. 0 71
      CSharp/Game/Model/Actor.cs
  72. 0 17
      CSharp/Game/Model/BehaviorTree/BehaviorTree.cs
  73. 0 56
      CSharp/Game/Model/BehaviorTree/Node.cs
  74. 0 15
      CSharp/Game/Model/BehaviorTree/NodeAttribute.cs
  75. 0 92
      CSharp/Game/Model/BehaviorTree/NodeType.cs
  76. 0 130
      CSharp/Game/Model/Buff.cs
  77. 0 8
      CSharp/Game/Model/BuffType.cs
  78. 0 28
      CSharp/Game/Model/Component/ActorComponent.cs
  79. 0 92
      CSharp/Game/Model/Component/BehaviorTreeComponent.cs
  80. 0 130
      CSharp/Game/Model/Component/BuffComponent.cs
  81. 0 16
      CSharp/Game/Model/Component/ChannelUnitInfoComponent.cs
  82. 0 77
      CSharp/Game/Model/Component/ConfigComponent.cs
  83. 0 212
      CSharp/Game/Model/Component/EventComponent.cs
  84. 0 47
      CSharp/Game/Model/Component/FactoryComponent.cs
  85. 0 111
      CSharp/Game/Model/Component/GateNetworkComponent.cs
  86. 0 73
      CSharp/Game/Model/Component/MessageComponent.cs
  87. 0 208
      CSharp/Game/Model/Component/NetworkComponent.cs
  88. 0 89
      CSharp/Game/Model/Component/TimerComponent.cs
  89. 0 70
      CSharp/Game/Model/Component/UnitComponent.cs
  90. 0 18
      CSharp/Game/Model/Config/BuffConfig.cs
  91. 0 7
      CSharp/Game/Model/Config/GlobalConfig.cs
  92. 0 11
      CSharp/Game/Model/Config/ServerInfoConfig.cs
  93. 0 32
      CSharp/Game/Model/Config/TreeConfig.cs
  94. 0 7
      CSharp/Game/Model/Config/UnitConfig.cs
  95. 0 24
      CSharp/Game/Model/ConfigAttribute.cs
  96. 0 8
      CSharp/Game/Model/Env.cs
  97. 0 18
      CSharp/Game/Model/EnvKey.cs
  98. 0 10
      CSharp/Game/Model/EventAttribute.cs
  99. 0 12
      CSharp/Game/Model/EventType.cs
  100. 0 17
      CSharp/Game/Model/FactoryAttribute.cs

+ 0 - 6
CSharp/.nuget/NuGet.Config

@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<configuration>
-  <solution>
-    <add key="disableSourceControlIntegration" value="true" />
-  </solution>
-</configuration>

BIN
CSharp/.nuget/NuGet.exe


+ 0 - 153
CSharp/.nuget/NuGet.targets

@@ -1,153 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-    <PropertyGroup>
-        <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">$(MSBuildProjectDirectory)\..\</SolutionDir>
-        
-        <!-- Enable the restore command to run before builds -->
-        <RestorePackages Condition="  '$(RestorePackages)' == '' ">false</RestorePackages>
-
-        <!-- Property that enables building a package from a project -->
-        <BuildPackage Condition=" '$(BuildPackage)' == '' ">false</BuildPackage>
-
-        <!-- Determines if package restore consent is required to restore packages -->
-        <RequireRestoreConsent Condition=" '$(RequireRestoreConsent)' != 'false' ">true</RequireRestoreConsent>
-        
-        <!-- Download NuGet.exe if it does not already exist -->
-        <DownloadNuGetExe Condition=" '$(DownloadNuGetExe)' == '' ">false</DownloadNuGetExe>
-    </PropertyGroup>
-    
-    <ItemGroup Condition=" '$(PackageSources)' == '' ">
-        <!-- Package sources used to restore packages. By default, registered sources under %APPDATA%\NuGet\NuGet.Config will be used -->
-        <!-- The official NuGet package source (https://nuget.org/api/v2/) will be excluded if package sources are specified and it does not appear in the list -->
-        <!--
-            <PackageSource Include="https://nuget.org/api/v2/" />
-            <PackageSource Include="https://my-nuget-source/nuget/" />
-        -->
-    </ItemGroup>
-
-    <PropertyGroup Condition=" '$(OS)' == 'Windows_NT'">
-        <!-- Windows specific commands -->
-        <NuGetToolsPath>$([System.IO.Path]::Combine($(SolutionDir), ".nuget"))</NuGetToolsPath>
-        <PackagesConfig>$([System.IO.Path]::Combine($(ProjectDir), "packages.config"))</PackagesConfig>
-        <PackagesDir>$([System.IO.Path]::Combine($(SolutionDir), "packages"))</PackagesDir>
-    </PropertyGroup>
-    
-    <PropertyGroup Condition=" '$(OS)' != 'Windows_NT'">
-        <!-- We need to launch nuget.exe with the mono command if we're not on windows -->
-        <NuGetToolsPath>$(SolutionDir).nuget</NuGetToolsPath>
-        <PackagesConfig>packages.config</PackagesConfig>
-        <PackagesDir>$(SolutionDir)packages</PackagesDir>
-    </PropertyGroup>
-    
-    <PropertyGroup>
-        <!-- NuGet command -->
-        <NuGetExePath Condition=" '$(NuGetExePath)' == '' ">$(NuGetToolsPath)\nuget.exe</NuGetExePath>
-        <PackageSources Condition=" $(PackageSources) == '' ">@(PackageSource)</PackageSources>
-        
-        <NuGetCommand Condition=" '$(OS)' == 'Windows_NT'">"$(NuGetExePath)"</NuGetCommand>
-        <NuGetCommand Condition=" '$(OS)' != 'Windows_NT' ">mono --runtime=v4.0.30319 $(NuGetExePath)</NuGetCommand>
-
-        <PackageOutputDir Condition="$(PackageOutputDir) == ''">$(TargetDir.Trim('\\'))</PackageOutputDir>
-        
-        <RequireConsentSwitch Condition=" $(RequireRestoreConsent) == 'true' ">-RequireConsent</RequireConsentSwitch>
-        <!-- Commands -->
-        <RestoreCommand>$(NuGetCommand) install "$(PackagesConfig)" -source "$(PackageSources)"  $(RequireConsentSwitch) -o "$(PackagesDir)"</RestoreCommand>
-        <BuildCommand>$(NuGetCommand) pack "$(ProjectPath)" -p Configuration=$(Configuration) -o "$(PackageOutputDir)" -symbols</BuildCommand>
-
-        <!-- We need to ensure packages are restored prior to assembly resolve -->
-        <BuildDependsOn Condition="$(RestorePackages) == 'true'">
-            RestorePackages;
-            $(BuildDependsOn);
-        </BuildDependsOn>
-
-        <!-- Make the build depend on restore packages -->
-        <BuildDependsOn Condition="$(BuildPackage) == 'true'">
-            $(BuildDependsOn);
-            BuildPackage;
-        </BuildDependsOn>
-    </PropertyGroup>
-
-    <Target Name="CheckPrerequisites">
-        <!-- Raise an error if we're unable to locate nuget.exe  -->
-        <Error Condition="'$(DownloadNuGetExe)' != 'true' AND !Exists('$(NuGetExePath)')" Text="Unable to locate '$(NuGetExePath)'" />
-        <SetEnvironmentVariable EnvKey="VisualStudioVersion" EnvValue="$(VisualStudioVersion)" Condition=" '$(VisualStudioVersion)' != '' AND '$(OS)' == 'Windows_NT' " />
-        <!--
-        Take advantage of MsBuild's build dependency tracking to make sure that we only ever download nuget.exe once.
-        This effectively acts as a lock that makes sure that the download operation will only happen once and all
-        parallel builds will have to wait for it to complete.
-        -->
-        <MsBuild Targets="_DownloadNuGet" Projects="$(MSBuildThisFileFullPath)" Properties="Configuration=NOT_IMPORTANT" />
-    </Target>
-
-    <Target Name="_DownloadNuGet">
-        <DownloadNuGet OutputFilename="$(NuGetExePath)" Condition=" '$(DownloadNuGetExe)' == 'true' AND !Exists('$(NuGetExePath)')" />
-    </Target>
-
-    <Target Name="RestorePackages" DependsOnTargets="CheckPrerequisites">
-        <Exec Command="$(RestoreCommand)"
-              Condition="'$(OS)' != 'Windows_NT' And Exists('$(PackagesConfig)')" />
-              
-        <Exec Command="$(RestoreCommand)"
-              LogStandardErrorAsError="true"
-              Condition="'$(OS)' == 'Windows_NT' And Exists('$(PackagesConfig)')" />
-    </Target>
-
-    <Target Name="BuildPackage" DependsOnTargets="CheckPrerequisites">
-        <Exec Command="$(BuildCommand)" 
-              Condition=" '$(OS)' != 'Windows_NT' " />
-              
-        <Exec Command="$(BuildCommand)"
-              LogStandardErrorAsError="true"
-              Condition=" '$(OS)' == 'Windows_NT' " />
-    </Target>
-    
-    <UsingTask TaskName="DownloadNuGet" TaskFactory="CodeTaskFactory" AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.v4.0.dll">
-        <ParameterGroup>
-            <OutputFilename ParameterType="System.String" Required="true" />
-        </ParameterGroup>
-        <Task>
-            <Reference Include="System.Core" />
-            <Using Namespace="System" />
-            <Using Namespace="System.IO" />
-            <Using Namespace="System.Net" />
-            <Using Namespace="Microsoft.Build.Framework" />
-            <Using Namespace="Microsoft.Build.Utilities" />
-            <Code Type="Fragment" Language="cs">
-                <![CDATA[
-                try {
-                    OutputFilename = Path.GetFullPath(OutputFilename);
-
-                    Log.LogMessage("Downloading latest version of NuGet.exe...");
-                    WebClient webClient = new WebClient();
-                    webClient.DownloadFile("https://nuget.org/nuget.exe", OutputFilename);
-
-                    return true;
-                }
-                catch (Exception ex) {
-                    Log.LogErrorFromException(ex);
-                    return false;
-                }
-            ]]>
-            </Code>
-        </Task>
-    </UsingTask>
-    
-     <UsingTask TaskName="SetEnvironmentVariable" TaskFactory="CodeTaskFactory" AssemblyFile="$(MSBuildToolsPath)\Microsoft.Build.Tasks.v4.0.dll">
-        <ParameterGroup>
-            <EnvKey ParameterType="System.String" Required="true" />
-            <EnvValue ParameterType="System.String" Required="true" />
-        </ParameterGroup>
-        <Task>
-            <Using Namespace="System" />
-            <Code Type="Fragment" Language="cs">
-                <![CDATA[
-                try {
-                    Environment.SetEnvironmentVariable(EnvKey, EnvValue, System.EnvironmentVariableTarget.Process);
-                }
-                catch  {
-                }
-            ]]>
-            </Code>
-        </Task>
-    </UsingTask>
-</Project>

+ 0 - 4
CSharp/App/Editor/App.xaml

@@ -1,4 +0,0 @@
-<Application x:Class="Editor.App" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
-             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">
-	<Application.Resources></Application.Resources>
-</Application>

+ 0 - 20
CSharp/App/Editor/App.xaml.cs

@@ -1,20 +0,0 @@
-using System.Windows;
-
-namespace Editor
-{
-	public partial class App: Application
-	{
-		protected override void OnStartup(StartupEventArgs e)
-		{
-			base.OnStartup(e);
-			RunInDebugMode();
-			this.ShutdownMode = ShutdownMode.OnMainWindowClose;
-		}
-
-		private static void RunInDebugMode()
-		{
-			Bootstrapper bootstrapper = new Bootstrapper();
-			bootstrapper.Run();
-		}
-	}
-}

+ 0 - 39
CSharp/App/Editor/Bootstrapper.cs

@@ -1,39 +0,0 @@
-using System.ComponentModel.Composition.Hosting;
-using System.Windows;
-using Infrastructure;
-using Microsoft.Practices.Prism.MefExtensions;
-using Microsoft.Practices.Prism.Regions;
-using Modules.BehaviorTreeModule;
-
-namespace Editor
-{
-	public class Bootstrapper: MefBootstrapper
-	{
-		protected override void ConfigureAggregateCatalog()
-		{
-			this.AggregateCatalog.Catalogs.Add(new AssemblyCatalog(typeof (Bootstrapper).Assembly));
-			this.AggregateCatalog.Catalogs.Add(new AssemblyCatalog(typeof (ViewExportAttribute).Assembly));
-			this.AggregateCatalog.Catalogs.Add(new AssemblyCatalog(typeof (BehaviorTreeModule).Assembly));
-		}
-
-		protected override void InitializeShell()
-		{
-			base.InitializeShell();
-			Application.Current.MainWindow = (Shell) this.Shell;
-			Application.Current.MainWindow.Show();
-		}
-
-		protected override IRegionBehaviorFactory ConfigureDefaultRegionBehaviors()
-		{
-			IRegionBehaviorFactory factory = base.ConfigureDefaultRegionBehaviors();
-			factory.AddIfMissing("AutoPopulateExportedViewsBehavior",
-					typeof (AutoPopulateExportedViewsBehavior));
-			return factory;
-		}
-
-		protected override DependencyObject CreateShell()
-		{
-			return this.Container.GetExportedValue<Shell>();
-		}
-	}
-}

+ 0 - 225
CSharp/App/Editor/Editor.csproj

@@ -1,225 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">x86</Platform>
-    <ProductVersion>8.0.30703</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{C46F3337-0F48-4A72-84AD-8FDD1F159BB0}</ProjectGuid>
-    <OutputType>WinExe</OutputType>
-    <AppDesignerFolder>Properties</AppDesignerFolder>
-    <RootNamespace>App.Editor</RootNamespace>
-    <AssemblyName>Editor</AssemblyName>
-    <TargetFrameworkVersion>v4.5.2</TargetFrameworkVersion>
-    <TargetFrameworkProfile>
-    </TargetFrameworkProfile>
-    <FileAlignment>512</FileAlignment>
-    <ProjectTypeGuids>{60dc8134-eba5-43b8-bcc9-bb4bc16c2548};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
-    <WarningLevel>4</WarningLevel>
-    <Utf8Output>true</Utf8Output>
-    <ExpressionBlendVersion>4.0.20621.0</ExpressionBlendVersion>
-    <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\..\CSharp\</SolutionDir>
-    <RestorePackages>true</RestorePackages>
-    <IsWebBootstrapper>false</IsWebBootstrapper>
-    <PublishUrl>发布\</PublishUrl>
-    <Install>true</Install>
-    <InstallFrom>Disk</InstallFrom>
-    <UpdateEnabled>false</UpdateEnabled>
-    <UpdateMode>Foreground</UpdateMode>
-    <UpdateInterval>7</UpdateInterval>
-    <UpdateIntervalUnits>Days</UpdateIntervalUnits>
-    <UpdatePeriodically>false</UpdatePeriodically>
-    <UpdateRequired>false</UpdateRequired>
-    <MapFileExtensions>true</MapFileExtensions>
-    <ApplicationRevision>0</ApplicationRevision>
-    <ApplicationVersion>1.0.0.%2a</ApplicationVersion>
-    <UseApplicationTrust>false</UseApplicationTrust>
-    <BootstrapperEnabled>true</BootstrapperEnabled>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
-    <PlatformTarget>AnyCPU</PlatformTarget>
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>..\..\Bin\Debug\</OutputPath>
-    <DefineConstants>DEBUG;TRACE</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <Prefer32Bit>true</Prefer32Bit>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
-    <PlatformTarget>x86</PlatformTarget>
-    <DebugType>pdbonly</DebugType>
-    <Optimize>true</Optimize>
-    <OutputPath>..\..\Bin\Release\</OutputPath>
-    <DefineConstants>TRACE</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <Prefer32Bit>false</Prefer32Bit>
-  </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|x64'">
-    <DebugSymbols>true</DebugSymbols>
-    <OutputPath>bin\x64\Debug\</OutputPath>
-    <DefineConstants>DEBUG;TRACE</DefineConstants>
-    <DebugType>full</DebugType>
-    <PlatformTarget>x64</PlatformTarget>
-    <ErrorReport>prompt</ErrorReport>
-    <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
-    <Prefer32Bit>true</Prefer32Bit>
-  </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|x64'">
-    <OutputPath>bin\x64\Release\</OutputPath>
-    <DefineConstants>TRACE</DefineConstants>
-    <Optimize>true</Optimize>
-    <DebugType>pdbonly</DebugType>
-    <PlatformTarget>x64</PlatformTarget>
-    <ErrorReport>prompt</ErrorReport>
-    <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
-  </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Debug|AnyCPU'">
-    <DebugSymbols>true</DebugSymbols>
-    <OutputPath>..\..\Bin\Debug\</OutputPath>
-    <DefineConstants>DEBUG;TRACE</DefineConstants>
-    <DebugType>full</DebugType>
-    <PlatformTarget>AnyCPU</PlatformTarget>
-    <ErrorReport>prompt</ErrorReport>
-    <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
-    <Prefer32Bit>false</Prefer32Bit>
-    <AllowUnsafeBlocks>false</AllowUnsafeBlocks>
-  </PropertyGroup>
-  <PropertyGroup Condition="'$(Configuration)|$(Platform)' == 'Release|AnyCPU'">
-    <OutputPath>..\..\Bin\Release\</OutputPath>
-    <DefineConstants>TRACE</DefineConstants>
-    <Optimize>true</Optimize>
-    <DebugType>pdbonly</DebugType>
-    <PlatformTarget>AnyCPU</PlatformTarget>
-    <ErrorReport>prompt</ErrorReport>
-    <CodeAnalysisRuleSet>MinimumRecommendedRules.ruleset</CodeAnalysisRuleSet>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="Microsoft.Practices.Prism.Composition">
-      <HintPath>..\..\packages\Prism.Composition.5.0.0\lib\NET45\Microsoft.Practices.Prism.Composition.dll</HintPath>
-    </Reference>
-    <Reference Include="Microsoft.Practices.Prism.Interactivity, Version=4.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>..\..\packages\Prism.Interactivity.5.0.0\lib\NET45\Microsoft.Practices.Prism.Interactivity.dll</HintPath>
-    </Reference>
-    <Reference Include="Microsoft.Practices.Prism.MefExtensions, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>..\..\packages\Prism.MEFExtensions.5.0.0\lib\NET45\Microsoft.Practices.Prism.MefExtensions.dll</HintPath>
-      <Private>True</Private>
-    </Reference>
-    <Reference Include="Microsoft.Practices.Prism.Mvvm, Version=1.1.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>..\..\packages\Prism.Mvvm.1.1.1\lib\net45\Microsoft.Practices.Prism.Mvvm.dll</HintPath>
-    </Reference>
-    <Reference Include="Microsoft.Practices.Prism.Mvvm.Desktop, Version=1.1.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>..\..\packages\Prism.Mvvm.1.1.1\lib\net45\Microsoft.Practices.Prism.Mvvm.Desktop.dll</HintPath>
-    </Reference>
-    <Reference Include="Microsoft.Practices.Prism.PubSubEvents, Version=1.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>..\..\packages\Prism.PubSubEvents.1.1.2\lib\portable-sl5+windowsphone8+windows8+net40+wpa81\Microsoft.Practices.Prism.PubSubEvents.dll</HintPath>
-    </Reference>
-    <Reference Include="Microsoft.Practices.Prism.SharedInterfaces, Version=1.1.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>..\..\packages\Prism.Mvvm.1.1.1\lib\net45\Microsoft.Practices.Prism.SharedInterfaces.dll</HintPath>
-    </Reference>
-    <Reference Include="Microsoft.Practices.ServiceLocation, Version=1.3.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>..\..\packages\CommonServiceLocator.1.3\lib\portable-net4+sl5+netcore45+wpa81+wp8\Microsoft.Practices.ServiceLocation.dll</HintPath>
-    </Reference>
-    <Reference Include="System" />
-    <Reference Include="System.ComponentModel.Composition" />
-    <Reference Include="System.Configuration" />
-    <Reference Include="System.Data" />
-    <Reference Include="System.Runtime.Serialization" />
-    <Reference Include="System.ServiceModel" />
-    <Reference Include="System.Web.Extensions" />
-    <Reference Include="System.Xml" />
-    <Reference Include="System.Core" />
-    <Reference Include="System.Xaml">
-      <RequiredTargetFramework>4.0</RequiredTargetFramework>
-    </Reference>
-    <Reference Include="System.Xml.Linq" />
-    <Reference Include="UIAutomationProvider" />
-    <Reference Include="UIAutomationTypes" />
-    <Reference Include="WindowsBase" />
-    <Reference Include="PresentationCore" />
-    <Reference Include="PresentationFramework" />
-  </ItemGroup>
-  <ItemGroup>
-    <ApplicationDefinition Include="App.xaml">
-      <Generator>MSBuild:Compile</Generator>
-      <SubType>Designer</SubType>
-    </ApplicationDefinition>
-    <Compile Include="Bootstrapper.cs" />
-    <Compile Include="Shell.xaml.cs">
-      <DependentUpon>Shell.xaml</DependentUpon>
-    </Compile>
-    <Compile Include="ShellViewModel.cs" />
-    <Compile Include="App.xaml.cs">
-      <DependentUpon>App.xaml</DependentUpon>
-      <SubType>Code</SubType>
-    </Compile>
-    <Page Include="Shell.xaml">
-      <Generator>MSBuild:Compile</Generator>
-      <SubType>Designer</SubType>
-    </Page>
-  </ItemGroup>
-  <ItemGroup>
-    <AppDesigner Include="Properties\" />
-  </ItemGroup>
-  <ItemGroup>
-    <Folder Include="Properties\" />
-  </ItemGroup>
-  <ItemGroup>
-    <ProjectReference Include="..\Infrastructure\Infrastructure.csproj">
-      <Project>{48a2e149-0dac-41b4-bb54-dfbccd6d42b3}</Project>
-      <Name>Infrastructure</Name>
-    </ProjectReference>
-    <ProjectReference Include="..\Modules\BehaviorTreeModule\BehaviorTreeModule.csproj">
-      <Project>{6cd185d1-08e0-4729-a999-2d5b57ba8193}</Project>
-      <Name>BehaviorTreeModule</Name>
-    </ProjectReference>
-  </ItemGroup>
-  <ItemGroup>
-    <None Include="App.config">
-      <SubType>Designer</SubType>
-    </None>
-    <None Include="NLog.config">
-      <CopyToOutputDirectory>Always</CopyToOutputDirectory>
-      <SubType>Designer</SubType>
-    </None>
-  </ItemGroup>
-  <ItemGroup>
-    <BootstrapperPackage Include=".NETFramework,Version=v4.5">
-      <Visible>False</Visible>
-      <ProductName>Microsoft .NET Framework 4.5 %28x86 和 x64%29</ProductName>
-      <Install>true</Install>
-    </BootstrapperPackage>
-    <BootstrapperPackage Include="Microsoft.Net.Client.3.5">
-      <Visible>False</Visible>
-      <ProductName>.NET Framework 3.5 SP1 Client Profile</ProductName>
-      <Install>false</Install>
-    </BootstrapperPackage>
-    <BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
-      <Visible>False</Visible>
-      <ProductName>.NET Framework 3.5 SP1</ProductName>
-      <Install>false</Install>
-    </BootstrapperPackage>
-  </ItemGroup>
-  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
-  <PropertyGroup>
-    <PreBuildEvent>
-    </PreBuildEvent>
-  </PropertyGroup>
-  <Import Project="$(SolutionDir)\.nuget\nuget.targets" />
-  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
-       Other similar extension points exist, see Microsoft.Common.targets.
-  <Target Name="BeforeBuild">
-  </Target>
-  <Target Name="AfterBuild">
-  </Target>
-  -->
-</Project>

+ 0 - 13
CSharp/App/Editor/NLog.config

@@ -1,13 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-
-<nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
-	<targets>
-		<target name="file" xsi:type="File" 
-			fileName="${basedir}/Log.txt"
-			deleteOldFileOnStartup="true"
-			layout="${longdate} ${threadid:padCharacter=0:padding=4:fixedLength=true} ${message}" />
-	</targets>
-	<rules>
-		<logger name="*" minlevel="Debug" writeTo="file" />
-	</rules>
-</nlog>

+ 0 - 21
CSharp/App/Editor/Shell.xaml

@@ -1,21 +0,0 @@
-<Window x:Class="Editor.Shell" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
-		xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
-		xmlns:prism="http://www.codeplex.com/prism" Title="Editor" Height="800" Width="1280"
-		WindowStartupLocation="CenterScreen">
-	<Grid>
-		<!--<ContentControl Name="login" prism:RegionManager.RegionName="LoginRegion" HorizontalAlignment="Center" VerticalAlignment="Center" />-->
-		<TabControl>
-			<TabItem Height="25" Width="80" Header="行为树">
-				<ContentControl Name="behaviorTree" prism:RegionManager.RegionName="BehaviorTreeRegion" />
-			</TabItem>
-			<!--
-			<TabItem Height="25" Width="80" Header="机器人">
-				<ContentControl Name="robot" prism:RegionManager.RegionName="RobotRegion" />
-			</TabItem>
-			<TabItem Height="25" Width="80" Header="WCFClient">
-				<ContentControl Name="wcfClient" prism:RegionManager.RegionName="WCFClientRegion" />
-			</TabItem>
-			-->
-		</TabControl>
-	</Grid>
-</Window>

+ 0 - 23
CSharp/App/Editor/Shell.xaml.cs

@@ -1,23 +0,0 @@
-using System.ComponentModel.Composition;
-using System.Windows;
-
-namespace Editor
-{
-	[Export]
-	public partial class Shell: Window
-	{
-		public Shell()
-		{
-			this.InitializeComponent();
-		}
-
-		[Import]
-		private ShellViewModel ViewModel
-		{
-			set
-			{
-				this.DataContext = value;
-			}
-		}
-	}
-}

+ 0 - 11
CSharp/App/Editor/ShellViewModel.cs

@@ -1,11 +0,0 @@
-using System.ComponentModel.Composition;
-using Microsoft.Practices.Prism.Mvvm;
-
-namespace Editor
-{
-	[Export]
-	public class ShellViewModel: BindableBase
-	{
-		// This is where any view model logic for the shell would go.
-	}
-}

+ 0 - 37
CSharp/App/Editor/app.config

@@ -1,37 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<configuration>
-  <runtime>
-    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
-      <dependentAssembly>
-        <assemblyIdentity name="Microsoft.Practices.Prism" publicKeyToken="31bf3856ad364e35" culture="neutral"/>
-        <bindingRedirect oldVersion="0.0.0.0-4.1.0.0" newVersion="4.1.0.0"/>
-      </dependentAssembly>
-      <dependentAssembly>
-        <assemblyIdentity name="MySql.Data" publicKeyToken="c5687fc88969c44d" culture="neutral"/>
-        <bindingRedirect oldVersion="0.0.0.0-6.6.4.0" newVersion="6.6.4.0"/>
-      </dependentAssembly>
-      <dependentAssembly>
-        <assemblyIdentity name="Microsoft.Practices.ServiceLocation" publicKeyToken="31bf3856ad364e35" culture="neutral"/>
-        <bindingRedirect oldVersion="0.0.0.0-1.3.0.0" newVersion="1.3.0.0"/>
-      </dependentAssembly>
-      <dependentAssembly>
-        <assemblyIdentity name="System.Windows.Interactivity" publicKeyToken="31bf3856ad364e35" culture="neutral"/>
-        <bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0"/>
-      </dependentAssembly>
-      <dependentAssembly>
-        <assemblyIdentity name="Microsoft.Practices.Prism.SharedInterfaces" publicKeyToken="31bf3856ad364e35" culture="neutral"/>
-        <bindingRedirect oldVersion="0.0.0.0-1.1.1.0" newVersion="1.1.1.0"/>
-      </dependentAssembly>
-      <dependentAssembly>
-        <assemblyIdentity name="Microsoft.Practices.Prism.PubSubEvents" publicKeyToken="31bf3856ad364e35" culture="neutral"/>
-        <bindingRedirect oldVersion="0.0.0.0-1.1.0.0" newVersion="1.1.0.0"/>
-      </dependentAssembly>
-    </assemblyBinding>
-  </runtime>
-  <startup>
-    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2"/>
-  </startup>
-  <appSettings>
-    <add key="NodePath" value="D:\Source\SLOL\Program\Unity\Assets\Resources\Config\"/>
-  </appSettings>
-</configuration>

+ 0 - 63
CSharp/App/Infrastructure/AutoPopulateExportedViewsBehavior.cs

@@ -1,63 +0,0 @@
-//===================================================================================
-// Microsoft patterns & practices
-// Composite Application Guidance for Windows Presentation Foundation and Silverlight
-//===================================================================================
-// Copyright (c) Microsoft Corporation.  All rights reserved.
-// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY
-// OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT
-// LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
-// FITNESS FOR A PARTICULAR PURPOSE.
-//===================================================================================
-// The example companies, organizations, products, domain names,
-// e-mail addresses, logos, people, places, and events depicted
-// herein are fictitious.  No association with any real company,
-// organization, product, domain name, email address, logo, person,
-// places, or events is intended or should be inferred.
-//===================================================================================
-
-using System;
-using System.ComponentModel.Composition;
-using Microsoft.Practices.Prism.Regions;
-
-namespace Infrastructure
-{
-	[Export(typeof (AutoPopulateExportedViewsBehavior)), PartCreationPolicy(CreationPolicy.NonShared)]
-	public class AutoPopulateExportedViewsBehavior: RegionBehavior, IPartImportsSatisfiedNotification
-	{
-		[ImportMany(AllowRecomposition = true)]
-		public Lazy<object, IViewRegionRegistration>[] RegisteredViews { get; set; }
-
-		public void OnImportsSatisfied()
-		{
-			this.AddRegisteredViews();
-		}
-
-		protected override void OnAttach()
-		{
-			this.AddRegisteredViews();
-		}
-
-		private void AddRegisteredViews()
-		{
-			if (this.Region == null)
-			{
-				return;
-			}
-
-			foreach (var viewEntry in this.RegisteredViews)
-			{
-				if (viewEntry.Metadata.RegionName != this.Region.Name)
-				{
-					continue;
-				}
-
-				object view = viewEntry.Value;
-
-				if (!this.Region.Views.Contains(view))
-				{
-					this.Region.Add(view);
-				}
-			}
-		}
-	}
-}

+ 0 - 24
CSharp/App/Infrastructure/IViewRegionRegistration.cs

@@ -1,24 +0,0 @@
-//===================================================================================
-// Microsoft patterns & practices
-// Composite Application Guidance for Windows Presentation Foundation and Silverlight
-//===================================================================================
-// Copyright (c) Microsoft Corporation.  All rights reserved.
-// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY
-// OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT
-// LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
-// FITNESS FOR A PARTICULAR PURPOSE.
-//===================================================================================
-// The example companies, organizations, products, domain names,
-// e-mail addresses, logos, people, places, and events depicted
-// herein are fictitious.  No association with any real company,
-// organization, product, domain name, email address, logo, person,
-// places, or events is intended or should be inferred.
-//===================================================================================
-
-namespace Infrastructure
-{
-	public interface IViewRegionRegistration
-	{
-		string RegionName { get; }
-	}
-}

+ 0 - 99
CSharp/App/Infrastructure/Infrastructure.csproj

@@ -1,99 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>8.0.30703</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{48A2E149-0DAC-41B4-BB54-DFBCCD6D42B3}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <AppDesignerFolder>Properties</AppDesignerFolder>
-    <RootNamespace>App.Infrastructure</RootNamespace>
-    <AssemblyName>Infrastructure</AssemblyName>
-    <TargetFrameworkVersion>v4.5.2</TargetFrameworkVersion>
-    <FileAlignment>512</FileAlignment>
-    <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\..\CSharp\</SolutionDir>
-    <RestorePackages>true</RestorePackages>
-    <TargetFrameworkProfile />
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>..\..\Bin\Debug\</OutputPath>
-    <DefineConstants>DEBUG;TRACE</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <Prefer32Bit>false</Prefer32Bit>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>pdbonly</DebugType>
-    <Optimize>true</Optimize>
-    <OutputPath>..\..\Bin\Release\</OutputPath>
-    <DefineConstants>TRACE</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <Prefer32Bit>false</Prefer32Bit>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="Microsoft.Practices.Prism.Composition">
-      <HintPath>..\..\packages\Prism.Composition.5.0.0\lib\NET45\Microsoft.Practices.Prism.Composition.dll</HintPath>
-    </Reference>
-    <Reference Include="Microsoft.Practices.Prism.Interactivity, Version=5.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>..\..\packages\Prism.Interactivity.5.0.0\lib\NET45\Microsoft.Practices.Prism.Interactivity.dll</HintPath>
-    </Reference>
-    <Reference Include="Microsoft.Practices.Prism.MefExtensions">
-      <HintPath>..\..\packages\Prism.MEFExtensions.5.0.0\lib\NET45\Microsoft.Practices.Prism.MefExtensions.dll</HintPath>
-    </Reference>
-    <Reference Include="Microsoft.Practices.Prism.Mvvm, Version=1.1.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>..\..\packages\Prism.Mvvm.1.1.1\lib\net45\Microsoft.Practices.Prism.Mvvm.dll</HintPath>
-    </Reference>
-    <Reference Include="Microsoft.Practices.Prism.Mvvm.Desktop, Version=1.1.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>..\..\packages\Prism.Mvvm.1.1.1\lib\net45\Microsoft.Practices.Prism.Mvvm.Desktop.dll</HintPath>
-    </Reference>
-    <Reference Include="Microsoft.Practices.Prism.PubSubEvents, Version=1.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>..\..\packages\Prism.PubSubEvents.1.1.2\lib\portable-sl5+windowsphone8+windows8+net40+wpa81\Microsoft.Practices.Prism.PubSubEvents.dll</HintPath>
-    </Reference>
-    <Reference Include="Microsoft.Practices.Prism.SharedInterfaces, Version=1.1.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>..\..\packages\Prism.Mvvm.1.1.1\lib\net45\Microsoft.Practices.Prism.SharedInterfaces.dll</HintPath>
-    </Reference>
-    <Reference Include="Microsoft.Practices.ServiceLocation, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>..\..\packages\CommonServiceLocator.1.3\lib\portable-net4+sl5+netcore45+wpa81+wp8\Microsoft.Practices.ServiceLocation.dll</HintPath>
-    </Reference>
-    <Reference Include="System" />
-    <Reference Include="System.ComponentModel.Composition" />
-    <Reference Include="System.Core" />
-    <Reference Include="WindowsBase" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="AutoPopulateExportedViewsBehavior.cs" />
-    <Compile Include="IViewRegionRegistration.cs" />
-    <Compile Include="ViewExportAttribute.cs" />
-  </ItemGroup>
-  <ItemGroup>
-    <Folder Include="Properties\" />
-  </ItemGroup>
-  <ItemGroup>
-    <None Include="app.config" />
-    <None Include="Packages.config" />
-  </ItemGroup>
-  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
-  <PropertyGroup>
-    <PreBuildEvent>
-    </PreBuildEvent>
-  </PropertyGroup>
-  <Import Project="$(SolutionDir)\.nuget\nuget.targets" />
-  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
-       Other similar extension points exist, see Microsoft.Common.targets.
-  <Target Name="BeforeBuild">
-  </Target>
-  <Target Name="AfterBuild">
-  </Target>
-  -->
-</Project>

+ 0 - 10
CSharp/App/Infrastructure/Packages.config

@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<packages>
-  <package id="CommonServiceLocator" version="1.3" targetFramework="net45" />
-  <package id="Prism" version="5.0.0" targetFramework="net45" />
-  <package id="Prism.Composition" version="5.0.0" targetFramework="net45" />
-  <package id="Prism.Interactivity" version="5.0.0" targetFramework="net45" />
-  <package id="Prism.MEFExtensions" version="5.0.0" targetFramework="net45" />
-  <package id="Prism.Mvvm" version="1.1.1" targetFramework="net451" />
-  <package id="Prism.PubSubEvents" version="1.1.2" targetFramework="net451" />
-</packages>

+ 0 - 36
CSharp/App/Infrastructure/ViewExportAttribute.cs

@@ -1,36 +0,0 @@
-//===================================================================================
-// Microsoft patterns & practices
-// Composite Application Guidance for Windows Presentation Foundation and Silverlight
-//===================================================================================
-// Copyright (c) Microsoft Corporation.  All rights reserved.
-// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY
-// OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT
-// LIMITED TO THE IMPLIED WARRANTIES OF MERCHANTABILITY AND
-// FITNESS FOR A PARTICULAR PURPOSE.
-//===================================================================================
-// The example companies, organizations, products, domain names,
-// e-mail addresses, logos, people, places, and events depicted
-// herein are fictitious.  No association with any real company,
-// organization, product, domain name, email address, logo, person,
-// places, or events is intended or should be inferred.
-//===================================================================================
-
-using System;
-using System.ComponentModel.Composition;
-
-namespace Infrastructure
-{
-	[AttributeUsage(AttributeTargets.Class, AllowMultiple = false), MetadataAttribute]
-	public class ViewExportAttribute: ExportAttribute, IViewRegionRegistration
-	{
-		public ViewExportAttribute(): base(typeof (object))
-		{
-		}
-
-		public ViewExportAttribute(string viewName): base(viewName, typeof (object))
-		{
-		}
-
-		public string RegionName { get; set; }
-	}
-}

+ 0 - 19
CSharp/App/Infrastructure/app.config

@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<configuration>
-  <runtime>
-    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
-      <dependentAssembly>
-        <assemblyIdentity name="Microsoft.Practices.ServiceLocation" publicKeyToken="31bf3856ad364e35" culture="neutral"/>
-        <bindingRedirect oldVersion="0.0.0.0-1.3.0.0" newVersion="1.3.0.0"/>
-      </dependentAssembly>
-      <dependentAssembly>
-        <assemblyIdentity name="Microsoft.Practices.Prism.SharedInterfaces" publicKeyToken="31bf3856ad364e35" culture="neutral"/>
-        <bindingRedirect oldVersion="0.0.0.0-1.1.1.0" newVersion="1.1.1.0"/>
-      </dependentAssembly>
-      <dependentAssembly>
-        <assemblyIdentity name="Microsoft.Practices.Prism.PubSubEvents" publicKeyToken="31bf3856ad364e35" culture="neutral"/>
-        <bindingRedirect oldVersion="0.0.0.0-1.1.0.0" newVersion="1.1.0.0"/>
-      </dependentAssembly>
-    </assemblyBinding>
-  </runtime>
-<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2"/></startup></configuration>

+ 0 - 53
CSharp/App/Modules/BehaviorTreeModule/AllTreeView.xaml

@@ -1,53 +0,0 @@
-<UserControl xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
-		xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
-		xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
-		xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
-		xmlns:Tree="clr-namespace:Modules.BehaviorTreeModule"
-		x:Class="Modules.BehaviorTreeModule.AllTreeView"
-		mc:Ignorable="d" 
-		d:DesignHeight="800" 
-		d:DesignWidth="1280" 
-		d:DataContext="{d:DesignInstance Tree:AllTreeViewModel}">
-	<DockPanel>
-		<Grid>
-			<Grid.RowDefinitions>
-				<RowDefinition/>
-				<RowDefinition/>
-			</Grid.RowDefinitions>
-			<Grid.ColumnDefinitions>
-				<ColumnDefinition Width="230"/>
-				<ColumnDefinition Width="Auto"/>
-				<ColumnDefinition />
-			</Grid.ColumnDefinitions>
-			<GroupBox Grid.Row="0" Grid.Column="0" Header="行为树列表:" Margin="0,0,0,289" Grid.RowSpan="2">
-				<ListBox Name="lbTrees" ItemsSource="{Binding TreeViewModels}" >
-					<ListBox.ContextMenu>
-						<ContextMenu>
-							<MenuItem Header="打开" Click="MenuItem_Open" />
-							<MenuItem Header="保存" Click="MenuItem_Save" />
-							<MenuItem Header="新建" Click="MenuItem_New" />
-							<MenuItem Header="删除" Click="MenuItem_Remove" />
-							<MenuItem Header="克隆" Click="MenuItem_Clone" />
-							<MenuItem Header="路径" Click="MenuItem_Path" />
-						</ContextMenu>
-					</ListBox.ContextMenu>
-					<ListBox.ItemTemplate>
-						<DataTemplate DataType="Tree:TreeViewModel">
-							<StackPanel MouseLeftButtonDown="ListBoxItem_OnMouseLeftButtonDown" 
-									Orientation="Horizontal" Margin="1,0">
-								<Label Content="{Binding Id}" VerticalAlignment="Stretch" Width="30"/>
-								<Label Content="{Binding Comment}" VerticalAlignment="Stretch" HorizontalAlignment="Stretch"/>
-							</StackPanel>
-						</DataTemplate>
-					</ListBox.ItemTemplate>
-				</ListBox>
-			</GroupBox>
-			<GroupBox Grid.Row="1" Grid.Column="0" Header="节点编辑:" Height="220" VerticalAlignment="Bottom">
-				<Tree:NodeDataEditor x:Name="nodeDataEditor" VerticalAlignment="Bottom" HorizontalAlignment="Stretch" />
-			</GroupBox>
-			<GridSplitter Grid.Column="1" Grid.Row="0" Grid.RowSpan="2" Width="3" ShowsPreview="False" VerticalAlignment="Stretch"
-				HorizontalAlignment="Stretch" />
-			<Tree:TreeView x:Name="treeView" Grid.Row="0" Grid.Column="2" Grid.RowSpan="2" />
-		</Grid>
-	</DockPanel>
-</UserControl>

+ 0 - 116
CSharp/App/Modules/BehaviorTreeModule/AllTreeView.xaml.cs

@@ -1,116 +0,0 @@
-using System.ComponentModel.Composition;
-using System.Configuration;
-using System.IO;
-using System.Windows;
-using System.Windows.Forms;
-using System.Windows.Input;
-using Infrastructure;
-using Application = System.Windows.Application;
-
-namespace Modules.BehaviorTreeModule
-{
-	/// <summary>
-	/// BehaviorTreeView.xaml 的交互逻辑
-	/// </summary>
-	[ViewExport(RegionName = "BehaviorTreeRegion"), PartCreationPolicy(CreationPolicy.NonShared)]
-	public partial class AllTreeView
-	{
-		public AllTreeView()
-		{
-			this.InitializeComponent();
-
-			this.nodeDataEditor.AllTreeView = this;
-			this.treeView.AllTreeView = this;
-		    this.ViewModel = AllTreeViewModel.Instance;
-		}
-
-		private AllTreeViewModel ViewModel
-		{
-			get
-			{
-				return this.DataContext as AllTreeViewModel;
-			}
-			set
-			{
-				this.DataContext = value;
-			}
-		}
-
-		private void MenuItem_Open(object sender, RoutedEventArgs e)
-		{
-			string nodePath = Path.Combine(ConfigurationManager.AppSettings["NodePath"], "TreeProto.txt");
-			this.ViewModel.Open(nodePath);
-			this.lbTrees.SelectedIndex = -1;
-			this.treeView.ViewModel = null;
-		}
-
-		private void MenuItem_Save(object sender, RoutedEventArgs e)
-		{
-			string nodePath = Path.Combine(ConfigurationManager.AppSettings["NodePath"], "TreeProto.txt");
-			this.ViewModel.Save(nodePath);
-		}
-
-		private void MenuItem_New(object sender, RoutedEventArgs e)
-		{
-			TreeViewModel treeViewModel = this.ViewModel.New();
-			this.lbTrees.SelectedItem = treeViewModel;
-			this.treeView.ViewModel = treeViewModel;
-		}
-
-		private void MenuItem_Clone(object sender, RoutedEventArgs e)
-		{
-			if (this.lbTrees.SelectedItem == null)
-			{
-				return;
-			}
-			TreeViewModel treeViewModel = this.lbTrees.SelectedItem as TreeViewModel;
-			TreeViewModel newTreeViewModel = this.ViewModel.Clone(treeViewModel);
-			this.treeView.ViewModel = newTreeViewModel;
-		}
-
-		private void MenuItem_Path(object sender, RoutedEventArgs e)
-		{
-			FolderBrowserDialog dialog = new FolderBrowserDialog();
-			dialog.SelectedPath = ConfigurationManager.AppSettings["NodePath"];
-			dialog.ShowDialog();
-			string path = dialog.SelectedPath;
-			if (path.Length < 1 || !Directory.Exists(path))
-			{
-				System.Windows.MessageBox.Show("选择的目录无效");
-				return;
-			}
-			Configuration cfg = ConfigurationManager.OpenExeConfiguration(ConfigurationUserLevel.None);
-			cfg.AppSettings.Settings["NodePath"].Value = path;
-			cfg.Save();
-			ConfigurationManager.AppSettings["NodePath"] = path;
-			Application.Current.MainWindow.Title = $"行为树编辑器 当前工作目录[{ConfigurationManager.AppSettings["NodePath"]}]";
-		}
-
-		private void MenuItem_Remove(object sender, RoutedEventArgs e)
-		{
-			if (this.lbTrees.SelectedItem == null)
-			{
-				return;
-			}
-			TreeViewModel treeViewModel = this.lbTrees.SelectedItem as TreeViewModel;
-			this.ViewModel.Remove(treeViewModel);
-			this.lbTrees.SelectedItem = null;
-			e.Handled = true;
-		}
-
-		private void ListBoxItem_OnMouseLeftButtonDown(object sender, MouseButtonEventArgs e)
-		{
-			FrameworkElement item = (FrameworkElement) sender;
-			TreeViewModel treeViewModel = item.DataContext as TreeViewModel;
-			if (this.treeView.ViewModel != null)
-			{
-				if (this.treeView.ViewModel.Id == treeViewModel.Id)
-				{
-					return;
-				}
-			}
-			this.lbTrees.SelectedItem = treeViewModel;
-			this.treeView.ViewModel = treeViewModel;
-		}
-	}
-}

+ 0 - 88
CSharp/App/Modules/BehaviorTreeModule/AllTreeViewModel.cs

@@ -1,88 +0,0 @@
-using System;
-using System.Collections.ObjectModel;
-using System.IO;
-using Common.Helper;
-
-namespace Modules.BehaviorTreeModule
-{
-	public class AllTreeViewModel
-	{
-        private static readonly AllTreeViewModel instance = new AllTreeViewModel();
-	    public static AllTreeViewModel Instance
-	    {
-	        get
-	        {
-	            return instance;
-	        }
-	    }
-		public int MaxTreeId { get; set; }
-
-		private readonly ObservableCollection<TreeViewModel> treeViewModels =
-				new ObservableCollection<TreeViewModel>();
-
-		public ObservableCollection<TreeViewModel> TreeViewModels
-		{
-			get
-			{
-				return this.treeViewModels;
-			}
-		}
-
-		public void Open(string file)
-		{
-			this.treeViewModels.Clear();
-			string content = File.ReadAllText(file);
-			foreach (string line in content.Split(new[] { "\r\n" }, StringSplitOptions.None))
-			{
-				if (line.Trim() == "")
-				{
-					continue;
-				}
-				TreeViewModel treeViewModel = MongoHelper.FromJson<TreeViewModel>(line);
-				this.treeViewModels.Add(treeViewModel);
-				TreeLayout layout = new TreeLayout(treeViewModel);
-				layout.ExcuteLayout();
-				if (treeViewModel.Id > this.MaxTreeId)
-				{
-					this.MaxTreeId = treeViewModel.Id;
-				}
-			}
-		}
-
-		public void Save(string file)
-		{
-			using (StreamWriter stream = new StreamWriter(new FileStream(file, FileMode.Create, FileAccess.Write)))
-			{
-				foreach (TreeViewModel value in this.treeViewModels)
-				{
-					string content = MongoHelper.ToJson(value);
-					stream.Write(content);
-					stream.Write("\r\n");
-				}
-			}
-		}
-
-		public TreeViewModel New()
-		{
-			TreeViewModel treeViewModel = new TreeViewModel();
-			treeViewModel.Id = ++this.MaxTreeId;
-			this.treeViewModels.Add(treeViewModel);
-			return treeViewModel;
-		}
-
-		public void Remove(TreeViewModel treeViewModel)
-		{
-			this.treeViewModels.Remove(treeViewModel);
-		}
-
-		public TreeViewModel Clone(TreeViewModel treeViewModel)
-		{
-			TreeViewModel newTreeViewModel = (TreeViewModel)treeViewModel.Clone();
-			newTreeViewModel.Id = ++this.MaxTreeId;
-			this.treeViewModels.Add(newTreeViewModel);
-			TreeLayout layout = new TreeLayout(newTreeViewModel);
-			layout.ExcuteLayout();
-			return newTreeViewModel;
-		}
-	}
-}

+ 0 - 13
CSharp/App/Modules/BehaviorTreeModule/BehaviorTreeModule.cs

@@ -1,13 +0,0 @@
-using Microsoft.Practices.Prism.MefExtensions.Modularity;
-using Microsoft.Practices.Prism.Modularity;
-
-namespace Modules.BehaviorTreeModule
-{
-	[ModuleExport(typeof (BehaviorTreeModule))]
-	public class BehaviorTreeModule: IModule
-	{
-		public void Initialize()
-		{
-		}
-	}
-}

+ 0 - 159
CSharp/App/Modules/BehaviorTreeModule/BehaviorTreeModule.csproj

@@ -1,159 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>8.0.30703</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{6CD185D1-08E0-4729-A999-2D5B57BA8193}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <AppDesignerFolder>Properties</AppDesignerFolder>
-    <RootNamespace>Modules.BehaviorTreeModule</RootNamespace>
-    <AssemblyName>BehaviorTreeModule</AssemblyName>
-    <TargetFrameworkVersion>v4.5.2</TargetFrameworkVersion>
-    <FileAlignment>512</FileAlignment>
-    <Utf8Output>true</Utf8Output>
-    <ExpressionBlendVersion>4.0.20621.0</ExpressionBlendVersion>
-    <SolutionDir Condition="$(SolutionDir) == '' Or $(SolutionDir) == '*Undefined*'">..\..\..\CSharp\</SolutionDir>
-    <RestorePackages>true</RestorePackages>
-    <TargetFrameworkProfile />
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>..\..\..\Bin\Debug\</OutputPath>
-    <DefineConstants>DEBUG;TRACE</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <Prefer32Bit>false</Prefer32Bit>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>pdbonly</DebugType>
-    <Optimize>true</Optimize>
-    <OutputPath>..\..\..\Bin\Release\</OutputPath>
-    <DefineConstants>TRACE</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <Prefer32Bit>false</Prefer32Bit>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="Microsoft.Practices.Prism.Composition">
-      <HintPath>..\..\..\packages\Prism.Composition.5.0.0\lib\NET45\Microsoft.Practices.Prism.Composition.dll</HintPath>
-      <Private>True</Private>
-    </Reference>
-    <Reference Include="Microsoft.Practices.Prism.Interactivity">
-      <HintPath>..\..\..\packages\Prism.Interactivity.5.0.0\lib\NET45\Microsoft.Practices.Prism.Interactivity.dll</HintPath>
-      <Private>True</Private>
-    </Reference>
-    <Reference Include="Microsoft.Practices.Prism.MefExtensions">
-      <HintPath>..\..\..\packages\Prism.MEFExtensions.5.0.0\lib\NET45\Microsoft.Practices.Prism.MefExtensions.dll</HintPath>
-      <Private>True</Private>
-    </Reference>
-    <Reference Include="Microsoft.Practices.Prism.Mvvm, Version=1.1.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>..\..\..\packages\Prism.Mvvm.1.1.1\lib\net45\Microsoft.Practices.Prism.Mvvm.dll</HintPath>
-    </Reference>
-    <Reference Include="Microsoft.Practices.Prism.Mvvm.Desktop, Version=1.1.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>..\..\..\packages\Prism.Mvvm.1.1.1\lib\net45\Microsoft.Practices.Prism.Mvvm.Desktop.dll</HintPath>
-    </Reference>
-    <Reference Include="Microsoft.Practices.Prism.PubSubEvents, Version=1.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>..\..\..\packages\Prism.PubSubEvents.1.1.2\lib\portable-sl5+windowsphone8+windows8+net40+wpa81\Microsoft.Practices.Prism.PubSubEvents.dll</HintPath>
-    </Reference>
-    <Reference Include="Microsoft.Practices.Prism.SharedInterfaces, Version=1.1.1.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>..\..\..\packages\Prism.Mvvm.1.1.1\lib\net45\Microsoft.Practices.Prism.SharedInterfaces.dll</HintPath>
-    </Reference>
-    <Reference Include="Microsoft.Practices.ServiceLocation, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>..\..\..\packages\CommonServiceLocator.1.3\lib\portable-net4+sl5+netcore45+wpa81+wp8\Microsoft.Practices.ServiceLocation.dll</HintPath>
-      <Private>True</Private>
-    </Reference>
-    <Reference Include="MongoDB.Bson, Version=2.0.1.27, Culture=neutral, processorArchitecture=MSIL">
-      <HintPath>..\..\..\packages\MongoDB.Bson.2.0.1\lib\net45\MongoDB.Bson.dll</HintPath>
-      <Private>True</Private>
-    </Reference>
-    <Reference Include="PresentationCore" />
-    <Reference Include="PresentationFramework" />
-    <Reference Include="System" />
-    <Reference Include="System.ComponentModel.Composition" />
-    <Reference Include="System.configuration" />
-    <Reference Include="System.Core" />
-    <Reference Include="System.Data" />
-    <Reference Include="System.Drawing" />
-    <Reference Include="System.Runtime.Serialization" />
-    <Reference Include="System.Windows.Forms" />
-    <Reference Include="System.Xaml" />
-    <Reference Include="System.Xml" />
-    <Reference Include="WindowsBase" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="AllTreeViewModel.cs" />
-    <Compile Include="TreeLayout.cs" />
-    <Compile Include="TreeView.xaml.cs">
-      <DependentUpon>TreeView.xaml</DependentUpon>
-    </Compile>
-    <Compile Include="TreeViewModel.cs" />
-    <Compile Include="BehaviorTreeModule.cs" />
-    <Compile Include="AllTreeView.xaml.cs">
-      <DependentUpon>AllTreeView.xaml</DependentUpon>
-    </Compile>
-    <Compile Include="FolderVisiableConverter.cs" />
-    <Compile Include="NodeTypeToStringConverter.cs" />
-    <Compile Include="NodeTypeColorConverter.cs" />
-    <Compile Include="ListToStringConverter.cs" />
-    <Compile Include="NodeDataEditor.xaml.cs">
-      <DependentUpon>NodeDataEditor.xaml</DependentUpon>
-    </Compile>
-    <Compile Include="TreeNodeViewModel.cs" />
-  </ItemGroup>
-  <ItemGroup>
-    <Folder Include="Properties\" />
-  </ItemGroup>
-  <ItemGroup>
-    <None Include="app.config" />
-  </ItemGroup>
-  <ItemGroup>
-    <Page Include="AllTreeView.xaml">
-      <Generator>MSBuild:Compile</Generator>
-      <SubType>Designer</SubType>
-    </Page>
-    <Page Include="NodeDataEditor.xaml">
-      <SubType>Designer</SubType>
-      <Generator>MSBuild:Compile</Generator>
-    </Page>
-    <Page Include="TreeView.xaml">
-      <SubType>Designer</SubType>
-      <Generator>MSBuild:Compile</Generator>
-    </Page>
-  </ItemGroup>
-  <ItemGroup>
-    <ProjectReference Include="..\..\..\Game\Model\Model.csproj">
-      <Project>{0608c0c1-f584-4092-aaf9-1e99a78e3703}</Project>
-      <Name>Model</Name>
-    </ProjectReference>
-    <ProjectReference Include="..\..\..\Platform\Common\Common.csproj">
-      <Project>{f06b995e-6508-4c5c-a396-554316c9215d}</Project>
-      <Name>Common</Name>
-    </ProjectReference>
-    <ProjectReference Include="..\..\Infrastructure\Infrastructure.csproj">
-      <Project>{48a2e149-0dac-41b4-bb54-dfbccd6d42b3}</Project>
-      <Name>Infrastructure</Name>
-    </ProjectReference>
-  </ItemGroup>
-  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
-  <PropertyGroup>
-    <PreBuildEvent>
-    </PreBuildEvent>
-  </PropertyGroup>
-  <Import Project="$(SolutionDir)\.nuget\nuget.targets" />
-  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
-       Other similar extension points exist, see Microsoft.Common.targets.
-  <Target Name="BeforeBuild">
-  </Target>
-  <Target Name="AfterBuild">
-  </Target>
-  -->
-</Project>

+ 0 - 1842
CSharp/App/Modules/BehaviorTreeModule/CSharpOptions.cs

@@ -1,1842 +0,0 @@
-// Generated by ProtoGen, Version=2.4.1.473, Culture=neutral, PublicKeyToken=55f7125234beb589.  DO NOT EDIT!
-#pragma warning disable 1591, 0612
-#region Designer generated code
-
-using pb = global::Google.ProtocolBuffers;
-using pbc = global::Google.ProtocolBuffers.Collections;
-using pbd = global::Google.ProtocolBuffers.Descriptors;
-using scg = global::System.Collections.Generic;
-namespace Google.ProtocolBuffers.DescriptorProtos {
-  
-  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-  public static partial class CSharpOptions {
-  
-    #region Extension registration
-    public static void RegisterAllExtensions(pb::ExtensionRegistry registry) {
-      registry.Add(global::Google.ProtocolBuffers.DescriptorProtos.CSharpOptions.CSharpFileOptions);
-      registry.Add(global::Google.ProtocolBuffers.DescriptorProtos.CSharpOptions.CSharpFieldOptions);
-      registry.Add(global::Google.ProtocolBuffers.DescriptorProtos.CSharpOptions.CsharpServiceOptions);
-      registry.Add(global::Google.ProtocolBuffers.DescriptorProtos.CSharpOptions.CsharpMethodOptions);
-    }
-    #endregion
-    #region Extensions
-    public const int CSharpFileOptionsFieldNumber = 1000;
-    public static pb::GeneratedExtensionBase<global::Google.ProtocolBuffers.DescriptorProtos.CSharpFileOptions> CSharpFileOptions;
-    public const int CSharpFieldOptionsFieldNumber = 1000;
-    public static pb::GeneratedExtensionBase<global::Google.ProtocolBuffers.DescriptorProtos.CSharpFieldOptions> CSharpFieldOptions;
-    public const int CsharpServiceOptionsFieldNumber = 1000;
-    public static pb::GeneratedExtensionBase<global::Google.ProtocolBuffers.DescriptorProtos.CSharpServiceOptions> CsharpServiceOptions;
-    public const int CsharpMethodOptionsFieldNumber = 1000;
-    public static pb::GeneratedExtensionBase<global::Google.ProtocolBuffers.DescriptorProtos.CSharpMethodOptions> CsharpMethodOptions;
-    #endregion
-    
-    #region Static variables
-    internal static pbd::MessageDescriptor internal__static_google_protobuf_CSharpFileOptions__Descriptor;
-    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.CSharpFileOptions, global::Google.ProtocolBuffers.DescriptorProtos.CSharpFileOptions.Builder> internal__static_google_protobuf_CSharpFileOptions__FieldAccessorTable;
-    internal static pbd::MessageDescriptor internal__static_google_protobuf_CSharpFieldOptions__Descriptor;
-    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.CSharpFieldOptions, global::Google.ProtocolBuffers.DescriptorProtos.CSharpFieldOptions.Builder> internal__static_google_protobuf_CSharpFieldOptions__FieldAccessorTable;
-    internal static pbd::MessageDescriptor internal__static_google_protobuf_CSharpServiceOptions__Descriptor;
-    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.CSharpServiceOptions, global::Google.ProtocolBuffers.DescriptorProtos.CSharpServiceOptions.Builder> internal__static_google_protobuf_CSharpServiceOptions__FieldAccessorTable;
-    internal static pbd::MessageDescriptor internal__static_google_protobuf_CSharpMethodOptions__Descriptor;
-    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.CSharpMethodOptions, global::Google.ProtocolBuffers.DescriptorProtos.CSharpMethodOptions.Builder> internal__static_google_protobuf_CSharpMethodOptions__FieldAccessorTable;
-    #endregion
-    #region Descriptor
-    public static pbd::FileDescriptor Descriptor {
-      get { return descriptor; }
-    }
-    private static pbd::FileDescriptor descriptor;
-    
-    static CSharpOptions() {
-      byte[] descriptorData = global::System.Convert.FromBase64String(
-          "CiRnb29nbGUvcHJvdG9idWYvY3NoYXJwX29wdGlvbnMucHJvdG8SD2dvb2ds" + 
-          "ZS5wcm90b2J1ZhogZ29vZ2xlL3Byb3RvYnVmL2Rlc2NyaXB0b3IucHJvdG8i" + 
-          "/AMKEUNTaGFycEZpbGVPcHRpb25zEhEKCW5hbWVzcGFjZRgBIAEoCRIaChJ1" + 
-          "bWJyZWxsYV9jbGFzc25hbWUYAiABKAkSHAoOcHVibGljX2NsYXNzZXMYAyAB" + 
-          "KAg6BHRydWUSFgoObXVsdGlwbGVfZmlsZXMYBCABKAgSFAoMbmVzdF9jbGFz" + 
-          "c2VzGAUgASgIEhYKDmNvZGVfY29udHJhY3RzGAYgASgIEiQKHGV4cGFuZF9u" + 
-          "YW1lc3BhY2VfZGlyZWN0b3JpZXMYByABKAgSHAoOY2xzX2NvbXBsaWFuY2UY" + 
-          "CCABKAg6BHRydWUSHwoQYWRkX3NlcmlhbGl6YWJsZRgJIAEoCDoFZmFsc2US" + 
-          "IwoVZ2VuZXJhdGVfcHJpdmF0ZV9jdG9yGAogASgIOgR0cnVlEhwKDmZpbGVf" + 
-          "ZXh0ZW5zaW9uGN0BIAEoCToDLmNzEhsKEnVtYnJlbGxhX25hbWVzcGFjZRje" + 
-          "ASABKAkSHAoQb3V0cHV0X2RpcmVjdG9yeRjfASABKAk6AS4SJgoWaWdub3Jl" + 
-          "X2dvb2dsZV9wcm90b2J1ZhjgASABKAg6BWZhbHNlEkkKFnNlcnZpY2VfZ2Vu" + 
-          "ZXJhdG9yX3R5cGUY4QEgASgOMiIuZ29vZ2xlLnByb3RvYnVmLkNTaGFycFNl" + 
-          "cnZpY2VUeXBlOgROT05FIisKEkNTaGFycEZpZWxkT3B0aW9ucxIVCg1wcm9w" + 
-          "ZXJ0eV9uYW1lGAEgASgJIiwKFENTaGFycFNlcnZpY2VPcHRpb25zEhQKDGlu" + 
-          "dGVyZmFjZV9pZBgBIAEoCSIqChNDU2hhcnBNZXRob2RPcHRpb25zEhMKC2Rp" + 
-          "c3BhdGNoX2lkGAEgASgFKksKEUNTaGFycFNlcnZpY2VUeXBlEggKBE5PTkUQ" + 
-          "ABILCgdHRU5FUklDEAESDQoJSU5URVJGQUNFEAISEAoMSVJQQ0RJU1BBVENI" + 
-          "EAM6XgoTY3NoYXJwX2ZpbGVfb3B0aW9ucxIcLmdvb2dsZS5wcm90b2J1Zi5G" + 
-          "aWxlT3B0aW9ucxjoByABKAsyIi5nb29nbGUucHJvdG9idWYuQ1NoYXJwRmls" + 
-          "ZU9wdGlvbnM6YQoUY3NoYXJwX2ZpZWxkX29wdGlvbnMSHS5nb29nbGUucHJv" + 
-          "dG9idWYuRmllbGRPcHRpb25zGOgHIAEoCzIjLmdvb2dsZS5wcm90b2J1Zi5D" + 
-          "U2hhcnBGaWVsZE9wdGlvbnM6ZwoWY3NoYXJwX3NlcnZpY2Vfb3B0aW9ucxIf" + 
-          "Lmdvb2dsZS5wcm90b2J1Zi5TZXJ2aWNlT3B0aW9ucxjoByABKAsyJS5nb29n" + 
-          "bGUucHJvdG9idWYuQ1NoYXJwU2VydmljZU9wdGlvbnM6ZAoVY3NoYXJwX21l" + 
-          "dGhvZF9vcHRpb25zEh4uZ29vZ2xlLnByb3RvYnVmLk1ldGhvZE9wdGlvbnMY" + 
-          "6AcgASgLMiQuZ29vZ2xlLnByb3RvYnVmLkNTaGFycE1ldGhvZE9wdGlvbnM=");
-      pbd::FileDescriptor.InternalDescriptorAssigner assigner = delegate(pbd::FileDescriptor root) {
-        descriptor = root;
-        internal__static_google_protobuf_CSharpFileOptions__Descriptor = Descriptor.MessageTypes[0];
-        internal__static_google_protobuf_CSharpFileOptions__FieldAccessorTable = 
-            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.CSharpFileOptions, global::Google.ProtocolBuffers.DescriptorProtos.CSharpFileOptions.Builder>(internal__static_google_protobuf_CSharpFileOptions__Descriptor,
-                new string[] { "Namespace", "UmbrellaClassname", "PublicClasses", "MultipleFiles", "NestClasses", "CodeContracts", "ExpandNamespaceDirectories", "ClsCompliance", "AddSerializable", "GeneratePrivateCtor", "FileExtension", "UmbrellaNamespace", "OutputDirectory", "IgnoreGoogleProtobuf", "ServiceGeneratorType", });
-        internal__static_google_protobuf_CSharpFieldOptions__Descriptor = Descriptor.MessageTypes[1];
-        internal__static_google_protobuf_CSharpFieldOptions__FieldAccessorTable = 
-            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.CSharpFieldOptions, global::Google.ProtocolBuffers.DescriptorProtos.CSharpFieldOptions.Builder>(internal__static_google_protobuf_CSharpFieldOptions__Descriptor,
-                new string[] { "PropertyName", });
-        internal__static_google_protobuf_CSharpServiceOptions__Descriptor = Descriptor.MessageTypes[2];
-        internal__static_google_protobuf_CSharpServiceOptions__FieldAccessorTable = 
-            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.CSharpServiceOptions, global::Google.ProtocolBuffers.DescriptorProtos.CSharpServiceOptions.Builder>(internal__static_google_protobuf_CSharpServiceOptions__Descriptor,
-                new string[] { "InterfaceId", });
-        internal__static_google_protobuf_CSharpMethodOptions__Descriptor = Descriptor.MessageTypes[3];
-        internal__static_google_protobuf_CSharpMethodOptions__FieldAccessorTable = 
-            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.CSharpMethodOptions, global::Google.ProtocolBuffers.DescriptorProtos.CSharpMethodOptions.Builder>(internal__static_google_protobuf_CSharpMethodOptions__Descriptor,
-                new string[] { "DispatchId", });
-        global::Google.ProtocolBuffers.DescriptorProtos.CSharpOptions.CSharpFileOptions = pb::GeneratedSingleExtension<global::Google.ProtocolBuffers.DescriptorProtos.CSharpFileOptions>.CreateInstance(global::Google.ProtocolBuffers.DescriptorProtos.CSharpOptions.Descriptor.Extensions[0]);
-        global::Google.ProtocolBuffers.DescriptorProtos.CSharpOptions.CSharpFieldOptions = pb::GeneratedSingleExtension<global::Google.ProtocolBuffers.DescriptorProtos.CSharpFieldOptions>.CreateInstance(global::Google.ProtocolBuffers.DescriptorProtos.CSharpOptions.Descriptor.Extensions[1]);
-        global::Google.ProtocolBuffers.DescriptorProtos.CSharpOptions.CsharpServiceOptions = pb::GeneratedSingleExtension<global::Google.ProtocolBuffers.DescriptorProtos.CSharpServiceOptions>.CreateInstance(global::Google.ProtocolBuffers.DescriptorProtos.CSharpOptions.Descriptor.Extensions[2]);
-        global::Google.ProtocolBuffers.DescriptorProtos.CSharpOptions.CsharpMethodOptions = pb::GeneratedSingleExtension<global::Google.ProtocolBuffers.DescriptorProtos.CSharpMethodOptions>.CreateInstance(global::Google.ProtocolBuffers.DescriptorProtos.CSharpOptions.Descriptor.Extensions[3]);
-        return null;
-      };
-      pbd::FileDescriptor.InternalBuildGeneratedFileFrom(descriptorData,
-          new pbd::FileDescriptor[] {
-          global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, 
-          }, assigner);
-    }
-    #endregion
-    
-  }
-  #region Enums
-  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-  public enum CSharpServiceType {
-    NONE = 0,
-    GENERIC = 1,
-    INTERFACE = 2,
-    IRPCDISPATCH = 3,
-  }
-  
-  #endregion
-  
-  #region Messages
-  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-  public sealed partial class CSharpFileOptions : pb::GeneratedMessage<CSharpFileOptions, CSharpFileOptions.Builder> {
-    private CSharpFileOptions() { }
-    private static readonly CSharpFileOptions defaultInstance = new CSharpFileOptions().MakeReadOnly();
-    private static readonly string[] _cSharpFileOptionsFieldNames = new string[] { "add_serializable", "cls_compliance", "code_contracts", "expand_namespace_directories", "file_extension", "generate_private_ctor", "ignore_google_protobuf", "multiple_files", "namespace", "nest_classes", "output_directory", "public_classes", "service_generator_type", "umbrella_classname", "umbrella_namespace" };
-    private static readonly uint[] _cSharpFileOptionsFieldTags = new uint[] { 72, 64, 48, 56, 1770, 80, 1792, 32, 10, 40, 1786, 24, 1800, 18, 1778 };
-    public static CSharpFileOptions DefaultInstance {
-      get { return defaultInstance; }
-    }
-    
-    public override CSharpFileOptions DefaultInstanceForType {
-      get { return DefaultInstance; }
-    }
-    
-    protected override CSharpFileOptions ThisMessage {
-      get { return this; }
-    }
-    
-    public static pbd::MessageDescriptor Descriptor {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.CSharpOptions.internal__static_google_protobuf_CSharpFileOptions__Descriptor; }
-    }
-    
-    protected override pb::FieldAccess.FieldAccessorTable<CSharpFileOptions, CSharpFileOptions.Builder> InternalFieldAccessors {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.CSharpOptions.internal__static_google_protobuf_CSharpFileOptions__FieldAccessorTable; }
-    }
-    
-    public const int NamespaceFieldNumber = 1;
-    private bool hasNamespace;
-    private string namespace_ = "";
-    public bool HasNamespace {
-      get { return hasNamespace; }
-    }
-    public string Namespace {
-      get { return namespace_; }
-    }
-    
-    public const int UmbrellaClassnameFieldNumber = 2;
-    private bool hasUmbrellaClassname;
-    private string umbrellaClassname_ = "";
-    public bool HasUmbrellaClassname {
-      get { return hasUmbrellaClassname; }
-    }
-    public string UmbrellaClassname {
-      get { return umbrellaClassname_; }
-    }
-    
-    public const int PublicClassesFieldNumber = 3;
-    private bool hasPublicClasses;
-    private bool publicClasses_ = true;
-    public bool HasPublicClasses {
-      get { return hasPublicClasses; }
-    }
-    public bool PublicClasses {
-      get { return publicClasses_; }
-    }
-    
-    public const int MultipleFilesFieldNumber = 4;
-    private bool hasMultipleFiles;
-    private bool multipleFiles_;
-    public bool HasMultipleFiles {
-      get { return hasMultipleFiles; }
-    }
-    public bool MultipleFiles {
-      get { return multipleFiles_; }
-    }
-    
-    public const int NestClassesFieldNumber = 5;
-    private bool hasNestClasses;
-    private bool nestClasses_;
-    public bool HasNestClasses {
-      get { return hasNestClasses; }
-    }
-    public bool NestClasses {
-      get { return nestClasses_; }
-    }
-    
-    public const int CodeContractsFieldNumber = 6;
-    private bool hasCodeContracts;
-    private bool codeContracts_;
-    public bool HasCodeContracts {
-      get { return hasCodeContracts; }
-    }
-    public bool CodeContracts {
-      get { return codeContracts_; }
-    }
-    
-    public const int ExpandNamespaceDirectoriesFieldNumber = 7;
-    private bool hasExpandNamespaceDirectories;
-    private bool expandNamespaceDirectories_;
-    public bool HasExpandNamespaceDirectories {
-      get { return hasExpandNamespaceDirectories; }
-    }
-    public bool ExpandNamespaceDirectories {
-      get { return expandNamespaceDirectories_; }
-    }
-    
-    public const int ClsComplianceFieldNumber = 8;
-    private bool hasClsCompliance;
-    private bool clsCompliance_ = true;
-    public bool HasClsCompliance {
-      get { return hasClsCompliance; }
-    }
-    public bool ClsCompliance {
-      get { return clsCompliance_; }
-    }
-    
-    public const int AddSerializableFieldNumber = 9;
-    private bool hasAddSerializable;
-    private bool addSerializable_;
-    public bool HasAddSerializable {
-      get { return hasAddSerializable; }
-    }
-    public bool AddSerializable {
-      get { return addSerializable_; }
-    }
-    
-    public const int GeneratePrivateCtorFieldNumber = 10;
-    private bool hasGeneratePrivateCtor;
-    private bool generatePrivateCtor_ = true;
-    public bool HasGeneratePrivateCtor {
-      get { return hasGeneratePrivateCtor; }
-    }
-    public bool GeneratePrivateCtor {
-      get { return generatePrivateCtor_; }
-    }
-    
-    public const int FileExtensionFieldNumber = 221;
-    private bool hasFileExtension;
-    private string fileExtension_ = ".cs";
-    public bool HasFileExtension {
-      get { return hasFileExtension; }
-    }
-    public string FileExtension {
-      get { return fileExtension_; }
-    }
-    
-    public const int UmbrellaNamespaceFieldNumber = 222;
-    private bool hasUmbrellaNamespace;
-    private string umbrellaNamespace_ = "";
-    public bool HasUmbrellaNamespace {
-      get { return hasUmbrellaNamespace; }
-    }
-    public string UmbrellaNamespace {
-      get { return umbrellaNamespace_; }
-    }
-    
-    public const int OutputDirectoryFieldNumber = 223;
-    private bool hasOutputDirectory;
-    private string outputDirectory_ = ".";
-    public bool HasOutputDirectory {
-      get { return hasOutputDirectory; }
-    }
-    public string OutputDirectory {
-      get { return outputDirectory_; }
-    }
-    
-    public const int IgnoreGoogleProtobufFieldNumber = 224;
-    private bool hasIgnoreGoogleProtobuf;
-    private bool ignoreGoogleProtobuf_;
-    public bool HasIgnoreGoogleProtobuf {
-      get { return hasIgnoreGoogleProtobuf; }
-    }
-    public bool IgnoreGoogleProtobuf {
-      get { return ignoreGoogleProtobuf_; }
-    }
-    
-    public const int ServiceGeneratorTypeFieldNumber = 225;
-    private bool hasServiceGeneratorType;
-    private global::Google.ProtocolBuffers.DescriptorProtos.CSharpServiceType serviceGeneratorType_ = global::Google.ProtocolBuffers.DescriptorProtos.CSharpServiceType.NONE;
-    public bool HasServiceGeneratorType {
-      get { return hasServiceGeneratorType; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.CSharpServiceType ServiceGeneratorType {
-      get { return serviceGeneratorType_; }
-    }
-    
-    public override bool IsInitialized {
-      get {
-        return true;
-      }
-    }
-    
-    public override void WriteTo(pb::ICodedOutputStream output) {
-      int size = SerializedSize;
-      string[] field_names = _cSharpFileOptionsFieldNames;
-      if (hasNamespace) {
-        output.WriteString(1, field_names[8], Namespace);
-      }
-      if (hasUmbrellaClassname) {
-        output.WriteString(2, field_names[13], UmbrellaClassname);
-      }
-      if (hasPublicClasses) {
-        output.WriteBool(3, field_names[11], PublicClasses);
-      }
-      if (hasMultipleFiles) {
-        output.WriteBool(4, field_names[7], MultipleFiles);
-      }
-      if (hasNestClasses) {
-        output.WriteBool(5, field_names[9], NestClasses);
-      }
-      if (hasCodeContracts) {
-        output.WriteBool(6, field_names[2], CodeContracts);
-      }
-      if (hasExpandNamespaceDirectories) {
-        output.WriteBool(7, field_names[3], ExpandNamespaceDirectories);
-      }
-      if (hasClsCompliance) {
-        output.WriteBool(8, field_names[1], ClsCompliance);
-      }
-      if (hasAddSerializable) {
-        output.WriteBool(9, field_names[0], AddSerializable);
-      }
-      if (hasGeneratePrivateCtor) {
-        output.WriteBool(10, field_names[5], GeneratePrivateCtor);
-      }
-      if (hasFileExtension) {
-        output.WriteString(221, field_names[4], FileExtension);
-      }
-      if (hasUmbrellaNamespace) {
-        output.WriteString(222, field_names[14], UmbrellaNamespace);
-      }
-      if (hasOutputDirectory) {
-        output.WriteString(223, field_names[10], OutputDirectory);
-      }
-      if (hasIgnoreGoogleProtobuf) {
-        output.WriteBool(224, field_names[6], IgnoreGoogleProtobuf);
-      }
-      if (hasServiceGeneratorType) {
-        output.WriteEnum(225, field_names[12], (int) ServiceGeneratorType, ServiceGeneratorType);
-      }
-      UnknownFields.WriteTo(output);
-    }
-    
-    private int memoizedSerializedSize = -1;
-    public override int SerializedSize {
-      get {
-        int size = memoizedSerializedSize;
-        if (size != -1) return size;
-        
-        size = 0;
-        if (hasNamespace) {
-          size += pb::CodedOutputStream.ComputeStringSize(1, Namespace);
-        }
-        if (hasUmbrellaClassname) {
-          size += pb::CodedOutputStream.ComputeStringSize(2, UmbrellaClassname);
-        }
-        if (hasPublicClasses) {
-          size += pb::CodedOutputStream.ComputeBoolSize(3, PublicClasses);
-        }
-        if (hasMultipleFiles) {
-          size += pb::CodedOutputStream.ComputeBoolSize(4, MultipleFiles);
-        }
-        if (hasNestClasses) {
-          size += pb::CodedOutputStream.ComputeBoolSize(5, NestClasses);
-        }
-        if (hasCodeContracts) {
-          size += pb::CodedOutputStream.ComputeBoolSize(6, CodeContracts);
-        }
-        if (hasExpandNamespaceDirectories) {
-          size += pb::CodedOutputStream.ComputeBoolSize(7, ExpandNamespaceDirectories);
-        }
-        if (hasClsCompliance) {
-          size += pb::CodedOutputStream.ComputeBoolSize(8, ClsCompliance);
-        }
-        if (hasAddSerializable) {
-          size += pb::CodedOutputStream.ComputeBoolSize(9, AddSerializable);
-        }
-        if (hasGeneratePrivateCtor) {
-          size += pb::CodedOutputStream.ComputeBoolSize(10, GeneratePrivateCtor);
-        }
-        if (hasFileExtension) {
-          size += pb::CodedOutputStream.ComputeStringSize(221, FileExtension);
-        }
-        if (hasUmbrellaNamespace) {
-          size += pb::CodedOutputStream.ComputeStringSize(222, UmbrellaNamespace);
-        }
-        if (hasOutputDirectory) {
-          size += pb::CodedOutputStream.ComputeStringSize(223, OutputDirectory);
-        }
-        if (hasIgnoreGoogleProtobuf) {
-          size += pb::CodedOutputStream.ComputeBoolSize(224, IgnoreGoogleProtobuf);
-        }
-        if (hasServiceGeneratorType) {
-          size += pb::CodedOutputStream.ComputeEnumSize(225, (int) ServiceGeneratorType);
-        }
-        size += UnknownFields.SerializedSize;
-        memoizedSerializedSize = size;
-        return size;
-      }
-    }
-    
-    public static CSharpFileOptions ParseFrom(pb::ByteString data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static CSharpFileOptions ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static CSharpFileOptions ParseFrom(byte[] data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static CSharpFileOptions ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static CSharpFileOptions ParseFrom(global::System.IO.Stream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static CSharpFileOptions ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    public static CSharpFileOptions ParseDelimitedFrom(global::System.IO.Stream input) {
-      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
-    }
-    public static CSharpFileOptions ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
-    }
-    public static CSharpFileOptions ParseFrom(pb::ICodedInputStream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static CSharpFileOptions ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    private CSharpFileOptions MakeReadOnly() {
-      return this;
-    }
-    
-    public static Builder CreateBuilder() { return new Builder(); }
-    public override Builder ToBuilder() { return CreateBuilder(this); }
-    public override Builder CreateBuilderForType() { return new Builder(); }
-    public static Builder CreateBuilder(CSharpFileOptions prototype) {
-      return new Builder(prototype);
-    }
-    
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-    public sealed partial class Builder : pb::GeneratedBuilder<CSharpFileOptions, Builder> {
-      protected override Builder ThisBuilder {
-        get { return this; }
-      }
-      public Builder() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-      }
-      internal Builder(CSharpFileOptions cloneFrom) {
-        result = cloneFrom;
-        resultIsReadOnly = true;
-      }
-      
-      private bool resultIsReadOnly;
-      private CSharpFileOptions result;
-      
-      private CSharpFileOptions PrepareBuilder() {
-        if (resultIsReadOnly) {
-          CSharpFileOptions original = result;
-          result = new CSharpFileOptions();
-          resultIsReadOnly = false;
-          MergeFrom(original);
-        }
-        return result;
-      }
-      
-      public override bool IsInitialized {
-        get { return result.IsInitialized; }
-      }
-      
-      protected override CSharpFileOptions MessageBeingBuilt {
-        get { return PrepareBuilder(); }
-      }
-      
-      public override Builder Clear() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-        return this;
-      }
-      
-      public override Builder Clone() {
-        if (resultIsReadOnly) {
-          return new Builder(result);
-        } else {
-          return new Builder().MergeFrom(result);
-        }
-      }
-      
-      public override pbd::MessageDescriptor DescriptorForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.CSharpFileOptions.Descriptor; }
-      }
-      
-      public override CSharpFileOptions DefaultInstanceForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.CSharpFileOptions.DefaultInstance; }
-      }
-      
-      public override CSharpFileOptions BuildPartial() {
-        if (resultIsReadOnly) {
-          return result;
-        }
-        resultIsReadOnly = true;
-        return result.MakeReadOnly();
-      }
-      
-      public override Builder MergeFrom(pb::IMessage other) {
-        if (other is CSharpFileOptions) {
-          return MergeFrom((CSharpFileOptions) other);
-        } else {
-          base.MergeFrom(other);
-          return this;
-        }
-      }
-      
-      public override Builder MergeFrom(CSharpFileOptions other) {
-        if (other == global::Google.ProtocolBuffers.DescriptorProtos.CSharpFileOptions.DefaultInstance) return this;
-        PrepareBuilder();
-        if (other.HasNamespace) {
-          Namespace = other.Namespace;
-        }
-        if (other.HasUmbrellaClassname) {
-          UmbrellaClassname = other.UmbrellaClassname;
-        }
-        if (other.HasPublicClasses) {
-          PublicClasses = other.PublicClasses;
-        }
-        if (other.HasMultipleFiles) {
-          MultipleFiles = other.MultipleFiles;
-        }
-        if (other.HasNestClasses) {
-          NestClasses = other.NestClasses;
-        }
-        if (other.HasCodeContracts) {
-          CodeContracts = other.CodeContracts;
-        }
-        if (other.HasExpandNamespaceDirectories) {
-          ExpandNamespaceDirectories = other.ExpandNamespaceDirectories;
-        }
-        if (other.HasClsCompliance) {
-          ClsCompliance = other.ClsCompliance;
-        }
-        if (other.HasAddSerializable) {
-          AddSerializable = other.AddSerializable;
-        }
-        if (other.HasGeneratePrivateCtor) {
-          GeneratePrivateCtor = other.GeneratePrivateCtor;
-        }
-        if (other.HasFileExtension) {
-          FileExtension = other.FileExtension;
-        }
-        if (other.HasUmbrellaNamespace) {
-          UmbrellaNamespace = other.UmbrellaNamespace;
-        }
-        if (other.HasOutputDirectory) {
-          OutputDirectory = other.OutputDirectory;
-        }
-        if (other.HasIgnoreGoogleProtobuf) {
-          IgnoreGoogleProtobuf = other.IgnoreGoogleProtobuf;
-        }
-        if (other.HasServiceGeneratorType) {
-          ServiceGeneratorType = other.ServiceGeneratorType;
-        }
-        this.MergeUnknownFields(other.UnknownFields);
-        return this;
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input) {
-        return MergeFrom(input, pb::ExtensionRegistry.Empty);
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-        PrepareBuilder();
-        pb::UnknownFieldSet.Builder unknownFields = null;
-        uint tag;
-        string field_name;
-        while (input.ReadTag(out tag, out field_name)) {
-          if(tag == 0 && field_name != null) {
-            int field_ordinal = global::System.Array.BinarySearch(_cSharpFileOptionsFieldNames, field_name, global::System.StringComparer.Ordinal);
-            if(field_ordinal >= 0)
-              tag = _cSharpFileOptionsFieldTags[field_ordinal];
-            else {
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              continue;
-            }
-          }
-          switch (tag) {
-            case 0: {
-              throw pb::InvalidProtocolBufferException.InvalidTag();
-            }
-            default: {
-              if (pb::WireFormat.IsEndGroupTag(tag)) {
-                if (unknownFields != null) {
-                  this.UnknownFields = unknownFields.Build();
-                }
-                return this;
-              }
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              break;
-            }
-            case 10: {
-              result.hasNamespace = input.ReadString(ref result.namespace_);
-              break;
-            }
-            case 18: {
-              result.hasUmbrellaClassname = input.ReadString(ref result.umbrellaClassname_);
-              break;
-            }
-            case 24: {
-              result.hasPublicClasses = input.ReadBool(ref result.publicClasses_);
-              break;
-            }
-            case 32: {
-              result.hasMultipleFiles = input.ReadBool(ref result.multipleFiles_);
-              break;
-            }
-            case 40: {
-              result.hasNestClasses = input.ReadBool(ref result.nestClasses_);
-              break;
-            }
-            case 48: {
-              result.hasCodeContracts = input.ReadBool(ref result.codeContracts_);
-              break;
-            }
-            case 56: {
-              result.hasExpandNamespaceDirectories = input.ReadBool(ref result.expandNamespaceDirectories_);
-              break;
-            }
-            case 64: {
-              result.hasClsCompliance = input.ReadBool(ref result.clsCompliance_);
-              break;
-            }
-            case 72: {
-              result.hasAddSerializable = input.ReadBool(ref result.addSerializable_);
-              break;
-            }
-            case 80: {
-              result.hasGeneratePrivateCtor = input.ReadBool(ref result.generatePrivateCtor_);
-              break;
-            }
-            case 1770: {
-              result.hasFileExtension = input.ReadString(ref result.fileExtension_);
-              break;
-            }
-            case 1778: {
-              result.hasUmbrellaNamespace = input.ReadString(ref result.umbrellaNamespace_);
-              break;
-            }
-            case 1786: {
-              result.hasOutputDirectory = input.ReadString(ref result.outputDirectory_);
-              break;
-            }
-            case 1792: {
-              result.hasIgnoreGoogleProtobuf = input.ReadBool(ref result.ignoreGoogleProtobuf_);
-              break;
-            }
-            case 1800: {
-              object unknown;
-              if(input.ReadEnum(ref result.serviceGeneratorType_, out unknown)) {
-                result.hasServiceGeneratorType = true;
-              } else if(unknown is int) {
-                if (unknownFields == null) {
-                  unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-                }
-                unknownFields.MergeVarintField(225, (ulong)(int)unknown);
-              }
-              break;
-            }
-          }
-        }
-        
-        if (unknownFields != null) {
-          this.UnknownFields = unknownFields.Build();
-        }
-        return this;
-      }
-      
-      
-      public bool HasNamespace {
-        get { return result.hasNamespace; }
-      }
-      public string Namespace {
-        get { return result.Namespace; }
-        set { SetNamespace(value); }
-      }
-      public Builder SetNamespace(string value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasNamespace = true;
-        result.namespace_ = value;
-        return this;
-      }
-      public Builder ClearNamespace() {
-        PrepareBuilder();
-        result.hasNamespace = false;
-        result.namespace_ = "";
-        return this;
-      }
-      
-      public bool HasUmbrellaClassname {
-        get { return result.hasUmbrellaClassname; }
-      }
-      public string UmbrellaClassname {
-        get { return result.UmbrellaClassname; }
-        set { SetUmbrellaClassname(value); }
-      }
-      public Builder SetUmbrellaClassname(string value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasUmbrellaClassname = true;
-        result.umbrellaClassname_ = value;
-        return this;
-      }
-      public Builder ClearUmbrellaClassname() {
-        PrepareBuilder();
-        result.hasUmbrellaClassname = false;
-        result.umbrellaClassname_ = "";
-        return this;
-      }
-      
-      public bool HasPublicClasses {
-        get { return result.hasPublicClasses; }
-      }
-      public bool PublicClasses {
-        get { return result.PublicClasses; }
-        set { SetPublicClasses(value); }
-      }
-      public Builder SetPublicClasses(bool value) {
-        PrepareBuilder();
-        result.hasPublicClasses = true;
-        result.publicClasses_ = value;
-        return this;
-      }
-      public Builder ClearPublicClasses() {
-        PrepareBuilder();
-        result.hasPublicClasses = false;
-        result.publicClasses_ = true;
-        return this;
-      }
-      
-      public bool HasMultipleFiles {
-        get { return result.hasMultipleFiles; }
-      }
-      public bool MultipleFiles {
-        get { return result.MultipleFiles; }
-        set { SetMultipleFiles(value); }
-      }
-      public Builder SetMultipleFiles(bool value) {
-        PrepareBuilder();
-        result.hasMultipleFiles = true;
-        result.multipleFiles_ = value;
-        return this;
-      }
-      public Builder ClearMultipleFiles() {
-        PrepareBuilder();
-        result.hasMultipleFiles = false;
-        result.multipleFiles_ = false;
-        return this;
-      }
-      
-      public bool HasNestClasses {
-        get { return result.hasNestClasses; }
-      }
-      public bool NestClasses {
-        get { return result.NestClasses; }
-        set { SetNestClasses(value); }
-      }
-      public Builder SetNestClasses(bool value) {
-        PrepareBuilder();
-        result.hasNestClasses = true;
-        result.nestClasses_ = value;
-        return this;
-      }
-      public Builder ClearNestClasses() {
-        PrepareBuilder();
-        result.hasNestClasses = false;
-        result.nestClasses_ = false;
-        return this;
-      }
-      
-      public bool HasCodeContracts {
-        get { return result.hasCodeContracts; }
-      }
-      public bool CodeContracts {
-        get { return result.CodeContracts; }
-        set { SetCodeContracts(value); }
-      }
-      public Builder SetCodeContracts(bool value) {
-        PrepareBuilder();
-        result.hasCodeContracts = true;
-        result.codeContracts_ = value;
-        return this;
-      }
-      public Builder ClearCodeContracts() {
-        PrepareBuilder();
-        result.hasCodeContracts = false;
-        result.codeContracts_ = false;
-        return this;
-      }
-      
-      public bool HasExpandNamespaceDirectories {
-        get { return result.hasExpandNamespaceDirectories; }
-      }
-      public bool ExpandNamespaceDirectories {
-        get { return result.ExpandNamespaceDirectories; }
-        set { SetExpandNamespaceDirectories(value); }
-      }
-      public Builder SetExpandNamespaceDirectories(bool value) {
-        PrepareBuilder();
-        result.hasExpandNamespaceDirectories = true;
-        result.expandNamespaceDirectories_ = value;
-        return this;
-      }
-      public Builder ClearExpandNamespaceDirectories() {
-        PrepareBuilder();
-        result.hasExpandNamespaceDirectories = false;
-        result.expandNamespaceDirectories_ = false;
-        return this;
-      }
-      
-      public bool HasClsCompliance {
-        get { return result.hasClsCompliance; }
-      }
-      public bool ClsCompliance {
-        get { return result.ClsCompliance; }
-        set { SetClsCompliance(value); }
-      }
-      public Builder SetClsCompliance(bool value) {
-        PrepareBuilder();
-        result.hasClsCompliance = true;
-        result.clsCompliance_ = value;
-        return this;
-      }
-      public Builder ClearClsCompliance() {
-        PrepareBuilder();
-        result.hasClsCompliance = false;
-        result.clsCompliance_ = true;
-        return this;
-      }
-      
-      public bool HasAddSerializable {
-        get { return result.hasAddSerializable; }
-      }
-      public bool AddSerializable {
-        get { return result.AddSerializable; }
-        set { SetAddSerializable(value); }
-      }
-      public Builder SetAddSerializable(bool value) {
-        PrepareBuilder();
-        result.hasAddSerializable = true;
-        result.addSerializable_ = value;
-        return this;
-      }
-      public Builder ClearAddSerializable() {
-        PrepareBuilder();
-        result.hasAddSerializable = false;
-        result.addSerializable_ = false;
-        return this;
-      }
-      
-      public bool HasGeneratePrivateCtor {
-        get { return result.hasGeneratePrivateCtor; }
-      }
-      public bool GeneratePrivateCtor {
-        get { return result.GeneratePrivateCtor; }
-        set { SetGeneratePrivateCtor(value); }
-      }
-      public Builder SetGeneratePrivateCtor(bool value) {
-        PrepareBuilder();
-        result.hasGeneratePrivateCtor = true;
-        result.generatePrivateCtor_ = value;
-        return this;
-      }
-      public Builder ClearGeneratePrivateCtor() {
-        PrepareBuilder();
-        result.hasGeneratePrivateCtor = false;
-        result.generatePrivateCtor_ = true;
-        return this;
-      }
-      
-      public bool HasFileExtension {
-        get { return result.hasFileExtension; }
-      }
-      public string FileExtension {
-        get { return result.FileExtension; }
-        set { SetFileExtension(value); }
-      }
-      public Builder SetFileExtension(string value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasFileExtension = true;
-        result.fileExtension_ = value;
-        return this;
-      }
-      public Builder ClearFileExtension() {
-        PrepareBuilder();
-        result.hasFileExtension = false;
-        result.fileExtension_ = ".cs";
-        return this;
-      }
-      
-      public bool HasUmbrellaNamespace {
-        get { return result.hasUmbrellaNamespace; }
-      }
-      public string UmbrellaNamespace {
-        get { return result.UmbrellaNamespace; }
-        set { SetUmbrellaNamespace(value); }
-      }
-      public Builder SetUmbrellaNamespace(string value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasUmbrellaNamespace = true;
-        result.umbrellaNamespace_ = value;
-        return this;
-      }
-      public Builder ClearUmbrellaNamespace() {
-        PrepareBuilder();
-        result.hasUmbrellaNamespace = false;
-        result.umbrellaNamespace_ = "";
-        return this;
-      }
-      
-      public bool HasOutputDirectory {
-        get { return result.hasOutputDirectory; }
-      }
-      public string OutputDirectory {
-        get { return result.OutputDirectory; }
-        set { SetOutputDirectory(value); }
-      }
-      public Builder SetOutputDirectory(string value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasOutputDirectory = true;
-        result.outputDirectory_ = value;
-        return this;
-      }
-      public Builder ClearOutputDirectory() {
-        PrepareBuilder();
-        result.hasOutputDirectory = false;
-        result.outputDirectory_ = ".";
-        return this;
-      }
-      
-      public bool HasIgnoreGoogleProtobuf {
-        get { return result.hasIgnoreGoogleProtobuf; }
-      }
-      public bool IgnoreGoogleProtobuf {
-        get { return result.IgnoreGoogleProtobuf; }
-        set { SetIgnoreGoogleProtobuf(value); }
-      }
-      public Builder SetIgnoreGoogleProtobuf(bool value) {
-        PrepareBuilder();
-        result.hasIgnoreGoogleProtobuf = true;
-        result.ignoreGoogleProtobuf_ = value;
-        return this;
-      }
-      public Builder ClearIgnoreGoogleProtobuf() {
-        PrepareBuilder();
-        result.hasIgnoreGoogleProtobuf = false;
-        result.ignoreGoogleProtobuf_ = false;
-        return this;
-      }
-      
-      public bool HasServiceGeneratorType {
-       get { return result.hasServiceGeneratorType; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.CSharpServiceType ServiceGeneratorType {
-        get { return result.ServiceGeneratorType; }
-        set { SetServiceGeneratorType(value); }
-      }
-      public Builder SetServiceGeneratorType(global::Google.ProtocolBuffers.DescriptorProtos.CSharpServiceType value) {
-        PrepareBuilder();
-        result.hasServiceGeneratorType = true;
-        result.serviceGeneratorType_ = value;
-        return this;
-      }
-      public Builder ClearServiceGeneratorType() {
-        PrepareBuilder();
-        result.hasServiceGeneratorType = false;
-        result.serviceGeneratorType_ = global::Google.ProtocolBuffers.DescriptorProtos.CSharpServiceType.NONE;
-        return this;
-      }
-    }
-    static CSharpFileOptions() {
-      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.CSharpOptions.Descriptor, null);
-    }
-  }
-  
-  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-  public sealed partial class CSharpFieldOptions : pb::GeneratedMessage<CSharpFieldOptions, CSharpFieldOptions.Builder> {
-    private CSharpFieldOptions() { }
-    private static readonly CSharpFieldOptions defaultInstance = new CSharpFieldOptions().MakeReadOnly();
-    private static readonly string[] _cSharpFieldOptionsFieldNames = new string[] { "property_name" };
-    private static readonly uint[] _cSharpFieldOptionsFieldTags = new uint[] { 10 };
-    public static CSharpFieldOptions DefaultInstance {
-      get { return defaultInstance; }
-    }
-    
-    public override CSharpFieldOptions DefaultInstanceForType {
-      get { return DefaultInstance; }
-    }
-    
-    protected override CSharpFieldOptions ThisMessage {
-      get { return this; }
-    }
-    
-    public static pbd::MessageDescriptor Descriptor {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.CSharpOptions.internal__static_google_protobuf_CSharpFieldOptions__Descriptor; }
-    }
-    
-    protected override pb::FieldAccess.FieldAccessorTable<CSharpFieldOptions, CSharpFieldOptions.Builder> InternalFieldAccessors {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.CSharpOptions.internal__static_google_protobuf_CSharpFieldOptions__FieldAccessorTable; }
-    }
-    
-    public const int PropertyNameFieldNumber = 1;
-    private bool hasPropertyName;
-    private string propertyName_ = "";
-    public bool HasPropertyName {
-      get { return hasPropertyName; }
-    }
-    public string PropertyName {
-      get { return propertyName_; }
-    }
-    
-    public override bool IsInitialized {
-      get {
-        return true;
-      }
-    }
-    
-    public override void WriteTo(pb::ICodedOutputStream output) {
-      int size = SerializedSize;
-      string[] field_names = _cSharpFieldOptionsFieldNames;
-      if (hasPropertyName) {
-        output.WriteString(1, field_names[0], PropertyName);
-      }
-      UnknownFields.WriteTo(output);
-    }
-    
-    private int memoizedSerializedSize = -1;
-    public override int SerializedSize {
-      get {
-        int size = memoizedSerializedSize;
-        if (size != -1) return size;
-        
-        size = 0;
-        if (hasPropertyName) {
-          size += pb::CodedOutputStream.ComputeStringSize(1, PropertyName);
-        }
-        size += UnknownFields.SerializedSize;
-        memoizedSerializedSize = size;
-        return size;
-      }
-    }
-    
-    public static CSharpFieldOptions ParseFrom(pb::ByteString data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static CSharpFieldOptions ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static CSharpFieldOptions ParseFrom(byte[] data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static CSharpFieldOptions ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static CSharpFieldOptions ParseFrom(global::System.IO.Stream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static CSharpFieldOptions ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    public static CSharpFieldOptions ParseDelimitedFrom(global::System.IO.Stream input) {
-      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
-    }
-    public static CSharpFieldOptions ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
-    }
-    public static CSharpFieldOptions ParseFrom(pb::ICodedInputStream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static CSharpFieldOptions ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    private CSharpFieldOptions MakeReadOnly() {
-      return this;
-    }
-    
-    public static Builder CreateBuilder() { return new Builder(); }
-    public override Builder ToBuilder() { return CreateBuilder(this); }
-    public override Builder CreateBuilderForType() { return new Builder(); }
-    public static Builder CreateBuilder(CSharpFieldOptions prototype) {
-      return new Builder(prototype);
-    }
-    
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-    public sealed partial class Builder : pb::GeneratedBuilder<CSharpFieldOptions, Builder> {
-      protected override Builder ThisBuilder {
-        get { return this; }
-      }
-      public Builder() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-      }
-      internal Builder(CSharpFieldOptions cloneFrom) {
-        result = cloneFrom;
-        resultIsReadOnly = true;
-      }
-      
-      private bool resultIsReadOnly;
-      private CSharpFieldOptions result;
-      
-      private CSharpFieldOptions PrepareBuilder() {
-        if (resultIsReadOnly) {
-          CSharpFieldOptions original = result;
-          result = new CSharpFieldOptions();
-          resultIsReadOnly = false;
-          MergeFrom(original);
-        }
-        return result;
-      }
-      
-      public override bool IsInitialized {
-        get { return result.IsInitialized; }
-      }
-      
-      protected override CSharpFieldOptions MessageBeingBuilt {
-        get { return PrepareBuilder(); }
-      }
-      
-      public override Builder Clear() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-        return this;
-      }
-      
-      public override Builder Clone() {
-        if (resultIsReadOnly) {
-          return new Builder(result);
-        } else {
-          return new Builder().MergeFrom(result);
-        }
-      }
-      
-      public override pbd::MessageDescriptor DescriptorForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.CSharpFieldOptions.Descriptor; }
-      }
-      
-      public override CSharpFieldOptions DefaultInstanceForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.CSharpFieldOptions.DefaultInstance; }
-      }
-      
-      public override CSharpFieldOptions BuildPartial() {
-        if (resultIsReadOnly) {
-          return result;
-        }
-        resultIsReadOnly = true;
-        return result.MakeReadOnly();
-      }
-      
-      public override Builder MergeFrom(pb::IMessage other) {
-        if (other is CSharpFieldOptions) {
-          return MergeFrom((CSharpFieldOptions) other);
-        } else {
-          base.MergeFrom(other);
-          return this;
-        }
-      }
-      
-      public override Builder MergeFrom(CSharpFieldOptions other) {
-        if (other == global::Google.ProtocolBuffers.DescriptorProtos.CSharpFieldOptions.DefaultInstance) return this;
-        PrepareBuilder();
-        if (other.HasPropertyName) {
-          PropertyName = other.PropertyName;
-        }
-        this.MergeUnknownFields(other.UnknownFields);
-        return this;
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input) {
-        return MergeFrom(input, pb::ExtensionRegistry.Empty);
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-        PrepareBuilder();
-        pb::UnknownFieldSet.Builder unknownFields = null;
-        uint tag;
-        string field_name;
-        while (input.ReadTag(out tag, out field_name)) {
-          if(tag == 0 && field_name != null) {
-            int field_ordinal = global::System.Array.BinarySearch(_cSharpFieldOptionsFieldNames, field_name, global::System.StringComparer.Ordinal);
-            if(field_ordinal >= 0)
-              tag = _cSharpFieldOptionsFieldTags[field_ordinal];
-            else {
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              continue;
-            }
-          }
-          switch (tag) {
-            case 0: {
-              throw pb::InvalidProtocolBufferException.InvalidTag();
-            }
-            default: {
-              if (pb::WireFormat.IsEndGroupTag(tag)) {
-                if (unknownFields != null) {
-                  this.UnknownFields = unknownFields.Build();
-                }
-                return this;
-              }
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              break;
-            }
-            case 10: {
-              result.hasPropertyName = input.ReadString(ref result.propertyName_);
-              break;
-            }
-          }
-        }
-        
-        if (unknownFields != null) {
-          this.UnknownFields = unknownFields.Build();
-        }
-        return this;
-      }
-      
-      
-      public bool HasPropertyName {
-        get { return result.hasPropertyName; }
-      }
-      public string PropertyName {
-        get { return result.PropertyName; }
-        set { SetPropertyName(value); }
-      }
-      public Builder SetPropertyName(string value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasPropertyName = true;
-        result.propertyName_ = value;
-        return this;
-      }
-      public Builder ClearPropertyName() {
-        PrepareBuilder();
-        result.hasPropertyName = false;
-        result.propertyName_ = "";
-        return this;
-      }
-    }
-    static CSharpFieldOptions() {
-      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.CSharpOptions.Descriptor, null);
-    }
-  }
-  
-  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-  public sealed partial class CSharpServiceOptions : pb::GeneratedMessage<CSharpServiceOptions, CSharpServiceOptions.Builder> {
-    private CSharpServiceOptions() { }
-    private static readonly CSharpServiceOptions defaultInstance = new CSharpServiceOptions().MakeReadOnly();
-    private static readonly string[] _cSharpServiceOptionsFieldNames = new string[] { "interface_id" };
-    private static readonly uint[] _cSharpServiceOptionsFieldTags = new uint[] { 10 };
-    public static CSharpServiceOptions DefaultInstance {
-      get { return defaultInstance; }
-    }
-    
-    public override CSharpServiceOptions DefaultInstanceForType {
-      get { return DefaultInstance; }
-    }
-    
-    protected override CSharpServiceOptions ThisMessage {
-      get { return this; }
-    }
-    
-    public static pbd::MessageDescriptor Descriptor {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.CSharpOptions.internal__static_google_protobuf_CSharpServiceOptions__Descriptor; }
-    }
-    
-    protected override pb::FieldAccess.FieldAccessorTable<CSharpServiceOptions, CSharpServiceOptions.Builder> InternalFieldAccessors {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.CSharpOptions.internal__static_google_protobuf_CSharpServiceOptions__FieldAccessorTable; }
-    }
-    
-    public const int InterfaceIdFieldNumber = 1;
-    private bool hasInterfaceId;
-    private string interfaceId_ = "";
-    public bool HasInterfaceId {
-      get { return hasInterfaceId; }
-    }
-    public string InterfaceId {
-      get { return interfaceId_; }
-    }
-    
-    public override bool IsInitialized {
-      get {
-        return true;
-      }
-    }
-    
-    public override void WriteTo(pb::ICodedOutputStream output) {
-      int size = SerializedSize;
-      string[] field_names = _cSharpServiceOptionsFieldNames;
-      if (hasInterfaceId) {
-        output.WriteString(1, field_names[0], InterfaceId);
-      }
-      UnknownFields.WriteTo(output);
-    }
-    
-    private int memoizedSerializedSize = -1;
-    public override int SerializedSize {
-      get {
-        int size = memoizedSerializedSize;
-        if (size != -1) return size;
-        
-        size = 0;
-        if (hasInterfaceId) {
-          size += pb::CodedOutputStream.ComputeStringSize(1, InterfaceId);
-        }
-        size += UnknownFields.SerializedSize;
-        memoizedSerializedSize = size;
-        return size;
-      }
-    }
-    
-    public static CSharpServiceOptions ParseFrom(pb::ByteString data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static CSharpServiceOptions ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static CSharpServiceOptions ParseFrom(byte[] data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static CSharpServiceOptions ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static CSharpServiceOptions ParseFrom(global::System.IO.Stream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static CSharpServiceOptions ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    public static CSharpServiceOptions ParseDelimitedFrom(global::System.IO.Stream input) {
-      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
-    }
-    public static CSharpServiceOptions ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
-    }
-    public static CSharpServiceOptions ParseFrom(pb::ICodedInputStream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static CSharpServiceOptions ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    private CSharpServiceOptions MakeReadOnly() {
-      return this;
-    }
-    
-    public static Builder CreateBuilder() { return new Builder(); }
-    public override Builder ToBuilder() { return CreateBuilder(this); }
-    public override Builder CreateBuilderForType() { return new Builder(); }
-    public static Builder CreateBuilder(CSharpServiceOptions prototype) {
-      return new Builder(prototype);
-    }
-    
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-    public sealed partial class Builder : pb::GeneratedBuilder<CSharpServiceOptions, Builder> {
-      protected override Builder ThisBuilder {
-        get { return this; }
-      }
-      public Builder() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-      }
-      internal Builder(CSharpServiceOptions cloneFrom) {
-        result = cloneFrom;
-        resultIsReadOnly = true;
-      }
-      
-      private bool resultIsReadOnly;
-      private CSharpServiceOptions result;
-      
-      private CSharpServiceOptions PrepareBuilder() {
-        if (resultIsReadOnly) {
-          CSharpServiceOptions original = result;
-          result = new CSharpServiceOptions();
-          resultIsReadOnly = false;
-          MergeFrom(original);
-        }
-        return result;
-      }
-      
-      public override bool IsInitialized {
-        get { return result.IsInitialized; }
-      }
-      
-      protected override CSharpServiceOptions MessageBeingBuilt {
-        get { return PrepareBuilder(); }
-      }
-      
-      public override Builder Clear() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-        return this;
-      }
-      
-      public override Builder Clone() {
-        if (resultIsReadOnly) {
-          return new Builder(result);
-        } else {
-          return new Builder().MergeFrom(result);
-        }
-      }
-      
-      public override pbd::MessageDescriptor DescriptorForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.CSharpServiceOptions.Descriptor; }
-      }
-      
-      public override CSharpServiceOptions DefaultInstanceForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.CSharpServiceOptions.DefaultInstance; }
-      }
-      
-      public override CSharpServiceOptions BuildPartial() {
-        if (resultIsReadOnly) {
-          return result;
-        }
-        resultIsReadOnly = true;
-        return result.MakeReadOnly();
-      }
-      
-      public override Builder MergeFrom(pb::IMessage other) {
-        if (other is CSharpServiceOptions) {
-          return MergeFrom((CSharpServiceOptions) other);
-        } else {
-          base.MergeFrom(other);
-          return this;
-        }
-      }
-      
-      public override Builder MergeFrom(CSharpServiceOptions other) {
-        if (other == global::Google.ProtocolBuffers.DescriptorProtos.CSharpServiceOptions.DefaultInstance) return this;
-        PrepareBuilder();
-        if (other.HasInterfaceId) {
-          InterfaceId = other.InterfaceId;
-        }
-        this.MergeUnknownFields(other.UnknownFields);
-        return this;
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input) {
-        return MergeFrom(input, pb::ExtensionRegistry.Empty);
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-        PrepareBuilder();
-        pb::UnknownFieldSet.Builder unknownFields = null;
-        uint tag;
-        string field_name;
-        while (input.ReadTag(out tag, out field_name)) {
-          if(tag == 0 && field_name != null) {
-            int field_ordinal = global::System.Array.BinarySearch(_cSharpServiceOptionsFieldNames, field_name, global::System.StringComparer.Ordinal);
-            if(field_ordinal >= 0)
-              tag = _cSharpServiceOptionsFieldTags[field_ordinal];
-            else {
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              continue;
-            }
-          }
-          switch (tag) {
-            case 0: {
-              throw pb::InvalidProtocolBufferException.InvalidTag();
-            }
-            default: {
-              if (pb::WireFormat.IsEndGroupTag(tag)) {
-                if (unknownFields != null) {
-                  this.UnknownFields = unknownFields.Build();
-                }
-                return this;
-              }
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              break;
-            }
-            case 10: {
-              result.hasInterfaceId = input.ReadString(ref result.interfaceId_);
-              break;
-            }
-          }
-        }
-        
-        if (unknownFields != null) {
-          this.UnknownFields = unknownFields.Build();
-        }
-        return this;
-      }
-      
-      
-      public bool HasInterfaceId {
-        get { return result.hasInterfaceId; }
-      }
-      public string InterfaceId {
-        get { return result.InterfaceId; }
-        set { SetInterfaceId(value); }
-      }
-      public Builder SetInterfaceId(string value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasInterfaceId = true;
-        result.interfaceId_ = value;
-        return this;
-      }
-      public Builder ClearInterfaceId() {
-        PrepareBuilder();
-        result.hasInterfaceId = false;
-        result.interfaceId_ = "";
-        return this;
-      }
-    }
-    static CSharpServiceOptions() {
-      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.CSharpOptions.Descriptor, null);
-    }
-  }
-  
-  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-  public sealed partial class CSharpMethodOptions : pb::GeneratedMessage<CSharpMethodOptions, CSharpMethodOptions.Builder> {
-    private CSharpMethodOptions() { }
-    private static readonly CSharpMethodOptions defaultInstance = new CSharpMethodOptions().MakeReadOnly();
-    private static readonly string[] _cSharpMethodOptionsFieldNames = new string[] { "dispatch_id" };
-    private static readonly uint[] _cSharpMethodOptionsFieldTags = new uint[] { 8 };
-    public static CSharpMethodOptions DefaultInstance {
-      get { return defaultInstance; }
-    }
-    
-    public override CSharpMethodOptions DefaultInstanceForType {
-      get { return DefaultInstance; }
-    }
-    
-    protected override CSharpMethodOptions ThisMessage {
-      get { return this; }
-    }
-    
-    public static pbd::MessageDescriptor Descriptor {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.CSharpOptions.internal__static_google_protobuf_CSharpMethodOptions__Descriptor; }
-    }
-    
-    protected override pb::FieldAccess.FieldAccessorTable<CSharpMethodOptions, CSharpMethodOptions.Builder> InternalFieldAccessors {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.CSharpOptions.internal__static_google_protobuf_CSharpMethodOptions__FieldAccessorTable; }
-    }
-    
-    public const int DispatchIdFieldNumber = 1;
-    private bool hasDispatchId;
-    private int dispatchId_;
-    public bool HasDispatchId {
-      get { return hasDispatchId; }
-    }
-    public int DispatchId {
-      get { return dispatchId_; }
-    }
-    
-    public override bool IsInitialized {
-      get {
-        return true;
-      }
-    }
-    
-    public override void WriteTo(pb::ICodedOutputStream output) {
-      int size = SerializedSize;
-      string[] field_names = _cSharpMethodOptionsFieldNames;
-      if (hasDispatchId) {
-        output.WriteInt32(1, field_names[0], DispatchId);
-      }
-      UnknownFields.WriteTo(output);
-    }
-    
-    private int memoizedSerializedSize = -1;
-    public override int SerializedSize {
-      get {
-        int size = memoizedSerializedSize;
-        if (size != -1) return size;
-        
-        size = 0;
-        if (hasDispatchId) {
-          size += pb::CodedOutputStream.ComputeInt32Size(1, DispatchId);
-        }
-        size += UnknownFields.SerializedSize;
-        memoizedSerializedSize = size;
-        return size;
-      }
-    }
-    
-    public static CSharpMethodOptions ParseFrom(pb::ByteString data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static CSharpMethodOptions ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static CSharpMethodOptions ParseFrom(byte[] data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static CSharpMethodOptions ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static CSharpMethodOptions ParseFrom(global::System.IO.Stream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static CSharpMethodOptions ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    public static CSharpMethodOptions ParseDelimitedFrom(global::System.IO.Stream input) {
-      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
-    }
-    public static CSharpMethodOptions ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
-    }
-    public static CSharpMethodOptions ParseFrom(pb::ICodedInputStream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static CSharpMethodOptions ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    private CSharpMethodOptions MakeReadOnly() {
-      return this;
-    }
-    
-    public static Builder CreateBuilder() { return new Builder(); }
-    public override Builder ToBuilder() { return CreateBuilder(this); }
-    public override Builder CreateBuilderForType() { return new Builder(); }
-    public static Builder CreateBuilder(CSharpMethodOptions prototype) {
-      return new Builder(prototype);
-    }
-    
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-    public sealed partial class Builder : pb::GeneratedBuilder<CSharpMethodOptions, Builder> {
-      protected override Builder ThisBuilder {
-        get { return this; }
-      }
-      public Builder() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-      }
-      internal Builder(CSharpMethodOptions cloneFrom) {
-        result = cloneFrom;
-        resultIsReadOnly = true;
-      }
-      
-      private bool resultIsReadOnly;
-      private CSharpMethodOptions result;
-      
-      private CSharpMethodOptions PrepareBuilder() {
-        if (resultIsReadOnly) {
-          CSharpMethodOptions original = result;
-          result = new CSharpMethodOptions();
-          resultIsReadOnly = false;
-          MergeFrom(original);
-        }
-        return result;
-      }
-      
-      public override bool IsInitialized {
-        get { return result.IsInitialized; }
-      }
-      
-      protected override CSharpMethodOptions MessageBeingBuilt {
-        get { return PrepareBuilder(); }
-      }
-      
-      public override Builder Clear() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-        return this;
-      }
-      
-      public override Builder Clone() {
-        if (resultIsReadOnly) {
-          return new Builder(result);
-        } else {
-          return new Builder().MergeFrom(result);
-        }
-      }
-      
-      public override pbd::MessageDescriptor DescriptorForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.CSharpMethodOptions.Descriptor; }
-      }
-      
-      public override CSharpMethodOptions DefaultInstanceForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.CSharpMethodOptions.DefaultInstance; }
-      }
-      
-      public override CSharpMethodOptions BuildPartial() {
-        if (resultIsReadOnly) {
-          return result;
-        }
-        resultIsReadOnly = true;
-        return result.MakeReadOnly();
-      }
-      
-      public override Builder MergeFrom(pb::IMessage other) {
-        if (other is CSharpMethodOptions) {
-          return MergeFrom((CSharpMethodOptions) other);
-        } else {
-          base.MergeFrom(other);
-          return this;
-        }
-      }
-      
-      public override Builder MergeFrom(CSharpMethodOptions other) {
-        if (other == global::Google.ProtocolBuffers.DescriptorProtos.CSharpMethodOptions.DefaultInstance) return this;
-        PrepareBuilder();
-        if (other.HasDispatchId) {
-          DispatchId = other.DispatchId;
-        }
-        this.MergeUnknownFields(other.UnknownFields);
-        return this;
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input) {
-        return MergeFrom(input, pb::ExtensionRegistry.Empty);
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-        PrepareBuilder();
-        pb::UnknownFieldSet.Builder unknownFields = null;
-        uint tag;
-        string field_name;
-        while (input.ReadTag(out tag, out field_name)) {
-          if(tag == 0 && field_name != null) {
-            int field_ordinal = global::System.Array.BinarySearch(_cSharpMethodOptionsFieldNames, field_name, global::System.StringComparer.Ordinal);
-            if(field_ordinal >= 0)
-              tag = _cSharpMethodOptionsFieldTags[field_ordinal];
-            else {
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              continue;
-            }
-          }
-          switch (tag) {
-            case 0: {
-              throw pb::InvalidProtocolBufferException.InvalidTag();
-            }
-            default: {
-              if (pb::WireFormat.IsEndGroupTag(tag)) {
-                if (unknownFields != null) {
-                  this.UnknownFields = unknownFields.Build();
-                }
-                return this;
-              }
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              break;
-            }
-            case 8: {
-              result.hasDispatchId = input.ReadInt32(ref result.dispatchId_);
-              break;
-            }
-          }
-        }
-        
-        if (unknownFields != null) {
-          this.UnknownFields = unknownFields.Build();
-        }
-        return this;
-      }
-      
-      
-      public bool HasDispatchId {
-        get { return result.hasDispatchId; }
-      }
-      public int DispatchId {
-        get { return result.DispatchId; }
-        set { SetDispatchId(value); }
-      }
-      public Builder SetDispatchId(int value) {
-        PrepareBuilder();
-        result.hasDispatchId = true;
-        result.dispatchId_ = value;
-        return this;
-      }
-      public Builder ClearDispatchId() {
-        PrepareBuilder();
-        result.hasDispatchId = false;
-        result.dispatchId_ = 0;
-        return this;
-      }
-    }
-    static CSharpMethodOptions() {
-      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.CSharpOptions.Descriptor, null);
-    }
-  }
-  
-  #endregion
-  
-}
-
-#endregion Designer generated code

+ 0 - 9111
CSharp/App/Modules/BehaviorTreeModule/DescriptorProtoFile.cs

@@ -1,9111 +0,0 @@
-// Generated by ProtoGen, Version=2.4.1.473, Culture=neutral, PublicKeyToken=55f7125234beb589.  DO NOT EDIT!
-#pragma warning disable 1591, 0612
-#region Designer generated code
-
-using pb = global::Google.ProtocolBuffers;
-using pbc = global::Google.ProtocolBuffers.Collections;
-using pbd = global::Google.ProtocolBuffers.Descriptors;
-using scg = global::System.Collections.Generic;
-namespace Google.ProtocolBuffers.DescriptorProtos {
-  
-  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-  public static partial class DescriptorProtoFile {
-  
-    #region Extension registration
-    public static void RegisterAllExtensions(pb::ExtensionRegistry registry) {
-    }
-    #endregion
-    #region Static variables
-    internal static pbd::MessageDescriptor internal__static_google_protobuf_FileDescriptorSet__Descriptor;
-    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorSet, global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorSet.Builder> internal__static_google_protobuf_FileDescriptorSet__FieldAccessorTable;
-    internal static pbd::MessageDescriptor internal__static_google_protobuf_FileDescriptorProto__Descriptor;
-    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto, global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto.Builder> internal__static_google_protobuf_FileDescriptorProto__FieldAccessorTable;
-    internal static pbd::MessageDescriptor internal__static_google_protobuf_DescriptorProto__Descriptor;
-    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto, global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Builder> internal__static_google_protobuf_DescriptorProto__FieldAccessorTable;
-    internal static pbd::MessageDescriptor internal__static_google_protobuf_DescriptorProto_ExtensionRange__Descriptor;
-    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange, global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange.Builder> internal__static_google_protobuf_DescriptorProto_ExtensionRange__FieldAccessorTable;
-    internal static pbd::MessageDescriptor internal__static_google_protobuf_FieldDescriptorProto__Descriptor;
-    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto, global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Builder> internal__static_google_protobuf_FieldDescriptorProto__FieldAccessorTable;
-    internal static pbd::MessageDescriptor internal__static_google_protobuf_EnumDescriptorProto__Descriptor;
-    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto, global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto.Builder> internal__static_google_protobuf_EnumDescriptorProto__FieldAccessorTable;
-    internal static pbd::MessageDescriptor internal__static_google_protobuf_EnumValueDescriptorProto__Descriptor;
-    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto, global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto.Builder> internal__static_google_protobuf_EnumValueDescriptorProto__FieldAccessorTable;
-    internal static pbd::MessageDescriptor internal__static_google_protobuf_ServiceDescriptorProto__Descriptor;
-    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto, global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto.Builder> internal__static_google_protobuf_ServiceDescriptorProto__FieldAccessorTable;
-    internal static pbd::MessageDescriptor internal__static_google_protobuf_MethodDescriptorProto__Descriptor;
-    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto, global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto.Builder> internal__static_google_protobuf_MethodDescriptorProto__FieldAccessorTable;
-    internal static pbd::MessageDescriptor internal__static_google_protobuf_FileOptions__Descriptor;
-    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.FileOptions, global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.Builder> internal__static_google_protobuf_FileOptions__FieldAccessorTable;
-    internal static pbd::MessageDescriptor internal__static_google_protobuf_MessageOptions__Descriptor;
-    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions, global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions.Builder> internal__static_google_protobuf_MessageOptions__FieldAccessorTable;
-    internal static pbd::MessageDescriptor internal__static_google_protobuf_FieldOptions__Descriptor;
-    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions, global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.Builder> internal__static_google_protobuf_FieldOptions__FieldAccessorTable;
-    internal static pbd::MessageDescriptor internal__static_google_protobuf_EnumOptions__Descriptor;
-    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions, global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions.Builder> internal__static_google_protobuf_EnumOptions__FieldAccessorTable;
-    internal static pbd::MessageDescriptor internal__static_google_protobuf_EnumValueOptions__Descriptor;
-    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions, global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions.Builder> internal__static_google_protobuf_EnumValueOptions__FieldAccessorTable;
-    internal static pbd::MessageDescriptor internal__static_google_protobuf_ServiceOptions__Descriptor;
-    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions, global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions.Builder> internal__static_google_protobuf_ServiceOptions__FieldAccessorTable;
-    internal static pbd::MessageDescriptor internal__static_google_protobuf_MethodOptions__Descriptor;
-    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions, global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions.Builder> internal__static_google_protobuf_MethodOptions__FieldAccessorTable;
-    internal static pbd::MessageDescriptor internal__static_google_protobuf_UninterpretedOption__Descriptor;
-    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Builder> internal__static_google_protobuf_UninterpretedOption__FieldAccessorTable;
-    internal static pbd::MessageDescriptor internal__static_google_protobuf_UninterpretedOption_NamePart__Descriptor;
-    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart.Builder> internal__static_google_protobuf_UninterpretedOption_NamePart__FieldAccessorTable;
-    internal static pbd::MessageDescriptor internal__static_google_protobuf_SourceCodeInfo__Descriptor;
-    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo, global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo.Builder> internal__static_google_protobuf_SourceCodeInfo__FieldAccessorTable;
-    internal static pbd::MessageDescriptor internal__static_google_protobuf_SourceCodeInfo_Location__Descriptor;
-    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo.Types.Location, global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo.Types.Location.Builder> internal__static_google_protobuf_SourceCodeInfo_Location__FieldAccessorTable;
-    #endregion
-    #region Descriptor
-    public static pbd::FileDescriptor Descriptor {
-      get { return descriptor; }
-    }
-    private static pbd::FileDescriptor descriptor;
-    
-    static DescriptorProtoFile() {
-      byte[] descriptorData = global::System.Convert.FromBase64String(
-          "CiBnb29nbGUvcHJvdG9idWYvZGVzY3JpcHRvci5wcm90bxIPZ29vZ2xlLnBy" + 
-          "b3RvYnVmIkcKEUZpbGVEZXNjcmlwdG9yU2V0EjIKBGZpbGUYASADKAsyJC5n" + 
-          "b29nbGUucHJvdG9idWYuRmlsZURlc2NyaXB0b3JQcm90byKXAwoTRmlsZURl" + 
-          "c2NyaXB0b3JQcm90bxIMCgRuYW1lGAEgASgJEg8KB3BhY2thZ2UYAiABKAkS" + 
-          "EgoKZGVwZW5kZW5jeRgDIAMoCRI2CgxtZXNzYWdlX3R5cGUYBCADKAsyIC5n" + 
-          "b29nbGUucHJvdG9idWYuRGVzY3JpcHRvclByb3RvEjcKCWVudW1fdHlwZRgF" + 
-          "IAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5FbnVtRGVzY3JpcHRvclByb3RvEjgK" + 
-          "B3NlcnZpY2UYBiADKAsyJy5nb29nbGUucHJvdG9idWYuU2VydmljZURlc2Ny" + 
-          "aXB0b3JQcm90bxI4CglleHRlbnNpb24YByADKAsyJS5nb29nbGUucHJvdG9i" + 
-          "dWYuRmllbGREZXNjcmlwdG9yUHJvdG8SLQoHb3B0aW9ucxgIIAEoCzIcLmdv" + 
-          "b2dsZS5wcm90b2J1Zi5GaWxlT3B0aW9ucxI5ChBzb3VyY2VfY29kZV9pbmZv" + 
-          "GAkgASgLMh8uZ29vZ2xlLnByb3RvYnVmLlNvdXJjZUNvZGVJbmZvIqkDCg9E" + 
-          "ZXNjcmlwdG9yUHJvdG8SDAoEbmFtZRgBIAEoCRI0CgVmaWVsZBgCIAMoCzIl" + 
-          "Lmdvb2dsZS5wcm90b2J1Zi5GaWVsZERlc2NyaXB0b3JQcm90bxI4CglleHRl" + 
-          "bnNpb24YBiADKAsyJS5nb29nbGUucHJvdG9idWYuRmllbGREZXNjcmlwdG9y" + 
-          "UHJvdG8SNQoLbmVzdGVkX3R5cGUYAyADKAsyIC5nb29nbGUucHJvdG9idWYu" + 
-          "RGVzY3JpcHRvclByb3RvEjcKCWVudW1fdHlwZRgEIAMoCzIkLmdvb2dsZS5w" + 
-          "cm90b2J1Zi5FbnVtRGVzY3JpcHRvclByb3RvEkgKD2V4dGVuc2lvbl9yYW5n" + 
-          "ZRgFIAMoCzIvLmdvb2dsZS5wcm90b2J1Zi5EZXNjcmlwdG9yUHJvdG8uRXh0" + 
-          "ZW5zaW9uUmFuZ2USMAoHb3B0aW9ucxgHIAEoCzIfLmdvb2dsZS5wcm90b2J1" + 
-          "Zi5NZXNzYWdlT3B0aW9ucxosCg5FeHRlbnNpb25SYW5nZRINCgVzdGFydBgB" + 
-          "IAEoBRILCgNlbmQYAiABKAUilAUKFEZpZWxkRGVzY3JpcHRvclByb3RvEgwK" + 
-          "BG5hbWUYASABKAkSDgoGbnVtYmVyGAMgASgFEjoKBWxhYmVsGAQgASgOMisu" + 
-          "Z29vZ2xlLnByb3RvYnVmLkZpZWxkRGVzY3JpcHRvclByb3RvLkxhYmVsEjgK" + 
-          "BHR5cGUYBSABKA4yKi5nb29nbGUucHJvdG9idWYuRmllbGREZXNjcmlwdG9y" + 
-          "UHJvdG8uVHlwZRIRCgl0eXBlX25hbWUYBiABKAkSEAoIZXh0ZW5kZWUYAiAB" + 
-          "KAkSFQoNZGVmYXVsdF92YWx1ZRgHIAEoCRIuCgdvcHRpb25zGAggASgLMh0u" + 
-          "Z29vZ2xlLnByb3RvYnVmLkZpZWxkT3B0aW9ucyK2AgoEVHlwZRIPCgtUWVBF" + 
-          "X0RPVUJMRRABEg4KClRZUEVfRkxPQVQQAhIOCgpUWVBFX0lOVDY0EAMSDwoL" + 
-          "VFlQRV9VSU5UNjQQBBIOCgpUWVBFX0lOVDMyEAUSEAoMVFlQRV9GSVhFRDY0" + 
-          "EAYSEAoMVFlQRV9GSVhFRDMyEAcSDQoJVFlQRV9CT09MEAgSDwoLVFlQRV9T" + 
-          "VFJJTkcQCRIOCgpUWVBFX0dST1VQEAoSEAoMVFlQRV9NRVNTQUdFEAsSDgoK" + 
-          "VFlQRV9CWVRFUxAMEg8KC1RZUEVfVUlOVDMyEA0SDQoJVFlQRV9FTlVNEA4S" + 
-          "EQoNVFlQRV9TRklYRUQzMhAPEhEKDVRZUEVfU0ZJWEVENjQQEBIPCgtUWVBF" + 
-          "X1NJTlQzMhAREg8KC1RZUEVfU0lOVDY0EBIiQwoFTGFiZWwSEgoOTEFCRUxf" + 
-          "T1BUSU9OQUwQARISCg5MQUJFTF9SRVFVSVJFRBACEhIKDkxBQkVMX1JFUEVB" + 
-          "VEVEEAMijAEKE0VudW1EZXNjcmlwdG9yUHJvdG8SDAoEbmFtZRgBIAEoCRI4" + 
-          "CgV2YWx1ZRgCIAMoCzIpLmdvb2dsZS5wcm90b2J1Zi5FbnVtVmFsdWVEZXNj" + 
-          "cmlwdG9yUHJvdG8SLQoHb3B0aW9ucxgDIAEoCzIcLmdvb2dsZS5wcm90b2J1" + 
-          "Zi5FbnVtT3B0aW9ucyJsChhFbnVtVmFsdWVEZXNjcmlwdG9yUHJvdG8SDAoE" + 
-          "bmFtZRgBIAEoCRIOCgZudW1iZXIYAiABKAUSMgoHb3B0aW9ucxgDIAEoCzIh" + 
-          "Lmdvb2dsZS5wcm90b2J1Zi5FbnVtVmFsdWVPcHRpb25zIpABChZTZXJ2aWNl" + 
-          "RGVzY3JpcHRvclByb3RvEgwKBG5hbWUYASABKAkSNgoGbWV0aG9kGAIgAygL" + 
-          "MiYuZ29vZ2xlLnByb3RvYnVmLk1ldGhvZERlc2NyaXB0b3JQcm90bxIwCgdv" + 
-          "cHRpb25zGAMgASgLMh8uZ29vZ2xlLnByb3RvYnVmLlNlcnZpY2VPcHRpb25z" + 
-          "In8KFU1ldGhvZERlc2NyaXB0b3JQcm90bxIMCgRuYW1lGAEgASgJEhIKCmlu" + 
-          "cHV0X3R5cGUYAiABKAkSEwoLb3V0cHV0X3R5cGUYAyABKAkSLwoHb3B0aW9u" + 
-          "cxgEIAEoCzIeLmdvb2dsZS5wcm90b2J1Zi5NZXRob2RPcHRpb25zItUDCgtG" + 
-          "aWxlT3B0aW9ucxIUCgxqYXZhX3BhY2thZ2UYASABKAkSHAoUamF2YV9vdXRl" + 
-          "cl9jbGFzc25hbWUYCCABKAkSIgoTamF2YV9tdWx0aXBsZV9maWxlcxgKIAEo" + 
-          "CDoFZmFsc2USLAodamF2YV9nZW5lcmF0ZV9lcXVhbHNfYW5kX2hhc2gYFCAB" + 
-          "KAg6BWZhbHNlEkYKDG9wdGltaXplX2ZvchgJIAEoDjIpLmdvb2dsZS5wcm90" + 
-          "b2J1Zi5GaWxlT3B0aW9ucy5PcHRpbWl6ZU1vZGU6BVNQRUVEEiIKE2NjX2dl" + 
-          "bmVyaWNfc2VydmljZXMYECABKAg6BWZhbHNlEiQKFWphdmFfZ2VuZXJpY19z" + 
-          "ZXJ2aWNlcxgRIAEoCDoFZmFsc2USIgoTcHlfZ2VuZXJpY19zZXJ2aWNlcxgS" + 
-          "IAEoCDoFZmFsc2USQwoUdW5pbnRlcnByZXRlZF9vcHRpb24Y5wcgAygLMiQu" + 
-          "Z29vZ2xlLnByb3RvYnVmLlVuaW50ZXJwcmV0ZWRPcHRpb24iOgoMT3B0aW1p" + 
-          "emVNb2RlEgkKBVNQRUVEEAESDQoJQ09ERV9TSVpFEAISEAoMTElURV9SVU5U" + 
-          "SU1FEAMqCQjoBxCAgICAAiK4AQoOTWVzc2FnZU9wdGlvbnMSJgoXbWVzc2Fn" + 
-          "ZV9zZXRfd2lyZV9mb3JtYXQYASABKAg6BWZhbHNlEi4KH25vX3N0YW5kYXJk" + 
-          "X2Rlc2NyaXB0b3JfYWNjZXNzb3IYAiABKAg6BWZhbHNlEkMKFHVuaW50ZXJw" + 
-          "cmV0ZWRfb3B0aW9uGOcHIAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5VbmludGVy" + 
-          "cHJldGVkT3B0aW9uKgkI6AcQgICAgAIilAIKDEZpZWxkT3B0aW9ucxI6CgVj" + 
-          "dHlwZRgBIAEoDjIjLmdvb2dsZS5wcm90b2J1Zi5GaWVsZE9wdGlvbnMuQ1R5" + 
-          "cGU6BlNUUklORxIOCgZwYWNrZWQYAiABKAgSGQoKZGVwcmVjYXRlZBgDIAEo" + 
-          "CDoFZmFsc2USHAoUZXhwZXJpbWVudGFsX21hcF9rZXkYCSABKAkSQwoUdW5p" + 
-          "bnRlcnByZXRlZF9vcHRpb24Y5wcgAygLMiQuZ29vZ2xlLnByb3RvYnVmLlVu" + 
-          "aW50ZXJwcmV0ZWRPcHRpb24iLwoFQ1R5cGUSCgoGU1RSSU5HEAASCAoEQ09S" + 
-          "RBABEhAKDFNUUklOR19QSUVDRRACKgkI6AcQgICAgAIiXQoLRW51bU9wdGlv" + 
-          "bnMSQwoUdW5pbnRlcnByZXRlZF9vcHRpb24Y5wcgAygLMiQuZ29vZ2xlLnBy" + 
-          "b3RvYnVmLlVuaW50ZXJwcmV0ZWRPcHRpb24qCQjoBxCAgICAAiJiChBFbnVt" + 
-          "VmFsdWVPcHRpb25zEkMKFHVuaW50ZXJwcmV0ZWRfb3B0aW9uGOcHIAMoCzIk" + 
-          "Lmdvb2dsZS5wcm90b2J1Zi5VbmludGVycHJldGVkT3B0aW9uKgkI6AcQgICA" + 
-          "gAIiYAoOU2VydmljZU9wdGlvbnMSQwoUdW5pbnRlcnByZXRlZF9vcHRpb24Y" + 
-          "5wcgAygLMiQuZ29vZ2xlLnByb3RvYnVmLlVuaW50ZXJwcmV0ZWRPcHRpb24q" + 
-          "CQjoBxCAgICAAiJfCg1NZXRob2RPcHRpb25zEkMKFHVuaW50ZXJwcmV0ZWRf" + 
-          "b3B0aW9uGOcHIAMoCzIkLmdvb2dsZS5wcm90b2J1Zi5VbmludGVycHJldGVk" + 
-          "T3B0aW9uKgkI6AcQgICAgAIingIKE1VuaW50ZXJwcmV0ZWRPcHRpb24SOwoE" + 
-          "bmFtZRgCIAMoCzItLmdvb2dsZS5wcm90b2J1Zi5VbmludGVycHJldGVkT3B0" + 
-          "aW9uLk5hbWVQYXJ0EhgKEGlkZW50aWZpZXJfdmFsdWUYAyABKAkSGgoScG9z" + 
-          "aXRpdmVfaW50X3ZhbHVlGAQgASgEEhoKEm5lZ2F0aXZlX2ludF92YWx1ZRgF" + 
-          "IAEoAxIUCgxkb3VibGVfdmFsdWUYBiABKAESFAoMc3RyaW5nX3ZhbHVlGAcg" + 
-          "ASgMEhcKD2FnZ3JlZ2F0ZV92YWx1ZRgIIAEoCRozCghOYW1lUGFydBIRCglu" + 
-          "YW1lX3BhcnQYASACKAkSFAoMaXNfZXh0ZW5zaW9uGAIgAigIInwKDlNvdXJj" + 
-          "ZUNvZGVJbmZvEjoKCGxvY2F0aW9uGAEgAygLMiguZ29vZ2xlLnByb3RvYnVm" + 
-          "LlNvdXJjZUNvZGVJbmZvLkxvY2F0aW9uGi4KCExvY2F0aW9uEhAKBHBhdGgY" + 
-          "ASADKAVCAhABEhAKBHNwYW4YAiADKAVCAhABQikKE2NvbS5nb29nbGUucHJv" + 
-          "dG9idWZCEERlc2NyaXB0b3JQcm90b3NIAQ==");
-      pbd::FileDescriptor.InternalDescriptorAssigner assigner = delegate(pbd::FileDescriptor root) {
-        descriptor = root;
-        internal__static_google_protobuf_FileDescriptorSet__Descriptor = Descriptor.MessageTypes[0];
-        internal__static_google_protobuf_FileDescriptorSet__FieldAccessorTable = 
-            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorSet, global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorSet.Builder>(internal__static_google_protobuf_FileDescriptorSet__Descriptor,
-                new string[] { "File", });
-        internal__static_google_protobuf_FileDescriptorProto__Descriptor = Descriptor.MessageTypes[1];
-        internal__static_google_protobuf_FileDescriptorProto__FieldAccessorTable = 
-            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto, global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto.Builder>(internal__static_google_protobuf_FileDescriptorProto__Descriptor,
-                new string[] { "Name", "Package", "Dependency", "MessageType", "EnumType", "Service", "Extension", "Options", "SourceCodeInfo", });
-        internal__static_google_protobuf_DescriptorProto__Descriptor = Descriptor.MessageTypes[2];
-        internal__static_google_protobuf_DescriptorProto__FieldAccessorTable = 
-            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto, global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Builder>(internal__static_google_protobuf_DescriptorProto__Descriptor,
-                new string[] { "Name", "Field", "Extension", "NestedType", "EnumType", "ExtensionRange", "Options", });
-        internal__static_google_protobuf_DescriptorProto_ExtensionRange__Descriptor = internal__static_google_protobuf_DescriptorProto__Descriptor.NestedTypes[0];
-        internal__static_google_protobuf_DescriptorProto_ExtensionRange__FieldAccessorTable = 
-            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange, global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange.Builder>(internal__static_google_protobuf_DescriptorProto_ExtensionRange__Descriptor,
-                new string[] { "Start", "End", });
-        internal__static_google_protobuf_FieldDescriptorProto__Descriptor = Descriptor.MessageTypes[3];
-        internal__static_google_protobuf_FieldDescriptorProto__FieldAccessorTable = 
-            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto, global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Builder>(internal__static_google_protobuf_FieldDescriptorProto__Descriptor,
-                new string[] { "Name", "Number", "Label", "Type", "TypeName", "Extendee", "DefaultValue", "Options", });
-        internal__static_google_protobuf_EnumDescriptorProto__Descriptor = Descriptor.MessageTypes[4];
-        internal__static_google_protobuf_EnumDescriptorProto__FieldAccessorTable = 
-            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto, global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto.Builder>(internal__static_google_protobuf_EnumDescriptorProto__Descriptor,
-                new string[] { "Name", "Value", "Options", });
-        internal__static_google_protobuf_EnumValueDescriptorProto__Descriptor = Descriptor.MessageTypes[5];
-        internal__static_google_protobuf_EnumValueDescriptorProto__FieldAccessorTable = 
-            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto, global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto.Builder>(internal__static_google_protobuf_EnumValueDescriptorProto__Descriptor,
-                new string[] { "Name", "Number", "Options", });
-        internal__static_google_protobuf_ServiceDescriptorProto__Descriptor = Descriptor.MessageTypes[6];
-        internal__static_google_protobuf_ServiceDescriptorProto__FieldAccessorTable = 
-            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto, global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto.Builder>(internal__static_google_protobuf_ServiceDescriptorProto__Descriptor,
-                new string[] { "Name", "Method", "Options", });
-        internal__static_google_protobuf_MethodDescriptorProto__Descriptor = Descriptor.MessageTypes[7];
-        internal__static_google_protobuf_MethodDescriptorProto__FieldAccessorTable = 
-            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto, global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto.Builder>(internal__static_google_protobuf_MethodDescriptorProto__Descriptor,
-                new string[] { "Name", "InputType", "OutputType", "Options", });
-        internal__static_google_protobuf_FileOptions__Descriptor = Descriptor.MessageTypes[8];
-        internal__static_google_protobuf_FileOptions__FieldAccessorTable = 
-            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.FileOptions, global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.Builder>(internal__static_google_protobuf_FileOptions__Descriptor,
-                new string[] { "JavaPackage", "JavaOuterClassname", "JavaMultipleFiles", "JavaGenerateEqualsAndHash", "OptimizeFor", "CcGenericServices", "JavaGenericServices", "PyGenericServices", "UninterpretedOption", });
-        internal__static_google_protobuf_MessageOptions__Descriptor = Descriptor.MessageTypes[9];
-        internal__static_google_protobuf_MessageOptions__FieldAccessorTable = 
-            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions, global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions.Builder>(internal__static_google_protobuf_MessageOptions__Descriptor,
-                new string[] { "MessageSetWireFormat", "NoStandardDescriptorAccessor", "UninterpretedOption", });
-        internal__static_google_protobuf_FieldOptions__Descriptor = Descriptor.MessageTypes[10];
-        internal__static_google_protobuf_FieldOptions__FieldAccessorTable = 
-            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions, global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.Builder>(internal__static_google_protobuf_FieldOptions__Descriptor,
-                new string[] { "Ctype", "Packed", "Deprecated", "ExperimentalMapKey", "UninterpretedOption", });
-        internal__static_google_protobuf_EnumOptions__Descriptor = Descriptor.MessageTypes[11];
-        internal__static_google_protobuf_EnumOptions__FieldAccessorTable = 
-            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions, global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions.Builder>(internal__static_google_protobuf_EnumOptions__Descriptor,
-                new string[] { "UninterpretedOption", });
-        internal__static_google_protobuf_EnumValueOptions__Descriptor = Descriptor.MessageTypes[12];
-        internal__static_google_protobuf_EnumValueOptions__FieldAccessorTable = 
-            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions, global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions.Builder>(internal__static_google_protobuf_EnumValueOptions__Descriptor,
-                new string[] { "UninterpretedOption", });
-        internal__static_google_protobuf_ServiceOptions__Descriptor = Descriptor.MessageTypes[13];
-        internal__static_google_protobuf_ServiceOptions__FieldAccessorTable = 
-            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions, global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions.Builder>(internal__static_google_protobuf_ServiceOptions__Descriptor,
-                new string[] { "UninterpretedOption", });
-        internal__static_google_protobuf_MethodOptions__Descriptor = Descriptor.MessageTypes[14];
-        internal__static_google_protobuf_MethodOptions__FieldAccessorTable = 
-            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions, global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions.Builder>(internal__static_google_protobuf_MethodOptions__Descriptor,
-                new string[] { "UninterpretedOption", });
-        internal__static_google_protobuf_UninterpretedOption__Descriptor = Descriptor.MessageTypes[15];
-        internal__static_google_protobuf_UninterpretedOption__FieldAccessorTable = 
-            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Builder>(internal__static_google_protobuf_UninterpretedOption__Descriptor,
-                new string[] { "Name", "IdentifierValue", "PositiveIntValue", "NegativeIntValue", "DoubleValue", "StringValue", "AggregateValue", });
-        internal__static_google_protobuf_UninterpretedOption_NamePart__Descriptor = internal__static_google_protobuf_UninterpretedOption__Descriptor.NestedTypes[0];
-        internal__static_google_protobuf_UninterpretedOption_NamePart__FieldAccessorTable = 
-            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart.Builder>(internal__static_google_protobuf_UninterpretedOption_NamePart__Descriptor,
-                new string[] { "NamePart_", "IsExtension", });
-        internal__static_google_protobuf_SourceCodeInfo__Descriptor = Descriptor.MessageTypes[16];
-        internal__static_google_protobuf_SourceCodeInfo__FieldAccessorTable = 
-            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo, global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo.Builder>(internal__static_google_protobuf_SourceCodeInfo__Descriptor,
-                new string[] { "Location", });
-        internal__static_google_protobuf_SourceCodeInfo_Location__Descriptor = internal__static_google_protobuf_SourceCodeInfo__Descriptor.NestedTypes[0];
-        internal__static_google_protobuf_SourceCodeInfo_Location__FieldAccessorTable = 
-            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo.Types.Location, global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo.Types.Location.Builder>(internal__static_google_protobuf_SourceCodeInfo_Location__Descriptor,
-                new string[] { "Path", "Span", });
-        return null;
-      };
-      pbd::FileDescriptor.InternalBuildGeneratedFileFrom(descriptorData,
-          new pbd::FileDescriptor[] {
-          }, assigner);
-    }
-    #endregion
-    
-  }
-  #region Messages
-  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-  public sealed partial class FileDescriptorSet : pb::GeneratedMessage<FileDescriptorSet, FileDescriptorSet.Builder> {
-    private FileDescriptorSet() { }
-    private static readonly FileDescriptorSet defaultInstance = new FileDescriptorSet().MakeReadOnly();
-    private static readonly string[] _fileDescriptorSetFieldNames = new string[] { "file" };
-    private static readonly uint[] _fileDescriptorSetFieldTags = new uint[] { 10 };
-    public static FileDescriptorSet DefaultInstance {
-      get { return defaultInstance; }
-    }
-    
-    public override FileDescriptorSet DefaultInstanceForType {
-      get { return DefaultInstance; }
-    }
-    
-    protected override FileDescriptorSet ThisMessage {
-      get { return this; }
-    }
-    
-    public static pbd::MessageDescriptor Descriptor {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_FileDescriptorSet__Descriptor; }
-    }
-    
-    protected override pb::FieldAccess.FieldAccessorTable<FileDescriptorSet, FileDescriptorSet.Builder> InternalFieldAccessors {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_FileDescriptorSet__FieldAccessorTable; }
-    }
-    
-    public const int FileFieldNumber = 1;
-    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto> file_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto>();
-    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto> FileList {
-      get { return file_; }
-    }
-    public int FileCount {
-      get { return file_.Count; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto GetFile(int index) {
-      return file_[index];
-    }
-    
-    public override bool IsInitialized {
-      get {
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto element in FileList) {
-          if (!element.IsInitialized) return false;
-        }
-        return true;
-      }
-    }
-    
-    public override void WriteTo(pb::ICodedOutputStream output) {
-      int size = SerializedSize;
-      string[] field_names = _fileDescriptorSetFieldNames;
-      if (file_.Count > 0) {
-        output.WriteMessageArray(1, field_names[0], file_);
-      }
-      UnknownFields.WriteTo(output);
-    }
-    
-    private int memoizedSerializedSize = -1;
-    public override int SerializedSize {
-      get {
-        int size = memoizedSerializedSize;
-        if (size != -1) return size;
-        
-        size = 0;
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto element in FileList) {
-          size += pb::CodedOutputStream.ComputeMessageSize(1, element);
-        }
-        size += UnknownFields.SerializedSize;
-        memoizedSerializedSize = size;
-        return size;
-      }
-    }
-    
-    public static FileDescriptorSet ParseFrom(pb::ByteString data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static FileDescriptorSet ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static FileDescriptorSet ParseFrom(byte[] data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static FileDescriptorSet ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static FileDescriptorSet ParseFrom(global::System.IO.Stream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static FileDescriptorSet ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    public static FileDescriptorSet ParseDelimitedFrom(global::System.IO.Stream input) {
-      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
-    }
-    public static FileDescriptorSet ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
-    }
-    public static FileDescriptorSet ParseFrom(pb::ICodedInputStream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static FileDescriptorSet ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    private FileDescriptorSet MakeReadOnly() {
-      file_.MakeReadOnly();
-      return this;
-    }
-    
-    public static Builder CreateBuilder() { return new Builder(); }
-    public override Builder ToBuilder() { return CreateBuilder(this); }
-    public override Builder CreateBuilderForType() { return new Builder(); }
-    public static Builder CreateBuilder(FileDescriptorSet prototype) {
-      return new Builder(prototype);
-    }
-    
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-    public sealed partial class Builder : pb::GeneratedBuilder<FileDescriptorSet, Builder> {
-      protected override Builder ThisBuilder {
-        get { return this; }
-      }
-      public Builder() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-      }
-      internal Builder(FileDescriptorSet cloneFrom) {
-        result = cloneFrom;
-        resultIsReadOnly = true;
-      }
-      
-      private bool resultIsReadOnly;
-      private FileDescriptorSet result;
-      
-      private FileDescriptorSet PrepareBuilder() {
-        if (resultIsReadOnly) {
-          FileDescriptorSet original = result;
-          result = new FileDescriptorSet();
-          resultIsReadOnly = false;
-          MergeFrom(original);
-        }
-        return result;
-      }
-      
-      public override bool IsInitialized {
-        get { return result.IsInitialized; }
-      }
-      
-      protected override FileDescriptorSet MessageBeingBuilt {
-        get { return PrepareBuilder(); }
-      }
-      
-      public override Builder Clear() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-        return this;
-      }
-      
-      public override Builder Clone() {
-        if (resultIsReadOnly) {
-          return new Builder(result);
-        } else {
-          return new Builder().MergeFrom(result);
-        }
-      }
-      
-      public override pbd::MessageDescriptor DescriptorForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorSet.Descriptor; }
-      }
-      
-      public override FileDescriptorSet DefaultInstanceForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorSet.DefaultInstance; }
-      }
-      
-      public override FileDescriptorSet BuildPartial() {
-        if (resultIsReadOnly) {
-          return result;
-        }
-        resultIsReadOnly = true;
-        return result.MakeReadOnly();
-      }
-      
-      public override Builder MergeFrom(pb::IMessage other) {
-        if (other is FileDescriptorSet) {
-          return MergeFrom((FileDescriptorSet) other);
-        } else {
-          base.MergeFrom(other);
-          return this;
-        }
-      }
-      
-      public override Builder MergeFrom(FileDescriptorSet other) {
-        if (other == global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorSet.DefaultInstance) return this;
-        PrepareBuilder();
-        if (other.file_.Count != 0) {
-          result.file_.Add(other.file_);
-        }
-        this.MergeUnknownFields(other.UnknownFields);
-        return this;
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input) {
-        return MergeFrom(input, pb::ExtensionRegistry.Empty);
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-        PrepareBuilder();
-        pb::UnknownFieldSet.Builder unknownFields = null;
-        uint tag;
-        string field_name;
-        while (input.ReadTag(out tag, out field_name)) {
-          if(tag == 0 && field_name != null) {
-            int field_ordinal = global::System.Array.BinarySearch(_fileDescriptorSetFieldNames, field_name, global::System.StringComparer.Ordinal);
-            if(field_ordinal >= 0)
-              tag = _fileDescriptorSetFieldTags[field_ordinal];
-            else {
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              continue;
-            }
-          }
-          switch (tag) {
-            case 0: {
-              throw pb::InvalidProtocolBufferException.InvalidTag();
-            }
-            default: {
-              if (pb::WireFormat.IsEndGroupTag(tag)) {
-                if (unknownFields != null) {
-                  this.UnknownFields = unknownFields.Build();
-                }
-                return this;
-              }
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              break;
-            }
-            case 10: {
-              input.ReadMessageArray(tag, field_name, result.file_, global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto.DefaultInstance, extensionRegistry);
-              break;
-            }
-          }
-        }
-        
-        if (unknownFields != null) {
-          this.UnknownFields = unknownFields.Build();
-        }
-        return this;
-      }
-      
-      
-      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto> FileList {
-        get { return PrepareBuilder().file_; }
-      }
-      public int FileCount {
-        get { return result.FileCount; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto GetFile(int index) {
-        return result.GetFile(index);
-      }
-      public Builder SetFile(int index, global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.file_[index] = value;
-        return this;
-      }
-      public Builder SetFile(int index, global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.file_[index] = builderForValue.Build();
-        return this;
-      }
-      public Builder AddFile(global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.file_.Add(value);
-        return this;
-      }
-      public Builder AddFile(global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.file_.Add(builderForValue.Build());
-        return this;
-      }
-      public Builder AddRangeFile(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto> values) {
-        PrepareBuilder();
-        result.file_.Add(values);
-        return this;
-      }
-      public Builder ClearFile() {
-        PrepareBuilder();
-        result.file_.Clear();
-        return this;
-      }
-    }
-    static FileDescriptorSet() {
-      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
-    }
-  }
-  
-  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-  public sealed partial class FileDescriptorProto : pb::GeneratedMessage<FileDescriptorProto, FileDescriptorProto.Builder> {
-    private FileDescriptorProto() { }
-    private static readonly FileDescriptorProto defaultInstance = new FileDescriptorProto().MakeReadOnly();
-    private static readonly string[] _fileDescriptorProtoFieldNames = new string[] { "dependency", "enum_type", "extension", "message_type", "name", "options", "package", "service", "source_code_info" };
-    private static readonly uint[] _fileDescriptorProtoFieldTags = new uint[] { 26, 42, 58, 34, 10, 66, 18, 50, 74 };
-    public static FileDescriptorProto DefaultInstance {
-      get { return defaultInstance; }
-    }
-    
-    public override FileDescriptorProto DefaultInstanceForType {
-      get { return DefaultInstance; }
-    }
-    
-    protected override FileDescriptorProto ThisMessage {
-      get { return this; }
-    }
-    
-    public static pbd::MessageDescriptor Descriptor {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_FileDescriptorProto__Descriptor; }
-    }
-    
-    protected override pb::FieldAccess.FieldAccessorTable<FileDescriptorProto, FileDescriptorProto.Builder> InternalFieldAccessors {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_FileDescriptorProto__FieldAccessorTable; }
-    }
-    
-    public const int NameFieldNumber = 1;
-    private bool hasName;
-    private string name_ = "";
-    public bool HasName {
-      get { return hasName; }
-    }
-    public string Name {
-      get { return name_; }
-    }
-    
-    public const int PackageFieldNumber = 2;
-    private bool hasPackage;
-    private string package_ = "";
-    public bool HasPackage {
-      get { return hasPackage; }
-    }
-    public string Package {
-      get { return package_; }
-    }
-    
-    public const int DependencyFieldNumber = 3;
-    private pbc::PopsicleList<string> dependency_ = new pbc::PopsicleList<string>();
-    public scg::IList<string> DependencyList {
-      get { return pbc::Lists.AsReadOnly(dependency_); }
-    }
-    public int DependencyCount {
-      get { return dependency_.Count; }
-    }
-    public string GetDependency(int index) {
-      return dependency_[index];
-    }
-    
-    public const int MessageTypeFieldNumber = 4;
-    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto> messageType_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto>();
-    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto> MessageTypeList {
-      get { return messageType_; }
-    }
-    public int MessageTypeCount {
-      get { return messageType_.Count; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto GetMessageType(int index) {
-      return messageType_[index];
-    }
-    
-    public const int EnumTypeFieldNumber = 5;
-    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto> enumType_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto>();
-    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto> EnumTypeList {
-      get { return enumType_; }
-    }
-    public int EnumTypeCount {
-      get { return enumType_.Count; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto GetEnumType(int index) {
-      return enumType_[index];
-    }
-    
-    public const int ServiceFieldNumber = 6;
-    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto> service_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto>();
-    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto> ServiceList {
-      get { return service_; }
-    }
-    public int ServiceCount {
-      get { return service_.Count; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto GetService(int index) {
-      return service_[index];
-    }
-    
-    public const int ExtensionFieldNumber = 7;
-    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto> extension_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto>();
-    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto> ExtensionList {
-      get { return extension_; }
-    }
-    public int ExtensionCount {
-      get { return extension_.Count; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto GetExtension(int index) {
-      return extension_[index];
-    }
-    
-    public const int OptionsFieldNumber = 8;
-    private bool hasOptions;
-    private global::Google.ProtocolBuffers.DescriptorProtos.FileOptions options_;
-    public bool HasOptions {
-      get { return hasOptions; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.FileOptions Options {
-      get { return options_ ?? global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.DefaultInstance; }
-    }
-    
-    public const int SourceCodeInfoFieldNumber = 9;
-    private bool hasSourceCodeInfo;
-    private global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo sourceCodeInfo_;
-    public bool HasSourceCodeInfo {
-      get { return hasSourceCodeInfo; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo SourceCodeInfo {
-      get { return sourceCodeInfo_ ?? global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo.DefaultInstance; }
-    }
-    
-    public override bool IsInitialized {
-      get {
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto element in MessageTypeList) {
-          if (!element.IsInitialized) return false;
-        }
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto element in EnumTypeList) {
-          if (!element.IsInitialized) return false;
-        }
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto element in ServiceList) {
-          if (!element.IsInitialized) return false;
-        }
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto element in ExtensionList) {
-          if (!element.IsInitialized) return false;
-        }
-        if (HasOptions) {
-          if (!Options.IsInitialized) return false;
-        }
-        return true;
-      }
-    }
-    
-    public override void WriteTo(pb::ICodedOutputStream output) {
-      int size = SerializedSize;
-      string[] field_names = _fileDescriptorProtoFieldNames;
-      if (hasName) {
-        output.WriteString(1, field_names[4], Name);
-      }
-      if (hasPackage) {
-        output.WriteString(2, field_names[6], Package);
-      }
-      if (dependency_.Count > 0) {
-        output.WriteStringArray(3, field_names[0], dependency_);
-      }
-      if (messageType_.Count > 0) {
-        output.WriteMessageArray(4, field_names[3], messageType_);
-      }
-      if (enumType_.Count > 0) {
-        output.WriteMessageArray(5, field_names[1], enumType_);
-      }
-      if (service_.Count > 0) {
-        output.WriteMessageArray(6, field_names[7], service_);
-      }
-      if (extension_.Count > 0) {
-        output.WriteMessageArray(7, field_names[2], extension_);
-      }
-      if (hasOptions) {
-        output.WriteMessage(8, field_names[5], Options);
-      }
-      if (hasSourceCodeInfo) {
-        output.WriteMessage(9, field_names[8], SourceCodeInfo);
-      }
-      UnknownFields.WriteTo(output);
-    }
-    
-    private int memoizedSerializedSize = -1;
-    public override int SerializedSize {
-      get {
-        int size = memoizedSerializedSize;
-        if (size != -1) return size;
-        
-        size = 0;
-        if (hasName) {
-          size += pb::CodedOutputStream.ComputeStringSize(1, Name);
-        }
-        if (hasPackage) {
-          size += pb::CodedOutputStream.ComputeStringSize(2, Package);
-        }
-        {
-          int dataSize = 0;
-          foreach (string element in DependencyList) {
-            dataSize += pb::CodedOutputStream.ComputeStringSizeNoTag(element);
-          }
-          size += dataSize;
-          size += 1 * dependency_.Count;
-        }
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto element in MessageTypeList) {
-          size += pb::CodedOutputStream.ComputeMessageSize(4, element);
-        }
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto element in EnumTypeList) {
-          size += pb::CodedOutputStream.ComputeMessageSize(5, element);
-        }
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto element in ServiceList) {
-          size += pb::CodedOutputStream.ComputeMessageSize(6, element);
-        }
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto element in ExtensionList) {
-          size += pb::CodedOutputStream.ComputeMessageSize(7, element);
-        }
-        if (hasOptions) {
-          size += pb::CodedOutputStream.ComputeMessageSize(8, Options);
-        }
-        if (hasSourceCodeInfo) {
-          size += pb::CodedOutputStream.ComputeMessageSize(9, SourceCodeInfo);
-        }
-        size += UnknownFields.SerializedSize;
-        memoizedSerializedSize = size;
-        return size;
-      }
-    }
-    
-    public static FileDescriptorProto ParseFrom(pb::ByteString data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static FileDescriptorProto ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static FileDescriptorProto ParseFrom(byte[] data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static FileDescriptorProto ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static FileDescriptorProto ParseFrom(global::System.IO.Stream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static FileDescriptorProto ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    public static FileDescriptorProto ParseDelimitedFrom(global::System.IO.Stream input) {
-      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
-    }
-    public static FileDescriptorProto ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
-    }
-    public static FileDescriptorProto ParseFrom(pb::ICodedInputStream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static FileDescriptorProto ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    private FileDescriptorProto MakeReadOnly() {
-      dependency_.MakeReadOnly();
-      messageType_.MakeReadOnly();
-      enumType_.MakeReadOnly();
-      service_.MakeReadOnly();
-      extension_.MakeReadOnly();
-      return this;
-    }
-    
-    public static Builder CreateBuilder() { return new Builder(); }
-    public override Builder ToBuilder() { return CreateBuilder(this); }
-    public override Builder CreateBuilderForType() { return new Builder(); }
-    public static Builder CreateBuilder(FileDescriptorProto prototype) {
-      return new Builder(prototype);
-    }
-    
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-    public sealed partial class Builder : pb::GeneratedBuilder<FileDescriptorProto, Builder> {
-      protected override Builder ThisBuilder {
-        get { return this; }
-      }
-      public Builder() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-      }
-      internal Builder(FileDescriptorProto cloneFrom) {
-        result = cloneFrom;
-        resultIsReadOnly = true;
-      }
-      
-      private bool resultIsReadOnly;
-      private FileDescriptorProto result;
-      
-      private FileDescriptorProto PrepareBuilder() {
-        if (resultIsReadOnly) {
-          FileDescriptorProto original = result;
-          result = new FileDescriptorProto();
-          resultIsReadOnly = false;
-          MergeFrom(original);
-        }
-        return result;
-      }
-      
-      public override bool IsInitialized {
-        get { return result.IsInitialized; }
-      }
-      
-      protected override FileDescriptorProto MessageBeingBuilt {
-        get { return PrepareBuilder(); }
-      }
-      
-      public override Builder Clear() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-        return this;
-      }
-      
-      public override Builder Clone() {
-        if (resultIsReadOnly) {
-          return new Builder(result);
-        } else {
-          return new Builder().MergeFrom(result);
-        }
-      }
-      
-      public override pbd::MessageDescriptor DescriptorForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto.Descriptor; }
-      }
-      
-      public override FileDescriptorProto DefaultInstanceForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto.DefaultInstance; }
-      }
-      
-      public override FileDescriptorProto BuildPartial() {
-        if (resultIsReadOnly) {
-          return result;
-        }
-        resultIsReadOnly = true;
-        return result.MakeReadOnly();
-      }
-      
-      public override Builder MergeFrom(pb::IMessage other) {
-        if (other is FileDescriptorProto) {
-          return MergeFrom((FileDescriptorProto) other);
-        } else {
-          base.MergeFrom(other);
-          return this;
-        }
-      }
-      
-      public override Builder MergeFrom(FileDescriptorProto other) {
-        if (other == global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto.DefaultInstance) return this;
-        PrepareBuilder();
-        if (other.HasName) {
-          Name = other.Name;
-        }
-        if (other.HasPackage) {
-          Package = other.Package;
-        }
-        if (other.dependency_.Count != 0) {
-          result.dependency_.Add(other.dependency_);
-        }
-        if (other.messageType_.Count != 0) {
-          result.messageType_.Add(other.messageType_);
-        }
-        if (other.enumType_.Count != 0) {
-          result.enumType_.Add(other.enumType_);
-        }
-        if (other.service_.Count != 0) {
-          result.service_.Add(other.service_);
-        }
-        if (other.extension_.Count != 0) {
-          result.extension_.Add(other.extension_);
-        }
-        if (other.HasOptions) {
-          MergeOptions(other.Options);
-        }
-        if (other.HasSourceCodeInfo) {
-          MergeSourceCodeInfo(other.SourceCodeInfo);
-        }
-        this.MergeUnknownFields(other.UnknownFields);
-        return this;
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input) {
-        return MergeFrom(input, pb::ExtensionRegistry.Empty);
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-        PrepareBuilder();
-        pb::UnknownFieldSet.Builder unknownFields = null;
-        uint tag;
-        string field_name;
-        while (input.ReadTag(out tag, out field_name)) {
-          if(tag == 0 && field_name != null) {
-            int field_ordinal = global::System.Array.BinarySearch(_fileDescriptorProtoFieldNames, field_name, global::System.StringComparer.Ordinal);
-            if(field_ordinal >= 0)
-              tag = _fileDescriptorProtoFieldTags[field_ordinal];
-            else {
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              continue;
-            }
-          }
-          switch (tag) {
-            case 0: {
-              throw pb::InvalidProtocolBufferException.InvalidTag();
-            }
-            default: {
-              if (pb::WireFormat.IsEndGroupTag(tag)) {
-                if (unknownFields != null) {
-                  this.UnknownFields = unknownFields.Build();
-                }
-                return this;
-              }
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              break;
-            }
-            case 10: {
-              result.hasName = input.ReadString(ref result.name_);
-              break;
-            }
-            case 18: {
-              result.hasPackage = input.ReadString(ref result.package_);
-              break;
-            }
-            case 26: {
-              input.ReadStringArray(tag, field_name, result.dependency_);
-              break;
-            }
-            case 34: {
-              input.ReadMessageArray(tag, field_name, result.messageType_, global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.DefaultInstance, extensionRegistry);
-              break;
-            }
-            case 42: {
-              input.ReadMessageArray(tag, field_name, result.enumType_, global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto.DefaultInstance, extensionRegistry);
-              break;
-            }
-            case 50: {
-              input.ReadMessageArray(tag, field_name, result.service_, global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto.DefaultInstance, extensionRegistry);
-              break;
-            }
-            case 58: {
-              input.ReadMessageArray(tag, field_name, result.extension_, global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.DefaultInstance, extensionRegistry);
-              break;
-            }
-            case 66: {
-              global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.Builder subBuilder = global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.CreateBuilder();
-              if (result.hasOptions) {
-                subBuilder.MergeFrom(Options);
-              }
-              input.ReadMessage(subBuilder, extensionRegistry);
-              Options = subBuilder.BuildPartial();
-              break;
-            }
-            case 74: {
-              global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo.Builder subBuilder = global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo.CreateBuilder();
-              if (result.hasSourceCodeInfo) {
-                subBuilder.MergeFrom(SourceCodeInfo);
-              }
-              input.ReadMessage(subBuilder, extensionRegistry);
-              SourceCodeInfo = subBuilder.BuildPartial();
-              break;
-            }
-          }
-        }
-        
-        if (unknownFields != null) {
-          this.UnknownFields = unknownFields.Build();
-        }
-        return this;
-      }
-      
-      
-      public bool HasName {
-        get { return result.hasName; }
-      }
-      public string Name {
-        get { return result.Name; }
-        set { SetName(value); }
-      }
-      public Builder SetName(string value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasName = true;
-        result.name_ = value;
-        return this;
-      }
-      public Builder ClearName() {
-        PrepareBuilder();
-        result.hasName = false;
-        result.name_ = "";
-        return this;
-      }
-      
-      public bool HasPackage {
-        get { return result.hasPackage; }
-      }
-      public string Package {
-        get { return result.Package; }
-        set { SetPackage(value); }
-      }
-      public Builder SetPackage(string value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasPackage = true;
-        result.package_ = value;
-        return this;
-      }
-      public Builder ClearPackage() {
-        PrepareBuilder();
-        result.hasPackage = false;
-        result.package_ = "";
-        return this;
-      }
-      
-      public pbc::IPopsicleList<string> DependencyList {
-        get { return PrepareBuilder().dependency_; }
-      }
-      public int DependencyCount {
-        get { return result.DependencyCount; }
-      }
-      public string GetDependency(int index) {
-        return result.GetDependency(index);
-      }
-      public Builder SetDependency(int index, string value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.dependency_[index] = value;
-        return this;
-      }
-      public Builder AddDependency(string value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.dependency_.Add(value);
-        return this;
-      }
-      public Builder AddRangeDependency(scg::IEnumerable<string> values) {
-        PrepareBuilder();
-        result.dependency_.Add(values);
-        return this;
-      }
-      public Builder ClearDependency() {
-        PrepareBuilder();
-        result.dependency_.Clear();
-        return this;
-      }
-      
-      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto> MessageTypeList {
-        get { return PrepareBuilder().messageType_; }
-      }
-      public int MessageTypeCount {
-        get { return result.MessageTypeCount; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto GetMessageType(int index) {
-        return result.GetMessageType(index);
-      }
-      public Builder SetMessageType(int index, global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.messageType_[index] = value;
-        return this;
-      }
-      public Builder SetMessageType(int index, global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.messageType_[index] = builderForValue.Build();
-        return this;
-      }
-      public Builder AddMessageType(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.messageType_.Add(value);
-        return this;
-      }
-      public Builder AddMessageType(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.messageType_.Add(builderForValue.Build());
-        return this;
-      }
-      public Builder AddRangeMessageType(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto> values) {
-        PrepareBuilder();
-        result.messageType_.Add(values);
-        return this;
-      }
-      public Builder ClearMessageType() {
-        PrepareBuilder();
-        result.messageType_.Clear();
-        return this;
-      }
-      
-      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto> EnumTypeList {
-        get { return PrepareBuilder().enumType_; }
-      }
-      public int EnumTypeCount {
-        get { return result.EnumTypeCount; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto GetEnumType(int index) {
-        return result.GetEnumType(index);
-      }
-      public Builder SetEnumType(int index, global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.enumType_[index] = value;
-        return this;
-      }
-      public Builder SetEnumType(int index, global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.enumType_[index] = builderForValue.Build();
-        return this;
-      }
-      public Builder AddEnumType(global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.enumType_.Add(value);
-        return this;
-      }
-      public Builder AddEnumType(global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.enumType_.Add(builderForValue.Build());
-        return this;
-      }
-      public Builder AddRangeEnumType(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto> values) {
-        PrepareBuilder();
-        result.enumType_.Add(values);
-        return this;
-      }
-      public Builder ClearEnumType() {
-        PrepareBuilder();
-        result.enumType_.Clear();
-        return this;
-      }
-      
-      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto> ServiceList {
-        get { return PrepareBuilder().service_; }
-      }
-      public int ServiceCount {
-        get { return result.ServiceCount; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto GetService(int index) {
-        return result.GetService(index);
-      }
-      public Builder SetService(int index, global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.service_[index] = value;
-        return this;
-      }
-      public Builder SetService(int index, global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.service_[index] = builderForValue.Build();
-        return this;
-      }
-      public Builder AddService(global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.service_.Add(value);
-        return this;
-      }
-      public Builder AddService(global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.service_.Add(builderForValue.Build());
-        return this;
-      }
-      public Builder AddRangeService(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto> values) {
-        PrepareBuilder();
-        result.service_.Add(values);
-        return this;
-      }
-      public Builder ClearService() {
-        PrepareBuilder();
-        result.service_.Clear();
-        return this;
-      }
-      
-      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto> ExtensionList {
-        get { return PrepareBuilder().extension_; }
-      }
-      public int ExtensionCount {
-        get { return result.ExtensionCount; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto GetExtension(int index) {
-        return result.GetExtension(index);
-      }
-      public Builder SetExtension(int index, global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.extension_[index] = value;
-        return this;
-      }
-      public Builder SetExtension(int index, global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.extension_[index] = builderForValue.Build();
-        return this;
-      }
-      public Builder AddExtension(global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.extension_.Add(value);
-        return this;
-      }
-      public Builder AddExtension(global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.extension_.Add(builderForValue.Build());
-        return this;
-      }
-      public Builder AddRangeExtension(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto> values) {
-        PrepareBuilder();
-        result.extension_.Add(values);
-        return this;
-      }
-      public Builder ClearExtension() {
-        PrepareBuilder();
-        result.extension_.Clear();
-        return this;
-      }
-      
-      public bool HasOptions {
-       get { return result.hasOptions; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.FileOptions Options {
-        get { return result.Options; }
-        set { SetOptions(value); }
-      }
-      public Builder SetOptions(global::Google.ProtocolBuffers.DescriptorProtos.FileOptions value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasOptions = true;
-        result.options_ = value;
-        return this;
-      }
-      public Builder SetOptions(global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.hasOptions = true;
-        result.options_ = builderForValue.Build();
-        return this;
-      }
-      public Builder MergeOptions(global::Google.ProtocolBuffers.DescriptorProtos.FileOptions value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        if (result.hasOptions &&
-            result.options_ != global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.DefaultInstance) {
-            result.options_ = global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.CreateBuilder(result.options_).MergeFrom(value).BuildPartial();
-        } else {
-          result.options_ = value;
-        }
-        result.hasOptions = true;
-        return this;
-      }
-      public Builder ClearOptions() {
-        PrepareBuilder();
-        result.hasOptions = false;
-        result.options_ = null;
-        return this;
-      }
-      
-      public bool HasSourceCodeInfo {
-       get { return result.hasSourceCodeInfo; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo SourceCodeInfo {
-        get { return result.SourceCodeInfo; }
-        set { SetSourceCodeInfo(value); }
-      }
-      public Builder SetSourceCodeInfo(global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasSourceCodeInfo = true;
-        result.sourceCodeInfo_ = value;
-        return this;
-      }
-      public Builder SetSourceCodeInfo(global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.hasSourceCodeInfo = true;
-        result.sourceCodeInfo_ = builderForValue.Build();
-        return this;
-      }
-      public Builder MergeSourceCodeInfo(global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        if (result.hasSourceCodeInfo &&
-            result.sourceCodeInfo_ != global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo.DefaultInstance) {
-            result.sourceCodeInfo_ = global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo.CreateBuilder(result.sourceCodeInfo_).MergeFrom(value).BuildPartial();
-        } else {
-          result.sourceCodeInfo_ = value;
-        }
-        result.hasSourceCodeInfo = true;
-        return this;
-      }
-      public Builder ClearSourceCodeInfo() {
-        PrepareBuilder();
-        result.hasSourceCodeInfo = false;
-        result.sourceCodeInfo_ = null;
-        return this;
-      }
-    }
-    static FileDescriptorProto() {
-      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
-    }
-  }
-  
-  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-  public sealed partial class DescriptorProto : pb::GeneratedMessage<DescriptorProto, DescriptorProto.Builder> {
-    private DescriptorProto() { }
-    private static readonly DescriptorProto defaultInstance = new DescriptorProto().MakeReadOnly();
-    private static readonly string[] _descriptorProtoFieldNames = new string[] { "enum_type", "extension", "extension_range", "field", "name", "nested_type", "options" };
-    private static readonly uint[] _descriptorProtoFieldTags = new uint[] { 34, 50, 42, 18, 10, 26, 58 };
-    public static DescriptorProto DefaultInstance {
-      get { return defaultInstance; }
-    }
-    
-    public override DescriptorProto DefaultInstanceForType {
-      get { return DefaultInstance; }
-    }
-    
-    protected override DescriptorProto ThisMessage {
-      get { return this; }
-    }
-    
-    public static pbd::MessageDescriptor Descriptor {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_DescriptorProto__Descriptor; }
-    }
-    
-    protected override pb::FieldAccess.FieldAccessorTable<DescriptorProto, DescriptorProto.Builder> InternalFieldAccessors {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_DescriptorProto__FieldAccessorTable; }
-    }
-    
-    #region Nested types
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-    public static class Types {
-      [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-      [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-      [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-      public sealed partial class ExtensionRange : pb::GeneratedMessage<ExtensionRange, ExtensionRange.Builder> {
-        private ExtensionRange() { }
-        private static readonly ExtensionRange defaultInstance = new ExtensionRange().MakeReadOnly();
-        private static readonly string[] _extensionRangeFieldNames = new string[] { "end", "start" };
-        private static readonly uint[] _extensionRangeFieldTags = new uint[] { 16, 8 };
-        public static ExtensionRange DefaultInstance {
-          get { return defaultInstance; }
-        }
-        
-        public override ExtensionRange DefaultInstanceForType {
-          get { return DefaultInstance; }
-        }
-        
-        protected override ExtensionRange ThisMessage {
-          get { return this; }
-        }
-        
-        public static pbd::MessageDescriptor Descriptor {
-          get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_DescriptorProto_ExtensionRange__Descriptor; }
-        }
-        
-        protected override pb::FieldAccess.FieldAccessorTable<ExtensionRange, ExtensionRange.Builder> InternalFieldAccessors {
-          get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_DescriptorProto_ExtensionRange__FieldAccessorTable; }
-        }
-        
-        public const int StartFieldNumber = 1;
-        private bool hasStart;
-        private int start_;
-        public bool HasStart {
-          get { return hasStart; }
-        }
-        public int Start {
-          get { return start_; }
-        }
-        
-        public const int EndFieldNumber = 2;
-        private bool hasEnd;
-        private int end_;
-        public bool HasEnd {
-          get { return hasEnd; }
-        }
-        public int End {
-          get { return end_; }
-        }
-        
-        public override bool IsInitialized {
-          get {
-            return true;
-          }
-        }
-        
-        public override void WriteTo(pb::ICodedOutputStream output) {
-          int size = SerializedSize;
-          string[] field_names = _extensionRangeFieldNames;
-          if (hasStart) {
-            output.WriteInt32(1, field_names[1], Start);
-          }
-          if (hasEnd) {
-            output.WriteInt32(2, field_names[0], End);
-          }
-          UnknownFields.WriteTo(output);
-        }
-        
-        private int memoizedSerializedSize = -1;
-        public override int SerializedSize {
-          get {
-            int size = memoizedSerializedSize;
-            if (size != -1) return size;
-            
-            size = 0;
-            if (hasStart) {
-              size += pb::CodedOutputStream.ComputeInt32Size(1, Start);
-            }
-            if (hasEnd) {
-              size += pb::CodedOutputStream.ComputeInt32Size(2, End);
-            }
-            size += UnknownFields.SerializedSize;
-            memoizedSerializedSize = size;
-            return size;
-          }
-        }
-        
-        public static ExtensionRange ParseFrom(pb::ByteString data) {
-          return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-        }
-        public static ExtensionRange ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
-          return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-        }
-        public static ExtensionRange ParseFrom(byte[] data) {
-          return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-        }
-        public static ExtensionRange ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
-          return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-        }
-        public static ExtensionRange ParseFrom(global::System.IO.Stream input) {
-          return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-        }
-        public static ExtensionRange ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-          return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-        }
-        public static ExtensionRange ParseDelimitedFrom(global::System.IO.Stream input) {
-          return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
-        }
-        public static ExtensionRange ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-          return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
-        }
-        public static ExtensionRange ParseFrom(pb::ICodedInputStream input) {
-          return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-        }
-        public static ExtensionRange ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-          return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-        }
-        private ExtensionRange MakeReadOnly() {
-          return this;
-        }
-        
-        public static Builder CreateBuilder() { return new Builder(); }
-        public override Builder ToBuilder() { return CreateBuilder(this); }
-        public override Builder CreateBuilderForType() { return new Builder(); }
-        public static Builder CreateBuilder(ExtensionRange prototype) {
-          return new Builder(prototype);
-        }
-        
-        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-        [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-        public sealed partial class Builder : pb::GeneratedBuilder<ExtensionRange, Builder> {
-          protected override Builder ThisBuilder {
-            get { return this; }
-          }
-          public Builder() {
-            result = DefaultInstance;
-            resultIsReadOnly = true;
-          }
-          internal Builder(ExtensionRange cloneFrom) {
-            result = cloneFrom;
-            resultIsReadOnly = true;
-          }
-          
-          private bool resultIsReadOnly;
-          private ExtensionRange result;
-          
-          private ExtensionRange PrepareBuilder() {
-            if (resultIsReadOnly) {
-              ExtensionRange original = result;
-              result = new ExtensionRange();
-              resultIsReadOnly = false;
-              MergeFrom(original);
-            }
-            return result;
-          }
-          
-          public override bool IsInitialized {
-            get { return result.IsInitialized; }
-          }
-          
-          protected override ExtensionRange MessageBeingBuilt {
-            get { return PrepareBuilder(); }
-          }
-          
-          public override Builder Clear() {
-            result = DefaultInstance;
-            resultIsReadOnly = true;
-            return this;
-          }
-          
-          public override Builder Clone() {
-            if (resultIsReadOnly) {
-              return new Builder(result);
-            } else {
-              return new Builder().MergeFrom(result);
-            }
-          }
-          
-          public override pbd::MessageDescriptor DescriptorForType {
-            get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange.Descriptor; }
-          }
-          
-          public override ExtensionRange DefaultInstanceForType {
-            get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange.DefaultInstance; }
-          }
-          
-          public override ExtensionRange BuildPartial() {
-            if (resultIsReadOnly) {
-              return result;
-            }
-            resultIsReadOnly = true;
-            return result.MakeReadOnly();
-          }
-          
-          public override Builder MergeFrom(pb::IMessage other) {
-            if (other is ExtensionRange) {
-              return MergeFrom((ExtensionRange) other);
-            } else {
-              base.MergeFrom(other);
-              return this;
-            }
-          }
-          
-          public override Builder MergeFrom(ExtensionRange other) {
-            if (other == global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange.DefaultInstance) return this;
-            PrepareBuilder();
-            if (other.HasStart) {
-              Start = other.Start;
-            }
-            if (other.HasEnd) {
-              End = other.End;
-            }
-            this.MergeUnknownFields(other.UnknownFields);
-            return this;
-          }
-          
-          public override Builder MergeFrom(pb::ICodedInputStream input) {
-            return MergeFrom(input, pb::ExtensionRegistry.Empty);
-          }
-          
-          public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-            PrepareBuilder();
-            pb::UnknownFieldSet.Builder unknownFields = null;
-            uint tag;
-            string field_name;
-            while (input.ReadTag(out tag, out field_name)) {
-              if(tag == 0 && field_name != null) {
-                int field_ordinal = global::System.Array.BinarySearch(_extensionRangeFieldNames, field_name, global::System.StringComparer.Ordinal);
-                if(field_ordinal >= 0)
-                  tag = _extensionRangeFieldTags[field_ordinal];
-                else {
-                  if (unknownFields == null) {
-                    unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-                  }
-                  ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-                  continue;
-                }
-              }
-              switch (tag) {
-                case 0: {
-                  throw pb::InvalidProtocolBufferException.InvalidTag();
-                }
-                default: {
-                  if (pb::WireFormat.IsEndGroupTag(tag)) {
-                    if (unknownFields != null) {
-                      this.UnknownFields = unknownFields.Build();
-                    }
-                    return this;
-                  }
-                  if (unknownFields == null) {
-                    unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-                  }
-                  ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-                  break;
-                }
-                case 8: {
-                  result.hasStart = input.ReadInt32(ref result.start_);
-                  break;
-                }
-                case 16: {
-                  result.hasEnd = input.ReadInt32(ref result.end_);
-                  break;
-                }
-              }
-            }
-            
-            if (unknownFields != null) {
-              this.UnknownFields = unknownFields.Build();
-            }
-            return this;
-          }
-          
-          
-          public bool HasStart {
-            get { return result.hasStart; }
-          }
-          public int Start {
-            get { return result.Start; }
-            set { SetStart(value); }
-          }
-          public Builder SetStart(int value) {
-            PrepareBuilder();
-            result.hasStart = true;
-            result.start_ = value;
-            return this;
-          }
-          public Builder ClearStart() {
-            PrepareBuilder();
-            result.hasStart = false;
-            result.start_ = 0;
-            return this;
-          }
-          
-          public bool HasEnd {
-            get { return result.hasEnd; }
-          }
-          public int End {
-            get { return result.End; }
-            set { SetEnd(value); }
-          }
-          public Builder SetEnd(int value) {
-            PrepareBuilder();
-            result.hasEnd = true;
-            result.end_ = value;
-            return this;
-          }
-          public Builder ClearEnd() {
-            PrepareBuilder();
-            result.hasEnd = false;
-            result.end_ = 0;
-            return this;
-          }
-        }
-        static ExtensionRange() {
-          object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
-        }
-      }
-      
-    }
-    #endregion
-    
-    public const int NameFieldNumber = 1;
-    private bool hasName;
-    private string name_ = "";
-    public bool HasName {
-      get { return hasName; }
-    }
-    public string Name {
-      get { return name_; }
-    }
-    
-    public const int FieldFieldNumber = 2;
-    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto> field_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto>();
-    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto> FieldList {
-      get { return field_; }
-    }
-    public int FieldCount {
-      get { return field_.Count; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto GetField(int index) {
-      return field_[index];
-    }
-    
-    public const int ExtensionFieldNumber = 6;
-    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto> extension_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto>();
-    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto> ExtensionList {
-      get { return extension_; }
-    }
-    public int ExtensionCount {
-      get { return extension_.Count; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto GetExtension(int index) {
-      return extension_[index];
-    }
-    
-    public const int NestedTypeFieldNumber = 3;
-    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto> nestedType_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto>();
-    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto> NestedTypeList {
-      get { return nestedType_; }
-    }
-    public int NestedTypeCount {
-      get { return nestedType_.Count; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto GetNestedType(int index) {
-      return nestedType_[index];
-    }
-    
-    public const int EnumTypeFieldNumber = 4;
-    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto> enumType_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto>();
-    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto> EnumTypeList {
-      get { return enumType_; }
-    }
-    public int EnumTypeCount {
-      get { return enumType_.Count; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto GetEnumType(int index) {
-      return enumType_[index];
-    }
-    
-    public const int ExtensionRangeFieldNumber = 5;
-    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange> extensionRange_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange>();
-    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange> ExtensionRangeList {
-      get { return extensionRange_; }
-    }
-    public int ExtensionRangeCount {
-      get { return extensionRange_.Count; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange GetExtensionRange(int index) {
-      return extensionRange_[index];
-    }
-    
-    public const int OptionsFieldNumber = 7;
-    private bool hasOptions;
-    private global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions options_;
-    public bool HasOptions {
-      get { return hasOptions; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions Options {
-      get { return options_ ?? global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions.DefaultInstance; }
-    }
-    
-    public override bool IsInitialized {
-      get {
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto element in FieldList) {
-          if (!element.IsInitialized) return false;
-        }
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto element in ExtensionList) {
-          if (!element.IsInitialized) return false;
-        }
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto element in NestedTypeList) {
-          if (!element.IsInitialized) return false;
-        }
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto element in EnumTypeList) {
-          if (!element.IsInitialized) return false;
-        }
-        if (HasOptions) {
-          if (!Options.IsInitialized) return false;
-        }
-        return true;
-      }
-    }
-    
-    public override void WriteTo(pb::ICodedOutputStream output) {
-      int size = SerializedSize;
-      string[] field_names = _descriptorProtoFieldNames;
-      if (hasName) {
-        output.WriteString(1, field_names[4], Name);
-      }
-      if (field_.Count > 0) {
-        output.WriteMessageArray(2, field_names[3], field_);
-      }
-      if (nestedType_.Count > 0) {
-        output.WriteMessageArray(3, field_names[5], nestedType_);
-      }
-      if (enumType_.Count > 0) {
-        output.WriteMessageArray(4, field_names[0], enumType_);
-      }
-      if (extensionRange_.Count > 0) {
-        output.WriteMessageArray(5, field_names[2], extensionRange_);
-      }
-      if (extension_.Count > 0) {
-        output.WriteMessageArray(6, field_names[1], extension_);
-      }
-      if (hasOptions) {
-        output.WriteMessage(7, field_names[6], Options);
-      }
-      UnknownFields.WriteTo(output);
-    }
-    
-    private int memoizedSerializedSize = -1;
-    public override int SerializedSize {
-      get {
-        int size = memoizedSerializedSize;
-        if (size != -1) return size;
-        
-        size = 0;
-        if (hasName) {
-          size += pb::CodedOutputStream.ComputeStringSize(1, Name);
-        }
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto element in FieldList) {
-          size += pb::CodedOutputStream.ComputeMessageSize(2, element);
-        }
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto element in ExtensionList) {
-          size += pb::CodedOutputStream.ComputeMessageSize(6, element);
-        }
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto element in NestedTypeList) {
-          size += pb::CodedOutputStream.ComputeMessageSize(3, element);
-        }
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto element in EnumTypeList) {
-          size += pb::CodedOutputStream.ComputeMessageSize(4, element);
-        }
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange element in ExtensionRangeList) {
-          size += pb::CodedOutputStream.ComputeMessageSize(5, element);
-        }
-        if (hasOptions) {
-          size += pb::CodedOutputStream.ComputeMessageSize(7, Options);
-        }
-        size += UnknownFields.SerializedSize;
-        memoizedSerializedSize = size;
-        return size;
-      }
-    }
-    
-    public static DescriptorProto ParseFrom(pb::ByteString data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static DescriptorProto ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static DescriptorProto ParseFrom(byte[] data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static DescriptorProto ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static DescriptorProto ParseFrom(global::System.IO.Stream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static DescriptorProto ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    public static DescriptorProto ParseDelimitedFrom(global::System.IO.Stream input) {
-      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
-    }
-    public static DescriptorProto ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
-    }
-    public static DescriptorProto ParseFrom(pb::ICodedInputStream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static DescriptorProto ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    private DescriptorProto MakeReadOnly() {
-      field_.MakeReadOnly();
-      extension_.MakeReadOnly();
-      nestedType_.MakeReadOnly();
-      enumType_.MakeReadOnly();
-      extensionRange_.MakeReadOnly();
-      return this;
-    }
-    
-    public static Builder CreateBuilder() { return new Builder(); }
-    public override Builder ToBuilder() { return CreateBuilder(this); }
-    public override Builder CreateBuilderForType() { return new Builder(); }
-    public static Builder CreateBuilder(DescriptorProto prototype) {
-      return new Builder(prototype);
-    }
-    
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-    public sealed partial class Builder : pb::GeneratedBuilder<DescriptorProto, Builder> {
-      protected override Builder ThisBuilder {
-        get { return this; }
-      }
-      public Builder() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-      }
-      internal Builder(DescriptorProto cloneFrom) {
-        result = cloneFrom;
-        resultIsReadOnly = true;
-      }
-      
-      private bool resultIsReadOnly;
-      private DescriptorProto result;
-      
-      private DescriptorProto PrepareBuilder() {
-        if (resultIsReadOnly) {
-          DescriptorProto original = result;
-          result = new DescriptorProto();
-          resultIsReadOnly = false;
-          MergeFrom(original);
-        }
-        return result;
-      }
-      
-      public override bool IsInitialized {
-        get { return result.IsInitialized; }
-      }
-      
-      protected override DescriptorProto MessageBeingBuilt {
-        get { return PrepareBuilder(); }
-      }
-      
-      public override Builder Clear() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-        return this;
-      }
-      
-      public override Builder Clone() {
-        if (resultIsReadOnly) {
-          return new Builder(result);
-        } else {
-          return new Builder().MergeFrom(result);
-        }
-      }
-      
-      public override pbd::MessageDescriptor DescriptorForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Descriptor; }
-      }
-      
-      public override DescriptorProto DefaultInstanceForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.DefaultInstance; }
-      }
-      
-      public override DescriptorProto BuildPartial() {
-        if (resultIsReadOnly) {
-          return result;
-        }
-        resultIsReadOnly = true;
-        return result.MakeReadOnly();
-      }
-      
-      public override Builder MergeFrom(pb::IMessage other) {
-        if (other is DescriptorProto) {
-          return MergeFrom((DescriptorProto) other);
-        } else {
-          base.MergeFrom(other);
-          return this;
-        }
-      }
-      
-      public override Builder MergeFrom(DescriptorProto other) {
-        if (other == global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.DefaultInstance) return this;
-        PrepareBuilder();
-        if (other.HasName) {
-          Name = other.Name;
-        }
-        if (other.field_.Count != 0) {
-          result.field_.Add(other.field_);
-        }
-        if (other.extension_.Count != 0) {
-          result.extension_.Add(other.extension_);
-        }
-        if (other.nestedType_.Count != 0) {
-          result.nestedType_.Add(other.nestedType_);
-        }
-        if (other.enumType_.Count != 0) {
-          result.enumType_.Add(other.enumType_);
-        }
-        if (other.extensionRange_.Count != 0) {
-          result.extensionRange_.Add(other.extensionRange_);
-        }
-        if (other.HasOptions) {
-          MergeOptions(other.Options);
-        }
-        this.MergeUnknownFields(other.UnknownFields);
-        return this;
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input) {
-        return MergeFrom(input, pb::ExtensionRegistry.Empty);
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-        PrepareBuilder();
-        pb::UnknownFieldSet.Builder unknownFields = null;
-        uint tag;
-        string field_name;
-        while (input.ReadTag(out tag, out field_name)) {
-          if(tag == 0 && field_name != null) {
-            int field_ordinal = global::System.Array.BinarySearch(_descriptorProtoFieldNames, field_name, global::System.StringComparer.Ordinal);
-            if(field_ordinal >= 0)
-              tag = _descriptorProtoFieldTags[field_ordinal];
-            else {
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              continue;
-            }
-          }
-          switch (tag) {
-            case 0: {
-              throw pb::InvalidProtocolBufferException.InvalidTag();
-            }
-            default: {
-              if (pb::WireFormat.IsEndGroupTag(tag)) {
-                if (unknownFields != null) {
-                  this.UnknownFields = unknownFields.Build();
-                }
-                return this;
-              }
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              break;
-            }
-            case 10: {
-              result.hasName = input.ReadString(ref result.name_);
-              break;
-            }
-            case 18: {
-              input.ReadMessageArray(tag, field_name, result.field_, global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.DefaultInstance, extensionRegistry);
-              break;
-            }
-            case 26: {
-              input.ReadMessageArray(tag, field_name, result.nestedType_, global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.DefaultInstance, extensionRegistry);
-              break;
-            }
-            case 34: {
-              input.ReadMessageArray(tag, field_name, result.enumType_, global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto.DefaultInstance, extensionRegistry);
-              break;
-            }
-            case 42: {
-              input.ReadMessageArray(tag, field_name, result.extensionRange_, global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange.DefaultInstance, extensionRegistry);
-              break;
-            }
-            case 50: {
-              input.ReadMessageArray(tag, field_name, result.extension_, global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.DefaultInstance, extensionRegistry);
-              break;
-            }
-            case 58: {
-              global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions.Builder subBuilder = global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions.CreateBuilder();
-              if (result.hasOptions) {
-                subBuilder.MergeFrom(Options);
-              }
-              input.ReadMessage(subBuilder, extensionRegistry);
-              Options = subBuilder.BuildPartial();
-              break;
-            }
-          }
-        }
-        
-        if (unknownFields != null) {
-          this.UnknownFields = unknownFields.Build();
-        }
-        return this;
-      }
-      
-      
-      public bool HasName {
-        get { return result.hasName; }
-      }
-      public string Name {
-        get { return result.Name; }
-        set { SetName(value); }
-      }
-      public Builder SetName(string value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasName = true;
-        result.name_ = value;
-        return this;
-      }
-      public Builder ClearName() {
-        PrepareBuilder();
-        result.hasName = false;
-        result.name_ = "";
-        return this;
-      }
-      
-      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto> FieldList {
-        get { return PrepareBuilder().field_; }
-      }
-      public int FieldCount {
-        get { return result.FieldCount; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto GetField(int index) {
-        return result.GetField(index);
-      }
-      public Builder SetField(int index, global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.field_[index] = value;
-        return this;
-      }
-      public Builder SetField(int index, global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.field_[index] = builderForValue.Build();
-        return this;
-      }
-      public Builder AddField(global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.field_.Add(value);
-        return this;
-      }
-      public Builder AddField(global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.field_.Add(builderForValue.Build());
-        return this;
-      }
-      public Builder AddRangeField(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto> values) {
-        PrepareBuilder();
-        result.field_.Add(values);
-        return this;
-      }
-      public Builder ClearField() {
-        PrepareBuilder();
-        result.field_.Clear();
-        return this;
-      }
-      
-      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto> ExtensionList {
-        get { return PrepareBuilder().extension_; }
-      }
-      public int ExtensionCount {
-        get { return result.ExtensionCount; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto GetExtension(int index) {
-        return result.GetExtension(index);
-      }
-      public Builder SetExtension(int index, global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.extension_[index] = value;
-        return this;
-      }
-      public Builder SetExtension(int index, global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.extension_[index] = builderForValue.Build();
-        return this;
-      }
-      public Builder AddExtension(global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.extension_.Add(value);
-        return this;
-      }
-      public Builder AddExtension(global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.extension_.Add(builderForValue.Build());
-        return this;
-      }
-      public Builder AddRangeExtension(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto> values) {
-        PrepareBuilder();
-        result.extension_.Add(values);
-        return this;
-      }
-      public Builder ClearExtension() {
-        PrepareBuilder();
-        result.extension_.Clear();
-        return this;
-      }
-      
-      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto> NestedTypeList {
-        get { return PrepareBuilder().nestedType_; }
-      }
-      public int NestedTypeCount {
-        get { return result.NestedTypeCount; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto GetNestedType(int index) {
-        return result.GetNestedType(index);
-      }
-      public Builder SetNestedType(int index, global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.nestedType_[index] = value;
-        return this;
-      }
-      public Builder SetNestedType(int index, global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.nestedType_[index] = builderForValue.Build();
-        return this;
-      }
-      public Builder AddNestedType(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.nestedType_.Add(value);
-        return this;
-      }
-      public Builder AddNestedType(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.nestedType_.Add(builderForValue.Build());
-        return this;
-      }
-      public Builder AddRangeNestedType(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto> values) {
-        PrepareBuilder();
-        result.nestedType_.Add(values);
-        return this;
-      }
-      public Builder ClearNestedType() {
-        PrepareBuilder();
-        result.nestedType_.Clear();
-        return this;
-      }
-      
-      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto> EnumTypeList {
-        get { return PrepareBuilder().enumType_; }
-      }
-      public int EnumTypeCount {
-        get { return result.EnumTypeCount; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto GetEnumType(int index) {
-        return result.GetEnumType(index);
-      }
-      public Builder SetEnumType(int index, global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.enumType_[index] = value;
-        return this;
-      }
-      public Builder SetEnumType(int index, global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.enumType_[index] = builderForValue.Build();
-        return this;
-      }
-      public Builder AddEnumType(global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.enumType_.Add(value);
-        return this;
-      }
-      public Builder AddEnumType(global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.enumType_.Add(builderForValue.Build());
-        return this;
-      }
-      public Builder AddRangeEnumType(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto> values) {
-        PrepareBuilder();
-        result.enumType_.Add(values);
-        return this;
-      }
-      public Builder ClearEnumType() {
-        PrepareBuilder();
-        result.enumType_.Clear();
-        return this;
-      }
-      
-      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange> ExtensionRangeList {
-        get { return PrepareBuilder().extensionRange_; }
-      }
-      public int ExtensionRangeCount {
-        get { return result.ExtensionRangeCount; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange GetExtensionRange(int index) {
-        return result.GetExtensionRange(index);
-      }
-      public Builder SetExtensionRange(int index, global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.extensionRange_[index] = value;
-        return this;
-      }
-      public Builder SetExtensionRange(int index, global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.extensionRange_[index] = builderForValue.Build();
-        return this;
-      }
-      public Builder AddExtensionRange(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.extensionRange_.Add(value);
-        return this;
-      }
-      public Builder AddExtensionRange(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.extensionRange_.Add(builderForValue.Build());
-        return this;
-      }
-      public Builder AddRangeExtensionRange(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProto.Types.ExtensionRange> values) {
-        PrepareBuilder();
-        result.extensionRange_.Add(values);
-        return this;
-      }
-      public Builder ClearExtensionRange() {
-        PrepareBuilder();
-        result.extensionRange_.Clear();
-        return this;
-      }
-      
-      public bool HasOptions {
-       get { return result.hasOptions; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions Options {
-        get { return result.Options; }
-        set { SetOptions(value); }
-      }
-      public Builder SetOptions(global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasOptions = true;
-        result.options_ = value;
-        return this;
-      }
-      public Builder SetOptions(global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.hasOptions = true;
-        result.options_ = builderForValue.Build();
-        return this;
-      }
-      public Builder MergeOptions(global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        if (result.hasOptions &&
-            result.options_ != global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions.DefaultInstance) {
-            result.options_ = global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions.CreateBuilder(result.options_).MergeFrom(value).BuildPartial();
-        } else {
-          result.options_ = value;
-        }
-        result.hasOptions = true;
-        return this;
-      }
-      public Builder ClearOptions() {
-        PrepareBuilder();
-        result.hasOptions = false;
-        result.options_ = null;
-        return this;
-      }
-    }
-    static DescriptorProto() {
-      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
-    }
-  }
-  
-  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-  public sealed partial class FieldDescriptorProto : pb::GeneratedMessage<FieldDescriptorProto, FieldDescriptorProto.Builder> {
-    private FieldDescriptorProto() { }
-    private static readonly FieldDescriptorProto defaultInstance = new FieldDescriptorProto().MakeReadOnly();
-    private static readonly string[] _fieldDescriptorProtoFieldNames = new string[] { "default_value", "extendee", "label", "name", "number", "options", "type", "type_name" };
-    private static readonly uint[] _fieldDescriptorProtoFieldTags = new uint[] { 58, 18, 32, 10, 24, 66, 40, 50 };
-    public static FieldDescriptorProto DefaultInstance {
-      get { return defaultInstance; }
-    }
-    
-    public override FieldDescriptorProto DefaultInstanceForType {
-      get { return DefaultInstance; }
-    }
-    
-    protected override FieldDescriptorProto ThisMessage {
-      get { return this; }
-    }
-    
-    public static pbd::MessageDescriptor Descriptor {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_FieldDescriptorProto__Descriptor; }
-    }
-    
-    protected override pb::FieldAccess.FieldAccessorTable<FieldDescriptorProto, FieldDescriptorProto.Builder> InternalFieldAccessors {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_FieldDescriptorProto__FieldAccessorTable; }
-    }
-    
-    #region Nested types
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-    public static class Types {
-      [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-      [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-      public enum Type {
-        TYPE_DOUBLE = 1,
-        TYPE_FLOAT = 2,
-        TYPE_INT64 = 3,
-        TYPE_UINT64 = 4,
-        TYPE_INT32 = 5,
-        TYPE_FIXED64 = 6,
-        TYPE_FIXED32 = 7,
-        TYPE_BOOL = 8,
-        TYPE_STRING = 9,
-        TYPE_GROUP = 10,
-        TYPE_MESSAGE = 11,
-        TYPE_BYTES = 12,
-        TYPE_UINT32 = 13,
-        TYPE_ENUM = 14,
-        TYPE_SFIXED32 = 15,
-        TYPE_SFIXED64 = 16,
-        TYPE_SINT32 = 17,
-        TYPE_SINT64 = 18,
-      }
-      
-      [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-      [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-      public enum Label {
-        LABEL_OPTIONAL = 1,
-        LABEL_REQUIRED = 2,
-        LABEL_REPEATED = 3,
-      }
-      
-    }
-    #endregion
-    
-    public const int NameFieldNumber = 1;
-    private bool hasName;
-    private string name_ = "";
-    public bool HasName {
-      get { return hasName; }
-    }
-    public string Name {
-      get { return name_; }
-    }
-    
-    public const int NumberFieldNumber = 3;
-    private bool hasNumber;
-    private int number_;
-    public bool HasNumber {
-      get { return hasNumber; }
-    }
-    public int Number {
-      get { return number_; }
-    }
-    
-    public const int LabelFieldNumber = 4;
-    private bool hasLabel;
-    private global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Types.Label label_ = global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Types.Label.LABEL_OPTIONAL;
-    public bool HasLabel {
-      get { return hasLabel; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Types.Label Label {
-      get { return label_; }
-    }
-    
-    public const int TypeFieldNumber = 5;
-    private bool hasType;
-    private global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Types.Type type_ = global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Types.Type.TYPE_DOUBLE;
-    public bool HasType {
-      get { return hasType; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Types.Type Type {
-      get { return type_; }
-    }
-    
-    public const int TypeNameFieldNumber = 6;
-    private bool hasTypeName;
-    private string typeName_ = "";
-    public bool HasTypeName {
-      get { return hasTypeName; }
-    }
-    public string TypeName {
-      get { return typeName_; }
-    }
-    
-    public const int ExtendeeFieldNumber = 2;
-    private bool hasExtendee;
-    private string extendee_ = "";
-    public bool HasExtendee {
-      get { return hasExtendee; }
-    }
-    public string Extendee {
-      get { return extendee_; }
-    }
-    
-    public const int DefaultValueFieldNumber = 7;
-    private bool hasDefaultValue;
-    private string defaultValue_ = "";
-    public bool HasDefaultValue {
-      get { return hasDefaultValue; }
-    }
-    public string DefaultValue {
-      get { return defaultValue_; }
-    }
-    
-    public const int OptionsFieldNumber = 8;
-    private bool hasOptions;
-    private global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions options_;
-    public bool HasOptions {
-      get { return hasOptions; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions Options {
-      get { return options_ ?? global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.DefaultInstance; }
-    }
-    
-    public override bool IsInitialized {
-      get {
-        if (HasOptions) {
-          if (!Options.IsInitialized) return false;
-        }
-        return true;
-      }
-    }
-    
-    public override void WriteTo(pb::ICodedOutputStream output) {
-      int size = SerializedSize;
-      string[] field_names = _fieldDescriptorProtoFieldNames;
-      if (hasName) {
-        output.WriteString(1, field_names[3], Name);
-      }
-      if (hasExtendee) {
-        output.WriteString(2, field_names[1], Extendee);
-      }
-      if (hasNumber) {
-        output.WriteInt32(3, field_names[4], Number);
-      }
-      if (hasLabel) {
-        output.WriteEnum(4, field_names[2], (int) Label, Label);
-      }
-      if (hasType) {
-        output.WriteEnum(5, field_names[6], (int) Type, Type);
-      }
-      if (hasTypeName) {
-        output.WriteString(6, field_names[7], TypeName);
-      }
-      if (hasDefaultValue) {
-        output.WriteString(7, field_names[0], DefaultValue);
-      }
-      if (hasOptions) {
-        output.WriteMessage(8, field_names[5], Options);
-      }
-      UnknownFields.WriteTo(output);
-    }
-    
-    private int memoizedSerializedSize = -1;
-    public override int SerializedSize {
-      get {
-        int size = memoizedSerializedSize;
-        if (size != -1) return size;
-        
-        size = 0;
-        if (hasName) {
-          size += pb::CodedOutputStream.ComputeStringSize(1, Name);
-        }
-        if (hasNumber) {
-          size += pb::CodedOutputStream.ComputeInt32Size(3, Number);
-        }
-        if (hasLabel) {
-          size += pb::CodedOutputStream.ComputeEnumSize(4, (int) Label);
-        }
-        if (hasType) {
-          size += pb::CodedOutputStream.ComputeEnumSize(5, (int) Type);
-        }
-        if (hasTypeName) {
-          size += pb::CodedOutputStream.ComputeStringSize(6, TypeName);
-        }
-        if (hasExtendee) {
-          size += pb::CodedOutputStream.ComputeStringSize(2, Extendee);
-        }
-        if (hasDefaultValue) {
-          size += pb::CodedOutputStream.ComputeStringSize(7, DefaultValue);
-        }
-        if (hasOptions) {
-          size += pb::CodedOutputStream.ComputeMessageSize(8, Options);
-        }
-        size += UnknownFields.SerializedSize;
-        memoizedSerializedSize = size;
-        return size;
-      }
-    }
-    
-    public static FieldDescriptorProto ParseFrom(pb::ByteString data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static FieldDescriptorProto ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static FieldDescriptorProto ParseFrom(byte[] data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static FieldDescriptorProto ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static FieldDescriptorProto ParseFrom(global::System.IO.Stream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static FieldDescriptorProto ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    public static FieldDescriptorProto ParseDelimitedFrom(global::System.IO.Stream input) {
-      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
-    }
-    public static FieldDescriptorProto ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
-    }
-    public static FieldDescriptorProto ParseFrom(pb::ICodedInputStream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static FieldDescriptorProto ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    private FieldDescriptorProto MakeReadOnly() {
-      return this;
-    }
-    
-    public static Builder CreateBuilder() { return new Builder(); }
-    public override Builder ToBuilder() { return CreateBuilder(this); }
-    public override Builder CreateBuilderForType() { return new Builder(); }
-    public static Builder CreateBuilder(FieldDescriptorProto prototype) {
-      return new Builder(prototype);
-    }
-    
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-    public sealed partial class Builder : pb::GeneratedBuilder<FieldDescriptorProto, Builder> {
-      protected override Builder ThisBuilder {
-        get { return this; }
-      }
-      public Builder() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-      }
-      internal Builder(FieldDescriptorProto cloneFrom) {
-        result = cloneFrom;
-        resultIsReadOnly = true;
-      }
-      
-      private bool resultIsReadOnly;
-      private FieldDescriptorProto result;
-      
-      private FieldDescriptorProto PrepareBuilder() {
-        if (resultIsReadOnly) {
-          FieldDescriptorProto original = result;
-          result = new FieldDescriptorProto();
-          resultIsReadOnly = false;
-          MergeFrom(original);
-        }
-        return result;
-      }
-      
-      public override bool IsInitialized {
-        get { return result.IsInitialized; }
-      }
-      
-      protected override FieldDescriptorProto MessageBeingBuilt {
-        get { return PrepareBuilder(); }
-      }
-      
-      public override Builder Clear() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-        return this;
-      }
-      
-      public override Builder Clone() {
-        if (resultIsReadOnly) {
-          return new Builder(result);
-        } else {
-          return new Builder().MergeFrom(result);
-        }
-      }
-      
-      public override pbd::MessageDescriptor DescriptorForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Descriptor; }
-      }
-      
-      public override FieldDescriptorProto DefaultInstanceForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.DefaultInstance; }
-      }
-      
-      public override FieldDescriptorProto BuildPartial() {
-        if (resultIsReadOnly) {
-          return result;
-        }
-        resultIsReadOnly = true;
-        return result.MakeReadOnly();
-      }
-      
-      public override Builder MergeFrom(pb::IMessage other) {
-        if (other is FieldDescriptorProto) {
-          return MergeFrom((FieldDescriptorProto) other);
-        } else {
-          base.MergeFrom(other);
-          return this;
-        }
-      }
-      
-      public override Builder MergeFrom(FieldDescriptorProto other) {
-        if (other == global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.DefaultInstance) return this;
-        PrepareBuilder();
-        if (other.HasName) {
-          Name = other.Name;
-        }
-        if (other.HasNumber) {
-          Number = other.Number;
-        }
-        if (other.HasLabel) {
-          Label = other.Label;
-        }
-        if (other.HasType) {
-          Type = other.Type;
-        }
-        if (other.HasTypeName) {
-          TypeName = other.TypeName;
-        }
-        if (other.HasExtendee) {
-          Extendee = other.Extendee;
-        }
-        if (other.HasDefaultValue) {
-          DefaultValue = other.DefaultValue;
-        }
-        if (other.HasOptions) {
-          MergeOptions(other.Options);
-        }
-        this.MergeUnknownFields(other.UnknownFields);
-        return this;
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input) {
-        return MergeFrom(input, pb::ExtensionRegistry.Empty);
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-        PrepareBuilder();
-        pb::UnknownFieldSet.Builder unknownFields = null;
-        uint tag;
-        string field_name;
-        while (input.ReadTag(out tag, out field_name)) {
-          if(tag == 0 && field_name != null) {
-            int field_ordinal = global::System.Array.BinarySearch(_fieldDescriptorProtoFieldNames, field_name, global::System.StringComparer.Ordinal);
-            if(field_ordinal >= 0)
-              tag = _fieldDescriptorProtoFieldTags[field_ordinal];
-            else {
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              continue;
-            }
-          }
-          switch (tag) {
-            case 0: {
-              throw pb::InvalidProtocolBufferException.InvalidTag();
-            }
-            default: {
-              if (pb::WireFormat.IsEndGroupTag(tag)) {
-                if (unknownFields != null) {
-                  this.UnknownFields = unknownFields.Build();
-                }
-                return this;
-              }
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              break;
-            }
-            case 10: {
-              result.hasName = input.ReadString(ref result.name_);
-              break;
-            }
-            case 18: {
-              result.hasExtendee = input.ReadString(ref result.extendee_);
-              break;
-            }
-            case 24: {
-              result.hasNumber = input.ReadInt32(ref result.number_);
-              break;
-            }
-            case 32: {
-              object unknown;
-              if(input.ReadEnum(ref result.label_, out unknown)) {
-                result.hasLabel = true;
-              } else if(unknown is int) {
-                if (unknownFields == null) {
-                  unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-                }
-                unknownFields.MergeVarintField(4, (ulong)(int)unknown);
-              }
-              break;
-            }
-            case 40: {
-              object unknown;
-              if(input.ReadEnum(ref result.type_, out unknown)) {
-                result.hasType = true;
-              } else if(unknown is int) {
-                if (unknownFields == null) {
-                  unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-                }
-                unknownFields.MergeVarintField(5, (ulong)(int)unknown);
-              }
-              break;
-            }
-            case 50: {
-              result.hasTypeName = input.ReadString(ref result.typeName_);
-              break;
-            }
-            case 58: {
-              result.hasDefaultValue = input.ReadString(ref result.defaultValue_);
-              break;
-            }
-            case 66: {
-              global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.Builder subBuilder = global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.CreateBuilder();
-              if (result.hasOptions) {
-                subBuilder.MergeFrom(Options);
-              }
-              input.ReadMessage(subBuilder, extensionRegistry);
-              Options = subBuilder.BuildPartial();
-              break;
-            }
-          }
-        }
-        
-        if (unknownFields != null) {
-          this.UnknownFields = unknownFields.Build();
-        }
-        return this;
-      }
-      
-      
-      public bool HasName {
-        get { return result.hasName; }
-      }
-      public string Name {
-        get { return result.Name; }
-        set { SetName(value); }
-      }
-      public Builder SetName(string value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasName = true;
-        result.name_ = value;
-        return this;
-      }
-      public Builder ClearName() {
-        PrepareBuilder();
-        result.hasName = false;
-        result.name_ = "";
-        return this;
-      }
-      
-      public bool HasNumber {
-        get { return result.hasNumber; }
-      }
-      public int Number {
-        get { return result.Number; }
-        set { SetNumber(value); }
-      }
-      public Builder SetNumber(int value) {
-        PrepareBuilder();
-        result.hasNumber = true;
-        result.number_ = value;
-        return this;
-      }
-      public Builder ClearNumber() {
-        PrepareBuilder();
-        result.hasNumber = false;
-        result.number_ = 0;
-        return this;
-      }
-      
-      public bool HasLabel {
-       get { return result.hasLabel; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Types.Label Label {
-        get { return result.Label; }
-        set { SetLabel(value); }
-      }
-      public Builder SetLabel(global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Types.Label value) {
-        PrepareBuilder();
-        result.hasLabel = true;
-        result.label_ = value;
-        return this;
-      }
-      public Builder ClearLabel() {
-        PrepareBuilder();
-        result.hasLabel = false;
-        result.label_ = global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Types.Label.LABEL_OPTIONAL;
-        return this;
-      }
-      
-      public bool HasType {
-       get { return result.hasType; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Types.Type Type {
-        get { return result.Type; }
-        set { SetType(value); }
-      }
-      public Builder SetType(global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Types.Type value) {
-        PrepareBuilder();
-        result.hasType = true;
-        result.type_ = value;
-        return this;
-      }
-      public Builder ClearType() {
-        PrepareBuilder();
-        result.hasType = false;
-        result.type_ = global::Google.ProtocolBuffers.DescriptorProtos.FieldDescriptorProto.Types.Type.TYPE_DOUBLE;
-        return this;
-      }
-      
-      public bool HasTypeName {
-        get { return result.hasTypeName; }
-      }
-      public string TypeName {
-        get { return result.TypeName; }
-        set { SetTypeName(value); }
-      }
-      public Builder SetTypeName(string value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasTypeName = true;
-        result.typeName_ = value;
-        return this;
-      }
-      public Builder ClearTypeName() {
-        PrepareBuilder();
-        result.hasTypeName = false;
-        result.typeName_ = "";
-        return this;
-      }
-      
-      public bool HasExtendee {
-        get { return result.hasExtendee; }
-      }
-      public string Extendee {
-        get { return result.Extendee; }
-        set { SetExtendee(value); }
-      }
-      public Builder SetExtendee(string value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasExtendee = true;
-        result.extendee_ = value;
-        return this;
-      }
-      public Builder ClearExtendee() {
-        PrepareBuilder();
-        result.hasExtendee = false;
-        result.extendee_ = "";
-        return this;
-      }
-      
-      public bool HasDefaultValue {
-        get { return result.hasDefaultValue; }
-      }
-      public string DefaultValue {
-        get { return result.DefaultValue; }
-        set { SetDefaultValue(value); }
-      }
-      public Builder SetDefaultValue(string value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasDefaultValue = true;
-        result.defaultValue_ = value;
-        return this;
-      }
-      public Builder ClearDefaultValue() {
-        PrepareBuilder();
-        result.hasDefaultValue = false;
-        result.defaultValue_ = "";
-        return this;
-      }
-      
-      public bool HasOptions {
-       get { return result.hasOptions; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions Options {
-        get { return result.Options; }
-        set { SetOptions(value); }
-      }
-      public Builder SetOptions(global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasOptions = true;
-        result.options_ = value;
-        return this;
-      }
-      public Builder SetOptions(global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.hasOptions = true;
-        result.options_ = builderForValue.Build();
-        return this;
-      }
-      public Builder MergeOptions(global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        if (result.hasOptions &&
-            result.options_ != global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.DefaultInstance) {
-            result.options_ = global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.CreateBuilder(result.options_).MergeFrom(value).BuildPartial();
-        } else {
-          result.options_ = value;
-        }
-        result.hasOptions = true;
-        return this;
-      }
-      public Builder ClearOptions() {
-        PrepareBuilder();
-        result.hasOptions = false;
-        result.options_ = null;
-        return this;
-      }
-    }
-    static FieldDescriptorProto() {
-      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
-    }
-  }
-  
-  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-  public sealed partial class EnumDescriptorProto : pb::GeneratedMessage<EnumDescriptorProto, EnumDescriptorProto.Builder> {
-    private EnumDescriptorProto() { }
-    private static readonly EnumDescriptorProto defaultInstance = new EnumDescriptorProto().MakeReadOnly();
-    private static readonly string[] _enumDescriptorProtoFieldNames = new string[] { "name", "options", "value" };
-    private static readonly uint[] _enumDescriptorProtoFieldTags = new uint[] { 10, 26, 18 };
-    public static EnumDescriptorProto DefaultInstance {
-      get { return defaultInstance; }
-    }
-    
-    public override EnumDescriptorProto DefaultInstanceForType {
-      get { return DefaultInstance; }
-    }
-    
-    protected override EnumDescriptorProto ThisMessage {
-      get { return this; }
-    }
-    
-    public static pbd::MessageDescriptor Descriptor {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_EnumDescriptorProto__Descriptor; }
-    }
-    
-    protected override pb::FieldAccess.FieldAccessorTable<EnumDescriptorProto, EnumDescriptorProto.Builder> InternalFieldAccessors {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_EnumDescriptorProto__FieldAccessorTable; }
-    }
-    
-    public const int NameFieldNumber = 1;
-    private bool hasName;
-    private string name_ = "";
-    public bool HasName {
-      get { return hasName; }
-    }
-    public string Name {
-      get { return name_; }
-    }
-    
-    public const int ValueFieldNumber = 2;
-    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto> value_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto>();
-    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto> ValueList {
-      get { return value_; }
-    }
-    public int ValueCount {
-      get { return value_.Count; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto GetValue(int index) {
-      return value_[index];
-    }
-    
-    public const int OptionsFieldNumber = 3;
-    private bool hasOptions;
-    private global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions options_;
-    public bool HasOptions {
-      get { return hasOptions; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions Options {
-      get { return options_ ?? global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions.DefaultInstance; }
-    }
-    
-    public override bool IsInitialized {
-      get {
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto element in ValueList) {
-          if (!element.IsInitialized) return false;
-        }
-        if (HasOptions) {
-          if (!Options.IsInitialized) return false;
-        }
-        return true;
-      }
-    }
-    
-    public override void WriteTo(pb::ICodedOutputStream output) {
-      int size = SerializedSize;
-      string[] field_names = _enumDescriptorProtoFieldNames;
-      if (hasName) {
-        output.WriteString(1, field_names[0], Name);
-      }
-      if (value_.Count > 0) {
-        output.WriteMessageArray(2, field_names[2], value_);
-      }
-      if (hasOptions) {
-        output.WriteMessage(3, field_names[1], Options);
-      }
-      UnknownFields.WriteTo(output);
-    }
-    
-    private int memoizedSerializedSize = -1;
-    public override int SerializedSize {
-      get {
-        int size = memoizedSerializedSize;
-        if (size != -1) return size;
-        
-        size = 0;
-        if (hasName) {
-          size += pb::CodedOutputStream.ComputeStringSize(1, Name);
-        }
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto element in ValueList) {
-          size += pb::CodedOutputStream.ComputeMessageSize(2, element);
-        }
-        if (hasOptions) {
-          size += pb::CodedOutputStream.ComputeMessageSize(3, Options);
-        }
-        size += UnknownFields.SerializedSize;
-        memoizedSerializedSize = size;
-        return size;
-      }
-    }
-    
-    public static EnumDescriptorProto ParseFrom(pb::ByteString data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static EnumDescriptorProto ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static EnumDescriptorProto ParseFrom(byte[] data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static EnumDescriptorProto ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static EnumDescriptorProto ParseFrom(global::System.IO.Stream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static EnumDescriptorProto ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    public static EnumDescriptorProto ParseDelimitedFrom(global::System.IO.Stream input) {
-      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
-    }
-    public static EnumDescriptorProto ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
-    }
-    public static EnumDescriptorProto ParseFrom(pb::ICodedInputStream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static EnumDescriptorProto ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    private EnumDescriptorProto MakeReadOnly() {
-      value_.MakeReadOnly();
-      return this;
-    }
-    
-    public static Builder CreateBuilder() { return new Builder(); }
-    public override Builder ToBuilder() { return CreateBuilder(this); }
-    public override Builder CreateBuilderForType() { return new Builder(); }
-    public static Builder CreateBuilder(EnumDescriptorProto prototype) {
-      return new Builder(prototype);
-    }
-    
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-    public sealed partial class Builder : pb::GeneratedBuilder<EnumDescriptorProto, Builder> {
-      protected override Builder ThisBuilder {
-        get { return this; }
-      }
-      public Builder() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-      }
-      internal Builder(EnumDescriptorProto cloneFrom) {
-        result = cloneFrom;
-        resultIsReadOnly = true;
-      }
-      
-      private bool resultIsReadOnly;
-      private EnumDescriptorProto result;
-      
-      private EnumDescriptorProto PrepareBuilder() {
-        if (resultIsReadOnly) {
-          EnumDescriptorProto original = result;
-          result = new EnumDescriptorProto();
-          resultIsReadOnly = false;
-          MergeFrom(original);
-        }
-        return result;
-      }
-      
-      public override bool IsInitialized {
-        get { return result.IsInitialized; }
-      }
-      
-      protected override EnumDescriptorProto MessageBeingBuilt {
-        get { return PrepareBuilder(); }
-      }
-      
-      public override Builder Clear() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-        return this;
-      }
-      
-      public override Builder Clone() {
-        if (resultIsReadOnly) {
-          return new Builder(result);
-        } else {
-          return new Builder().MergeFrom(result);
-        }
-      }
-      
-      public override pbd::MessageDescriptor DescriptorForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto.Descriptor; }
-      }
-      
-      public override EnumDescriptorProto DefaultInstanceForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto.DefaultInstance; }
-      }
-      
-      public override EnumDescriptorProto BuildPartial() {
-        if (resultIsReadOnly) {
-          return result;
-        }
-        resultIsReadOnly = true;
-        return result.MakeReadOnly();
-      }
-      
-      public override Builder MergeFrom(pb::IMessage other) {
-        if (other is EnumDescriptorProto) {
-          return MergeFrom((EnumDescriptorProto) other);
-        } else {
-          base.MergeFrom(other);
-          return this;
-        }
-      }
-      
-      public override Builder MergeFrom(EnumDescriptorProto other) {
-        if (other == global::Google.ProtocolBuffers.DescriptorProtos.EnumDescriptorProto.DefaultInstance) return this;
-        PrepareBuilder();
-        if (other.HasName) {
-          Name = other.Name;
-        }
-        if (other.value_.Count != 0) {
-          result.value_.Add(other.value_);
-        }
-        if (other.HasOptions) {
-          MergeOptions(other.Options);
-        }
-        this.MergeUnknownFields(other.UnknownFields);
-        return this;
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input) {
-        return MergeFrom(input, pb::ExtensionRegistry.Empty);
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-        PrepareBuilder();
-        pb::UnknownFieldSet.Builder unknownFields = null;
-        uint tag;
-        string field_name;
-        while (input.ReadTag(out tag, out field_name)) {
-          if(tag == 0 && field_name != null) {
-            int field_ordinal = global::System.Array.BinarySearch(_enumDescriptorProtoFieldNames, field_name, global::System.StringComparer.Ordinal);
-            if(field_ordinal >= 0)
-              tag = _enumDescriptorProtoFieldTags[field_ordinal];
-            else {
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              continue;
-            }
-          }
-          switch (tag) {
-            case 0: {
-              throw pb::InvalidProtocolBufferException.InvalidTag();
-            }
-            default: {
-              if (pb::WireFormat.IsEndGroupTag(tag)) {
-                if (unknownFields != null) {
-                  this.UnknownFields = unknownFields.Build();
-                }
-                return this;
-              }
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              break;
-            }
-            case 10: {
-              result.hasName = input.ReadString(ref result.name_);
-              break;
-            }
-            case 18: {
-              input.ReadMessageArray(tag, field_name, result.value_, global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto.DefaultInstance, extensionRegistry);
-              break;
-            }
-            case 26: {
-              global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions.Builder subBuilder = global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions.CreateBuilder();
-              if (result.hasOptions) {
-                subBuilder.MergeFrom(Options);
-              }
-              input.ReadMessage(subBuilder, extensionRegistry);
-              Options = subBuilder.BuildPartial();
-              break;
-            }
-          }
-        }
-        
-        if (unknownFields != null) {
-          this.UnknownFields = unknownFields.Build();
-        }
-        return this;
-      }
-      
-      
-      public bool HasName {
-        get { return result.hasName; }
-      }
-      public string Name {
-        get { return result.Name; }
-        set { SetName(value); }
-      }
-      public Builder SetName(string value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasName = true;
-        result.name_ = value;
-        return this;
-      }
-      public Builder ClearName() {
-        PrepareBuilder();
-        result.hasName = false;
-        result.name_ = "";
-        return this;
-      }
-      
-      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto> ValueList {
-        get { return PrepareBuilder().value_; }
-      }
-      public int ValueCount {
-        get { return result.ValueCount; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto GetValue(int index) {
-        return result.GetValue(index);
-      }
-      public Builder SetValue(int index, global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.value_[index] = value;
-        return this;
-      }
-      public Builder SetValue(int index, global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.value_[index] = builderForValue.Build();
-        return this;
-      }
-      public Builder AddValue(global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.value_.Add(value);
-        return this;
-      }
-      public Builder AddValue(global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.value_.Add(builderForValue.Build());
-        return this;
-      }
-      public Builder AddRangeValue(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto> values) {
-        PrepareBuilder();
-        result.value_.Add(values);
-        return this;
-      }
-      public Builder ClearValue() {
-        PrepareBuilder();
-        result.value_.Clear();
-        return this;
-      }
-      
-      public bool HasOptions {
-       get { return result.hasOptions; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions Options {
-        get { return result.Options; }
-        set { SetOptions(value); }
-      }
-      public Builder SetOptions(global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasOptions = true;
-        result.options_ = value;
-        return this;
-      }
-      public Builder SetOptions(global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.hasOptions = true;
-        result.options_ = builderForValue.Build();
-        return this;
-      }
-      public Builder MergeOptions(global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        if (result.hasOptions &&
-            result.options_ != global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions.DefaultInstance) {
-            result.options_ = global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions.CreateBuilder(result.options_).MergeFrom(value).BuildPartial();
-        } else {
-          result.options_ = value;
-        }
-        result.hasOptions = true;
-        return this;
-      }
-      public Builder ClearOptions() {
-        PrepareBuilder();
-        result.hasOptions = false;
-        result.options_ = null;
-        return this;
-      }
-    }
-    static EnumDescriptorProto() {
-      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
-    }
-  }
-  
-  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-  public sealed partial class EnumValueDescriptorProto : pb::GeneratedMessage<EnumValueDescriptorProto, EnumValueDescriptorProto.Builder> {
-    private EnumValueDescriptorProto() { }
-    private static readonly EnumValueDescriptorProto defaultInstance = new EnumValueDescriptorProto().MakeReadOnly();
-    private static readonly string[] _enumValueDescriptorProtoFieldNames = new string[] { "name", "number", "options" };
-    private static readonly uint[] _enumValueDescriptorProtoFieldTags = new uint[] { 10, 16, 26 };
-    public static EnumValueDescriptorProto DefaultInstance {
-      get { return defaultInstance; }
-    }
-    
-    public override EnumValueDescriptorProto DefaultInstanceForType {
-      get { return DefaultInstance; }
-    }
-    
-    protected override EnumValueDescriptorProto ThisMessage {
-      get { return this; }
-    }
-    
-    public static pbd::MessageDescriptor Descriptor {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_EnumValueDescriptorProto__Descriptor; }
-    }
-    
-    protected override pb::FieldAccess.FieldAccessorTable<EnumValueDescriptorProto, EnumValueDescriptorProto.Builder> InternalFieldAccessors {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_EnumValueDescriptorProto__FieldAccessorTable; }
-    }
-    
-    public const int NameFieldNumber = 1;
-    private bool hasName;
-    private string name_ = "";
-    public bool HasName {
-      get { return hasName; }
-    }
-    public string Name {
-      get { return name_; }
-    }
-    
-    public const int NumberFieldNumber = 2;
-    private bool hasNumber;
-    private int number_;
-    public bool HasNumber {
-      get { return hasNumber; }
-    }
-    public int Number {
-      get { return number_; }
-    }
-    
-    public const int OptionsFieldNumber = 3;
-    private bool hasOptions;
-    private global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions options_;
-    public bool HasOptions {
-      get { return hasOptions; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions Options {
-      get { return options_ ?? global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions.DefaultInstance; }
-    }
-    
-    public override bool IsInitialized {
-      get {
-        if (HasOptions) {
-          if (!Options.IsInitialized) return false;
-        }
-        return true;
-      }
-    }
-    
-    public override void WriteTo(pb::ICodedOutputStream output) {
-      int size = SerializedSize;
-      string[] field_names = _enumValueDescriptorProtoFieldNames;
-      if (hasName) {
-        output.WriteString(1, field_names[0], Name);
-      }
-      if (hasNumber) {
-        output.WriteInt32(2, field_names[1], Number);
-      }
-      if (hasOptions) {
-        output.WriteMessage(3, field_names[2], Options);
-      }
-      UnknownFields.WriteTo(output);
-    }
-    
-    private int memoizedSerializedSize = -1;
-    public override int SerializedSize {
-      get {
-        int size = memoizedSerializedSize;
-        if (size != -1) return size;
-        
-        size = 0;
-        if (hasName) {
-          size += pb::CodedOutputStream.ComputeStringSize(1, Name);
-        }
-        if (hasNumber) {
-          size += pb::CodedOutputStream.ComputeInt32Size(2, Number);
-        }
-        if (hasOptions) {
-          size += pb::CodedOutputStream.ComputeMessageSize(3, Options);
-        }
-        size += UnknownFields.SerializedSize;
-        memoizedSerializedSize = size;
-        return size;
-      }
-    }
-    
-    public static EnumValueDescriptorProto ParseFrom(pb::ByteString data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static EnumValueDescriptorProto ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static EnumValueDescriptorProto ParseFrom(byte[] data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static EnumValueDescriptorProto ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static EnumValueDescriptorProto ParseFrom(global::System.IO.Stream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static EnumValueDescriptorProto ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    public static EnumValueDescriptorProto ParseDelimitedFrom(global::System.IO.Stream input) {
-      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
-    }
-    public static EnumValueDescriptorProto ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
-    }
-    public static EnumValueDescriptorProto ParseFrom(pb::ICodedInputStream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static EnumValueDescriptorProto ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    private EnumValueDescriptorProto MakeReadOnly() {
-      return this;
-    }
-    
-    public static Builder CreateBuilder() { return new Builder(); }
-    public override Builder ToBuilder() { return CreateBuilder(this); }
-    public override Builder CreateBuilderForType() { return new Builder(); }
-    public static Builder CreateBuilder(EnumValueDescriptorProto prototype) {
-      return new Builder(prototype);
-    }
-    
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-    public sealed partial class Builder : pb::GeneratedBuilder<EnumValueDescriptorProto, Builder> {
-      protected override Builder ThisBuilder {
-        get { return this; }
-      }
-      public Builder() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-      }
-      internal Builder(EnumValueDescriptorProto cloneFrom) {
-        result = cloneFrom;
-        resultIsReadOnly = true;
-      }
-      
-      private bool resultIsReadOnly;
-      private EnumValueDescriptorProto result;
-      
-      private EnumValueDescriptorProto PrepareBuilder() {
-        if (resultIsReadOnly) {
-          EnumValueDescriptorProto original = result;
-          result = new EnumValueDescriptorProto();
-          resultIsReadOnly = false;
-          MergeFrom(original);
-        }
-        return result;
-      }
-      
-      public override bool IsInitialized {
-        get { return result.IsInitialized; }
-      }
-      
-      protected override EnumValueDescriptorProto MessageBeingBuilt {
-        get { return PrepareBuilder(); }
-      }
-      
-      public override Builder Clear() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-        return this;
-      }
-      
-      public override Builder Clone() {
-        if (resultIsReadOnly) {
-          return new Builder(result);
-        } else {
-          return new Builder().MergeFrom(result);
-        }
-      }
-      
-      public override pbd::MessageDescriptor DescriptorForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto.Descriptor; }
-      }
-      
-      public override EnumValueDescriptorProto DefaultInstanceForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto.DefaultInstance; }
-      }
-      
-      public override EnumValueDescriptorProto BuildPartial() {
-        if (resultIsReadOnly) {
-          return result;
-        }
-        resultIsReadOnly = true;
-        return result.MakeReadOnly();
-      }
-      
-      public override Builder MergeFrom(pb::IMessage other) {
-        if (other is EnumValueDescriptorProto) {
-          return MergeFrom((EnumValueDescriptorProto) other);
-        } else {
-          base.MergeFrom(other);
-          return this;
-        }
-      }
-      
-      public override Builder MergeFrom(EnumValueDescriptorProto other) {
-        if (other == global::Google.ProtocolBuffers.DescriptorProtos.EnumValueDescriptorProto.DefaultInstance) return this;
-        PrepareBuilder();
-        if (other.HasName) {
-          Name = other.Name;
-        }
-        if (other.HasNumber) {
-          Number = other.Number;
-        }
-        if (other.HasOptions) {
-          MergeOptions(other.Options);
-        }
-        this.MergeUnknownFields(other.UnknownFields);
-        return this;
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input) {
-        return MergeFrom(input, pb::ExtensionRegistry.Empty);
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-        PrepareBuilder();
-        pb::UnknownFieldSet.Builder unknownFields = null;
-        uint tag;
-        string field_name;
-        while (input.ReadTag(out tag, out field_name)) {
-          if(tag == 0 && field_name != null) {
-            int field_ordinal = global::System.Array.BinarySearch(_enumValueDescriptorProtoFieldNames, field_name, global::System.StringComparer.Ordinal);
-            if(field_ordinal >= 0)
-              tag = _enumValueDescriptorProtoFieldTags[field_ordinal];
-            else {
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              continue;
-            }
-          }
-          switch (tag) {
-            case 0: {
-              throw pb::InvalidProtocolBufferException.InvalidTag();
-            }
-            default: {
-              if (pb::WireFormat.IsEndGroupTag(tag)) {
-                if (unknownFields != null) {
-                  this.UnknownFields = unknownFields.Build();
-                }
-                return this;
-              }
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              break;
-            }
-            case 10: {
-              result.hasName = input.ReadString(ref result.name_);
-              break;
-            }
-            case 16: {
-              result.hasNumber = input.ReadInt32(ref result.number_);
-              break;
-            }
-            case 26: {
-              global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions.Builder subBuilder = global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions.CreateBuilder();
-              if (result.hasOptions) {
-                subBuilder.MergeFrom(Options);
-              }
-              input.ReadMessage(subBuilder, extensionRegistry);
-              Options = subBuilder.BuildPartial();
-              break;
-            }
-          }
-        }
-        
-        if (unknownFields != null) {
-          this.UnknownFields = unknownFields.Build();
-        }
-        return this;
-      }
-      
-      
-      public bool HasName {
-        get { return result.hasName; }
-      }
-      public string Name {
-        get { return result.Name; }
-        set { SetName(value); }
-      }
-      public Builder SetName(string value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasName = true;
-        result.name_ = value;
-        return this;
-      }
-      public Builder ClearName() {
-        PrepareBuilder();
-        result.hasName = false;
-        result.name_ = "";
-        return this;
-      }
-      
-      public bool HasNumber {
-        get { return result.hasNumber; }
-      }
-      public int Number {
-        get { return result.Number; }
-        set { SetNumber(value); }
-      }
-      public Builder SetNumber(int value) {
-        PrepareBuilder();
-        result.hasNumber = true;
-        result.number_ = value;
-        return this;
-      }
-      public Builder ClearNumber() {
-        PrepareBuilder();
-        result.hasNumber = false;
-        result.number_ = 0;
-        return this;
-      }
-      
-      public bool HasOptions {
-       get { return result.hasOptions; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions Options {
-        get { return result.Options; }
-        set { SetOptions(value); }
-      }
-      public Builder SetOptions(global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasOptions = true;
-        result.options_ = value;
-        return this;
-      }
-      public Builder SetOptions(global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.hasOptions = true;
-        result.options_ = builderForValue.Build();
-        return this;
-      }
-      public Builder MergeOptions(global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        if (result.hasOptions &&
-            result.options_ != global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions.DefaultInstance) {
-            result.options_ = global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions.CreateBuilder(result.options_).MergeFrom(value).BuildPartial();
-        } else {
-          result.options_ = value;
-        }
-        result.hasOptions = true;
-        return this;
-      }
-      public Builder ClearOptions() {
-        PrepareBuilder();
-        result.hasOptions = false;
-        result.options_ = null;
-        return this;
-      }
-    }
-    static EnumValueDescriptorProto() {
-      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
-    }
-  }
-  
-  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-  public sealed partial class ServiceDescriptorProto : pb::GeneratedMessage<ServiceDescriptorProto, ServiceDescriptorProto.Builder> {
-    private ServiceDescriptorProto() { }
-    private static readonly ServiceDescriptorProto defaultInstance = new ServiceDescriptorProto().MakeReadOnly();
-    private static readonly string[] _serviceDescriptorProtoFieldNames = new string[] { "method", "name", "options" };
-    private static readonly uint[] _serviceDescriptorProtoFieldTags = new uint[] { 18, 10, 26 };
-    public static ServiceDescriptorProto DefaultInstance {
-      get { return defaultInstance; }
-    }
-    
-    public override ServiceDescriptorProto DefaultInstanceForType {
-      get { return DefaultInstance; }
-    }
-    
-    protected override ServiceDescriptorProto ThisMessage {
-      get { return this; }
-    }
-    
-    public static pbd::MessageDescriptor Descriptor {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_ServiceDescriptorProto__Descriptor; }
-    }
-    
-    protected override pb::FieldAccess.FieldAccessorTable<ServiceDescriptorProto, ServiceDescriptorProto.Builder> InternalFieldAccessors {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_ServiceDescriptorProto__FieldAccessorTable; }
-    }
-    
-    public const int NameFieldNumber = 1;
-    private bool hasName;
-    private string name_ = "";
-    public bool HasName {
-      get { return hasName; }
-    }
-    public string Name {
-      get { return name_; }
-    }
-    
-    public const int MethodFieldNumber = 2;
-    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto> method_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto>();
-    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto> MethodList {
-      get { return method_; }
-    }
-    public int MethodCount {
-      get { return method_.Count; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto GetMethod(int index) {
-      return method_[index];
-    }
-    
-    public const int OptionsFieldNumber = 3;
-    private bool hasOptions;
-    private global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions options_;
-    public bool HasOptions {
-      get { return hasOptions; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions Options {
-      get { return options_ ?? global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions.DefaultInstance; }
-    }
-    
-    public override bool IsInitialized {
-      get {
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto element in MethodList) {
-          if (!element.IsInitialized) return false;
-        }
-        if (HasOptions) {
-          if (!Options.IsInitialized) return false;
-        }
-        return true;
-      }
-    }
-    
-    public override void WriteTo(pb::ICodedOutputStream output) {
-      int size = SerializedSize;
-      string[] field_names = _serviceDescriptorProtoFieldNames;
-      if (hasName) {
-        output.WriteString(1, field_names[1], Name);
-      }
-      if (method_.Count > 0) {
-        output.WriteMessageArray(2, field_names[0], method_);
-      }
-      if (hasOptions) {
-        output.WriteMessage(3, field_names[2], Options);
-      }
-      UnknownFields.WriteTo(output);
-    }
-    
-    private int memoizedSerializedSize = -1;
-    public override int SerializedSize {
-      get {
-        int size = memoizedSerializedSize;
-        if (size != -1) return size;
-        
-        size = 0;
-        if (hasName) {
-          size += pb::CodedOutputStream.ComputeStringSize(1, Name);
-        }
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto element in MethodList) {
-          size += pb::CodedOutputStream.ComputeMessageSize(2, element);
-        }
-        if (hasOptions) {
-          size += pb::CodedOutputStream.ComputeMessageSize(3, Options);
-        }
-        size += UnknownFields.SerializedSize;
-        memoizedSerializedSize = size;
-        return size;
-      }
-    }
-    
-    public static ServiceDescriptorProto ParseFrom(pb::ByteString data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static ServiceDescriptorProto ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static ServiceDescriptorProto ParseFrom(byte[] data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static ServiceDescriptorProto ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static ServiceDescriptorProto ParseFrom(global::System.IO.Stream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static ServiceDescriptorProto ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    public static ServiceDescriptorProto ParseDelimitedFrom(global::System.IO.Stream input) {
-      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
-    }
-    public static ServiceDescriptorProto ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
-    }
-    public static ServiceDescriptorProto ParseFrom(pb::ICodedInputStream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static ServiceDescriptorProto ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    private ServiceDescriptorProto MakeReadOnly() {
-      method_.MakeReadOnly();
-      return this;
-    }
-    
-    public static Builder CreateBuilder() { return new Builder(); }
-    public override Builder ToBuilder() { return CreateBuilder(this); }
-    public override Builder CreateBuilderForType() { return new Builder(); }
-    public static Builder CreateBuilder(ServiceDescriptorProto prototype) {
-      return new Builder(prototype);
-    }
-    
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-    public sealed partial class Builder : pb::GeneratedBuilder<ServiceDescriptorProto, Builder> {
-      protected override Builder ThisBuilder {
-        get { return this; }
-      }
-      public Builder() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-      }
-      internal Builder(ServiceDescriptorProto cloneFrom) {
-        result = cloneFrom;
-        resultIsReadOnly = true;
-      }
-      
-      private bool resultIsReadOnly;
-      private ServiceDescriptorProto result;
-      
-      private ServiceDescriptorProto PrepareBuilder() {
-        if (resultIsReadOnly) {
-          ServiceDescriptorProto original = result;
-          result = new ServiceDescriptorProto();
-          resultIsReadOnly = false;
-          MergeFrom(original);
-        }
-        return result;
-      }
-      
-      public override bool IsInitialized {
-        get { return result.IsInitialized; }
-      }
-      
-      protected override ServiceDescriptorProto MessageBeingBuilt {
-        get { return PrepareBuilder(); }
-      }
-      
-      public override Builder Clear() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-        return this;
-      }
-      
-      public override Builder Clone() {
-        if (resultIsReadOnly) {
-          return new Builder(result);
-        } else {
-          return new Builder().MergeFrom(result);
-        }
-      }
-      
-      public override pbd::MessageDescriptor DescriptorForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto.Descriptor; }
-      }
-      
-      public override ServiceDescriptorProto DefaultInstanceForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto.DefaultInstance; }
-      }
-      
-      public override ServiceDescriptorProto BuildPartial() {
-        if (resultIsReadOnly) {
-          return result;
-        }
-        resultIsReadOnly = true;
-        return result.MakeReadOnly();
-      }
-      
-      public override Builder MergeFrom(pb::IMessage other) {
-        if (other is ServiceDescriptorProto) {
-          return MergeFrom((ServiceDescriptorProto) other);
-        } else {
-          base.MergeFrom(other);
-          return this;
-        }
-      }
-      
-      public override Builder MergeFrom(ServiceDescriptorProto other) {
-        if (other == global::Google.ProtocolBuffers.DescriptorProtos.ServiceDescriptorProto.DefaultInstance) return this;
-        PrepareBuilder();
-        if (other.HasName) {
-          Name = other.Name;
-        }
-        if (other.method_.Count != 0) {
-          result.method_.Add(other.method_);
-        }
-        if (other.HasOptions) {
-          MergeOptions(other.Options);
-        }
-        this.MergeUnknownFields(other.UnknownFields);
-        return this;
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input) {
-        return MergeFrom(input, pb::ExtensionRegistry.Empty);
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-        PrepareBuilder();
-        pb::UnknownFieldSet.Builder unknownFields = null;
-        uint tag;
-        string field_name;
-        while (input.ReadTag(out tag, out field_name)) {
-          if(tag == 0 && field_name != null) {
-            int field_ordinal = global::System.Array.BinarySearch(_serviceDescriptorProtoFieldNames, field_name, global::System.StringComparer.Ordinal);
-            if(field_ordinal >= 0)
-              tag = _serviceDescriptorProtoFieldTags[field_ordinal];
-            else {
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              continue;
-            }
-          }
-          switch (tag) {
-            case 0: {
-              throw pb::InvalidProtocolBufferException.InvalidTag();
-            }
-            default: {
-              if (pb::WireFormat.IsEndGroupTag(tag)) {
-                if (unknownFields != null) {
-                  this.UnknownFields = unknownFields.Build();
-                }
-                return this;
-              }
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              break;
-            }
-            case 10: {
-              result.hasName = input.ReadString(ref result.name_);
-              break;
-            }
-            case 18: {
-              input.ReadMessageArray(tag, field_name, result.method_, global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto.DefaultInstance, extensionRegistry);
-              break;
-            }
-            case 26: {
-              global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions.Builder subBuilder = global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions.CreateBuilder();
-              if (result.hasOptions) {
-                subBuilder.MergeFrom(Options);
-              }
-              input.ReadMessage(subBuilder, extensionRegistry);
-              Options = subBuilder.BuildPartial();
-              break;
-            }
-          }
-        }
-        
-        if (unknownFields != null) {
-          this.UnknownFields = unknownFields.Build();
-        }
-        return this;
-      }
-      
-      
-      public bool HasName {
-        get { return result.hasName; }
-      }
-      public string Name {
-        get { return result.Name; }
-        set { SetName(value); }
-      }
-      public Builder SetName(string value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasName = true;
-        result.name_ = value;
-        return this;
-      }
-      public Builder ClearName() {
-        PrepareBuilder();
-        result.hasName = false;
-        result.name_ = "";
-        return this;
-      }
-      
-      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto> MethodList {
-        get { return PrepareBuilder().method_; }
-      }
-      public int MethodCount {
-        get { return result.MethodCount; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto GetMethod(int index) {
-        return result.GetMethod(index);
-      }
-      public Builder SetMethod(int index, global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.method_[index] = value;
-        return this;
-      }
-      public Builder SetMethod(int index, global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.method_[index] = builderForValue.Build();
-        return this;
-      }
-      public Builder AddMethod(global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.method_.Add(value);
-        return this;
-      }
-      public Builder AddMethod(global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.method_.Add(builderForValue.Build());
-        return this;
-      }
-      public Builder AddRangeMethod(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto> values) {
-        PrepareBuilder();
-        result.method_.Add(values);
-        return this;
-      }
-      public Builder ClearMethod() {
-        PrepareBuilder();
-        result.method_.Clear();
-        return this;
-      }
-      
-      public bool HasOptions {
-       get { return result.hasOptions; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions Options {
-        get { return result.Options; }
-        set { SetOptions(value); }
-      }
-      public Builder SetOptions(global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasOptions = true;
-        result.options_ = value;
-        return this;
-      }
-      public Builder SetOptions(global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.hasOptions = true;
-        result.options_ = builderForValue.Build();
-        return this;
-      }
-      public Builder MergeOptions(global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        if (result.hasOptions &&
-            result.options_ != global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions.DefaultInstance) {
-            result.options_ = global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions.CreateBuilder(result.options_).MergeFrom(value).BuildPartial();
-        } else {
-          result.options_ = value;
-        }
-        result.hasOptions = true;
-        return this;
-      }
-      public Builder ClearOptions() {
-        PrepareBuilder();
-        result.hasOptions = false;
-        result.options_ = null;
-        return this;
-      }
-    }
-    static ServiceDescriptorProto() {
-      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
-    }
-  }
-  
-  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-  public sealed partial class MethodDescriptorProto : pb::GeneratedMessage<MethodDescriptorProto, MethodDescriptorProto.Builder> {
-    private MethodDescriptorProto() { }
-    private static readonly MethodDescriptorProto defaultInstance = new MethodDescriptorProto().MakeReadOnly();
-    private static readonly string[] _methodDescriptorProtoFieldNames = new string[] { "input_type", "name", "options", "output_type" };
-    private static readonly uint[] _methodDescriptorProtoFieldTags = new uint[] { 18, 10, 34, 26 };
-    public static MethodDescriptorProto DefaultInstance {
-      get { return defaultInstance; }
-    }
-    
-    public override MethodDescriptorProto DefaultInstanceForType {
-      get { return DefaultInstance; }
-    }
-    
-    protected override MethodDescriptorProto ThisMessage {
-      get { return this; }
-    }
-    
-    public static pbd::MessageDescriptor Descriptor {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_MethodDescriptorProto__Descriptor; }
-    }
-    
-    protected override pb::FieldAccess.FieldAccessorTable<MethodDescriptorProto, MethodDescriptorProto.Builder> InternalFieldAccessors {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_MethodDescriptorProto__FieldAccessorTable; }
-    }
-    
-    public const int NameFieldNumber = 1;
-    private bool hasName;
-    private string name_ = "";
-    public bool HasName {
-      get { return hasName; }
-    }
-    public string Name {
-      get { return name_; }
-    }
-    
-    public const int InputTypeFieldNumber = 2;
-    private bool hasInputType;
-    private string inputType_ = "";
-    public bool HasInputType {
-      get { return hasInputType; }
-    }
-    public string InputType {
-      get { return inputType_; }
-    }
-    
-    public const int OutputTypeFieldNumber = 3;
-    private bool hasOutputType;
-    private string outputType_ = "";
-    public bool HasOutputType {
-      get { return hasOutputType; }
-    }
-    public string OutputType {
-      get { return outputType_; }
-    }
-    
-    public const int OptionsFieldNumber = 4;
-    private bool hasOptions;
-    private global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions options_;
-    public bool HasOptions {
-      get { return hasOptions; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions Options {
-      get { return options_ ?? global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions.DefaultInstance; }
-    }
-    
-    public override bool IsInitialized {
-      get {
-        if (HasOptions) {
-          if (!Options.IsInitialized) return false;
-        }
-        return true;
-      }
-    }
-    
-    public override void WriteTo(pb::ICodedOutputStream output) {
-      int size = SerializedSize;
-      string[] field_names = _methodDescriptorProtoFieldNames;
-      if (hasName) {
-        output.WriteString(1, field_names[1], Name);
-      }
-      if (hasInputType) {
-        output.WriteString(2, field_names[0], InputType);
-      }
-      if (hasOutputType) {
-        output.WriteString(3, field_names[3], OutputType);
-      }
-      if (hasOptions) {
-        output.WriteMessage(4, field_names[2], Options);
-      }
-      UnknownFields.WriteTo(output);
-    }
-    
-    private int memoizedSerializedSize = -1;
-    public override int SerializedSize {
-      get {
-        int size = memoizedSerializedSize;
-        if (size != -1) return size;
-        
-        size = 0;
-        if (hasName) {
-          size += pb::CodedOutputStream.ComputeStringSize(1, Name);
-        }
-        if (hasInputType) {
-          size += pb::CodedOutputStream.ComputeStringSize(2, InputType);
-        }
-        if (hasOutputType) {
-          size += pb::CodedOutputStream.ComputeStringSize(3, OutputType);
-        }
-        if (hasOptions) {
-          size += pb::CodedOutputStream.ComputeMessageSize(4, Options);
-        }
-        size += UnknownFields.SerializedSize;
-        memoizedSerializedSize = size;
-        return size;
-      }
-    }
-    
-    public static MethodDescriptorProto ParseFrom(pb::ByteString data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static MethodDescriptorProto ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static MethodDescriptorProto ParseFrom(byte[] data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static MethodDescriptorProto ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static MethodDescriptorProto ParseFrom(global::System.IO.Stream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static MethodDescriptorProto ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    public static MethodDescriptorProto ParseDelimitedFrom(global::System.IO.Stream input) {
-      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
-    }
-    public static MethodDescriptorProto ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
-    }
-    public static MethodDescriptorProto ParseFrom(pb::ICodedInputStream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static MethodDescriptorProto ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    private MethodDescriptorProto MakeReadOnly() {
-      return this;
-    }
-    
-    public static Builder CreateBuilder() { return new Builder(); }
-    public override Builder ToBuilder() { return CreateBuilder(this); }
-    public override Builder CreateBuilderForType() { return new Builder(); }
-    public static Builder CreateBuilder(MethodDescriptorProto prototype) {
-      return new Builder(prototype);
-    }
-    
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-    public sealed partial class Builder : pb::GeneratedBuilder<MethodDescriptorProto, Builder> {
-      protected override Builder ThisBuilder {
-        get { return this; }
-      }
-      public Builder() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-      }
-      internal Builder(MethodDescriptorProto cloneFrom) {
-        result = cloneFrom;
-        resultIsReadOnly = true;
-      }
-      
-      private bool resultIsReadOnly;
-      private MethodDescriptorProto result;
-      
-      private MethodDescriptorProto PrepareBuilder() {
-        if (resultIsReadOnly) {
-          MethodDescriptorProto original = result;
-          result = new MethodDescriptorProto();
-          resultIsReadOnly = false;
-          MergeFrom(original);
-        }
-        return result;
-      }
-      
-      public override bool IsInitialized {
-        get { return result.IsInitialized; }
-      }
-      
-      protected override MethodDescriptorProto MessageBeingBuilt {
-        get { return PrepareBuilder(); }
-      }
-      
-      public override Builder Clear() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-        return this;
-      }
-      
-      public override Builder Clone() {
-        if (resultIsReadOnly) {
-          return new Builder(result);
-        } else {
-          return new Builder().MergeFrom(result);
-        }
-      }
-      
-      public override pbd::MessageDescriptor DescriptorForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto.Descriptor; }
-      }
-      
-      public override MethodDescriptorProto DefaultInstanceForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto.DefaultInstance; }
-      }
-      
-      public override MethodDescriptorProto BuildPartial() {
-        if (resultIsReadOnly) {
-          return result;
-        }
-        resultIsReadOnly = true;
-        return result.MakeReadOnly();
-      }
-      
-      public override Builder MergeFrom(pb::IMessage other) {
-        if (other is MethodDescriptorProto) {
-          return MergeFrom((MethodDescriptorProto) other);
-        } else {
-          base.MergeFrom(other);
-          return this;
-        }
-      }
-      
-      public override Builder MergeFrom(MethodDescriptorProto other) {
-        if (other == global::Google.ProtocolBuffers.DescriptorProtos.MethodDescriptorProto.DefaultInstance) return this;
-        PrepareBuilder();
-        if (other.HasName) {
-          Name = other.Name;
-        }
-        if (other.HasInputType) {
-          InputType = other.InputType;
-        }
-        if (other.HasOutputType) {
-          OutputType = other.OutputType;
-        }
-        if (other.HasOptions) {
-          MergeOptions(other.Options);
-        }
-        this.MergeUnknownFields(other.UnknownFields);
-        return this;
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input) {
-        return MergeFrom(input, pb::ExtensionRegistry.Empty);
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-        PrepareBuilder();
-        pb::UnknownFieldSet.Builder unknownFields = null;
-        uint tag;
-        string field_name;
-        while (input.ReadTag(out tag, out field_name)) {
-          if(tag == 0 && field_name != null) {
-            int field_ordinal = global::System.Array.BinarySearch(_methodDescriptorProtoFieldNames, field_name, global::System.StringComparer.Ordinal);
-            if(field_ordinal >= 0)
-              tag = _methodDescriptorProtoFieldTags[field_ordinal];
-            else {
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              continue;
-            }
-          }
-          switch (tag) {
-            case 0: {
-              throw pb::InvalidProtocolBufferException.InvalidTag();
-            }
-            default: {
-              if (pb::WireFormat.IsEndGroupTag(tag)) {
-                if (unknownFields != null) {
-                  this.UnknownFields = unknownFields.Build();
-                }
-                return this;
-              }
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              break;
-            }
-            case 10: {
-              result.hasName = input.ReadString(ref result.name_);
-              break;
-            }
-            case 18: {
-              result.hasInputType = input.ReadString(ref result.inputType_);
-              break;
-            }
-            case 26: {
-              result.hasOutputType = input.ReadString(ref result.outputType_);
-              break;
-            }
-            case 34: {
-              global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions.Builder subBuilder = global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions.CreateBuilder();
-              if (result.hasOptions) {
-                subBuilder.MergeFrom(Options);
-              }
-              input.ReadMessage(subBuilder, extensionRegistry);
-              Options = subBuilder.BuildPartial();
-              break;
-            }
-          }
-        }
-        
-        if (unknownFields != null) {
-          this.UnknownFields = unknownFields.Build();
-        }
-        return this;
-      }
-      
-      
-      public bool HasName {
-        get { return result.hasName; }
-      }
-      public string Name {
-        get { return result.Name; }
-        set { SetName(value); }
-      }
-      public Builder SetName(string value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasName = true;
-        result.name_ = value;
-        return this;
-      }
-      public Builder ClearName() {
-        PrepareBuilder();
-        result.hasName = false;
-        result.name_ = "";
-        return this;
-      }
-      
-      public bool HasInputType {
-        get { return result.hasInputType; }
-      }
-      public string InputType {
-        get { return result.InputType; }
-        set { SetInputType(value); }
-      }
-      public Builder SetInputType(string value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasInputType = true;
-        result.inputType_ = value;
-        return this;
-      }
-      public Builder ClearInputType() {
-        PrepareBuilder();
-        result.hasInputType = false;
-        result.inputType_ = "";
-        return this;
-      }
-      
-      public bool HasOutputType {
-        get { return result.hasOutputType; }
-      }
-      public string OutputType {
-        get { return result.OutputType; }
-        set { SetOutputType(value); }
-      }
-      public Builder SetOutputType(string value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasOutputType = true;
-        result.outputType_ = value;
-        return this;
-      }
-      public Builder ClearOutputType() {
-        PrepareBuilder();
-        result.hasOutputType = false;
-        result.outputType_ = "";
-        return this;
-      }
-      
-      public bool HasOptions {
-       get { return result.hasOptions; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions Options {
-        get { return result.Options; }
-        set { SetOptions(value); }
-      }
-      public Builder SetOptions(global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasOptions = true;
-        result.options_ = value;
-        return this;
-      }
-      public Builder SetOptions(global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.hasOptions = true;
-        result.options_ = builderForValue.Build();
-        return this;
-      }
-      public Builder MergeOptions(global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        if (result.hasOptions &&
-            result.options_ != global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions.DefaultInstance) {
-            result.options_ = global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions.CreateBuilder(result.options_).MergeFrom(value).BuildPartial();
-        } else {
-          result.options_ = value;
-        }
-        result.hasOptions = true;
-        return this;
-      }
-      public Builder ClearOptions() {
-        PrepareBuilder();
-        result.hasOptions = false;
-        result.options_ = null;
-        return this;
-      }
-    }
-    static MethodDescriptorProto() {
-      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
-    }
-  }
-  
-  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-  public sealed partial class FileOptions : pb::ExtendableMessage<FileOptions, FileOptions.Builder> {
-    private FileOptions() { }
-    private static readonly FileOptions defaultInstance = new FileOptions().MakeReadOnly();
-    private static readonly string[] _fileOptionsFieldNames = new string[] { "cc_generic_services", "java_generate_equals_and_hash", "java_generic_services", "java_multiple_files", "java_outer_classname", "java_package", "optimize_for", "py_generic_services", "uninterpreted_option" };
-    private static readonly uint[] _fileOptionsFieldTags = new uint[] { 128, 160, 136, 80, 66, 10, 72, 144, 7994 };
-    public static FileOptions DefaultInstance {
-      get { return defaultInstance; }
-    }
-    
-    public override FileOptions DefaultInstanceForType {
-      get { return DefaultInstance; }
-    }
-    
-    protected override FileOptions ThisMessage {
-      get { return this; }
-    }
-    
-    public static pbd::MessageDescriptor Descriptor {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_FileOptions__Descriptor; }
-    }
-    
-    protected override pb::FieldAccess.FieldAccessorTable<FileOptions, FileOptions.Builder> InternalFieldAccessors {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_FileOptions__FieldAccessorTable; }
-    }
-    
-    #region Nested types
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-    public static class Types {
-      [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-      [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-      public enum OptimizeMode {
-        SPEED = 1,
-        CODE_SIZE = 2,
-        LITE_RUNTIME = 3,
-      }
-      
-    }
-    #endregion
-    
-    public const int JavaPackageFieldNumber = 1;
-    private bool hasJavaPackage;
-    private string javaPackage_ = "";
-    public bool HasJavaPackage {
-      get { return hasJavaPackage; }
-    }
-    public string JavaPackage {
-      get { return javaPackage_; }
-    }
-    
-    public const int JavaOuterClassnameFieldNumber = 8;
-    private bool hasJavaOuterClassname;
-    private string javaOuterClassname_ = "";
-    public bool HasJavaOuterClassname {
-      get { return hasJavaOuterClassname; }
-    }
-    public string JavaOuterClassname {
-      get { return javaOuterClassname_; }
-    }
-    
-    public const int JavaMultipleFilesFieldNumber = 10;
-    private bool hasJavaMultipleFiles;
-    private bool javaMultipleFiles_;
-    public bool HasJavaMultipleFiles {
-      get { return hasJavaMultipleFiles; }
-    }
-    public bool JavaMultipleFiles {
-      get { return javaMultipleFiles_; }
-    }
-    
-    public const int JavaGenerateEqualsAndHashFieldNumber = 20;
-    private bool hasJavaGenerateEqualsAndHash;
-    private bool javaGenerateEqualsAndHash_;
-    public bool HasJavaGenerateEqualsAndHash {
-      get { return hasJavaGenerateEqualsAndHash; }
-    }
-    public bool JavaGenerateEqualsAndHash {
-      get { return javaGenerateEqualsAndHash_; }
-    }
-    
-    public const int OptimizeForFieldNumber = 9;
-    private bool hasOptimizeFor;
-    private global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.Types.OptimizeMode optimizeFor_ = global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.Types.OptimizeMode.SPEED;
-    public bool HasOptimizeFor {
-      get { return hasOptimizeFor; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.Types.OptimizeMode OptimizeFor {
-      get { return optimizeFor_; }
-    }
-    
-    public const int CcGenericServicesFieldNumber = 16;
-    private bool hasCcGenericServices;
-    private bool ccGenericServices_;
-    public bool HasCcGenericServices {
-      get { return hasCcGenericServices; }
-    }
-    public bool CcGenericServices {
-      get { return ccGenericServices_; }
-    }
-    
-    public const int JavaGenericServicesFieldNumber = 17;
-    private bool hasJavaGenericServices;
-    private bool javaGenericServices_;
-    public bool HasJavaGenericServices {
-      get { return hasJavaGenericServices; }
-    }
-    public bool JavaGenericServices {
-      get { return javaGenericServices_; }
-    }
-    
-    public const int PyGenericServicesFieldNumber = 18;
-    private bool hasPyGenericServices;
-    private bool pyGenericServices_;
-    public bool HasPyGenericServices {
-      get { return hasPyGenericServices; }
-    }
-    public bool PyGenericServices {
-      get { return pyGenericServices_; }
-    }
-    
-    public const int UninterpretedOptionFieldNumber = 999;
-    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> uninterpretedOption_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption>();
-    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> UninterpretedOptionList {
-      get { return uninterpretedOption_; }
-    }
-    public int UninterpretedOptionCount {
-      get { return uninterpretedOption_.Count; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption GetUninterpretedOption(int index) {
-      return uninterpretedOption_[index];
-    }
-    
-    public override bool IsInitialized {
-      get {
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption element in UninterpretedOptionList) {
-          if (!element.IsInitialized) return false;
-        }
-        if (!ExtensionsAreInitialized) return false;
-        return true;
-      }
-    }
-    
-    public override void WriteTo(pb::ICodedOutputStream output) {
-      int size = SerializedSize;
-      string[] field_names = _fileOptionsFieldNames;
-      pb::ExtendableMessage<FileOptions, FileOptions.Builder>.ExtensionWriter extensionWriter = CreateExtensionWriter(this);
-      if (hasJavaPackage) {
-        output.WriteString(1, field_names[5], JavaPackage);
-      }
-      if (hasJavaOuterClassname) {
-        output.WriteString(8, field_names[4], JavaOuterClassname);
-      }
-      if (hasOptimizeFor) {
-        output.WriteEnum(9, field_names[6], (int) OptimizeFor, OptimizeFor);
-      }
-      if (hasJavaMultipleFiles) {
-        output.WriteBool(10, field_names[3], JavaMultipleFiles);
-      }
-      if (hasCcGenericServices) {
-        output.WriteBool(16, field_names[0], CcGenericServices);
-      }
-      if (hasJavaGenericServices) {
-        output.WriteBool(17, field_names[2], JavaGenericServices);
-      }
-      if (hasPyGenericServices) {
-        output.WriteBool(18, field_names[7], PyGenericServices);
-      }
-      if (hasJavaGenerateEqualsAndHash) {
-        output.WriteBool(20, field_names[1], JavaGenerateEqualsAndHash);
-      }
-      if (uninterpretedOption_.Count > 0) {
-        output.WriteMessageArray(999, field_names[8], uninterpretedOption_);
-      }
-      extensionWriter.WriteUntil(536870912, output);
-      UnknownFields.WriteTo(output);
-    }
-    
-    private int memoizedSerializedSize = -1;
-    public override int SerializedSize {
-      get {
-        int size = memoizedSerializedSize;
-        if (size != -1) return size;
-        
-        size = 0;
-        if (hasJavaPackage) {
-          size += pb::CodedOutputStream.ComputeStringSize(1, JavaPackage);
-        }
-        if (hasJavaOuterClassname) {
-          size += pb::CodedOutputStream.ComputeStringSize(8, JavaOuterClassname);
-        }
-        if (hasJavaMultipleFiles) {
-          size += pb::CodedOutputStream.ComputeBoolSize(10, JavaMultipleFiles);
-        }
-        if (hasJavaGenerateEqualsAndHash) {
-          size += pb::CodedOutputStream.ComputeBoolSize(20, JavaGenerateEqualsAndHash);
-        }
-        if (hasOptimizeFor) {
-          size += pb::CodedOutputStream.ComputeEnumSize(9, (int) OptimizeFor);
-        }
-        if (hasCcGenericServices) {
-          size += pb::CodedOutputStream.ComputeBoolSize(16, CcGenericServices);
-        }
-        if (hasJavaGenericServices) {
-          size += pb::CodedOutputStream.ComputeBoolSize(17, JavaGenericServices);
-        }
-        if (hasPyGenericServices) {
-          size += pb::CodedOutputStream.ComputeBoolSize(18, PyGenericServices);
-        }
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption element in UninterpretedOptionList) {
-          size += pb::CodedOutputStream.ComputeMessageSize(999, element);
-        }
-        size += ExtensionsSerializedSize;
-        size += UnknownFields.SerializedSize;
-        memoizedSerializedSize = size;
-        return size;
-      }
-    }
-    
-    public static FileOptions ParseFrom(pb::ByteString data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static FileOptions ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static FileOptions ParseFrom(byte[] data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static FileOptions ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static FileOptions ParseFrom(global::System.IO.Stream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static FileOptions ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    public static FileOptions ParseDelimitedFrom(global::System.IO.Stream input) {
-      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
-    }
-    public static FileOptions ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
-    }
-    public static FileOptions ParseFrom(pb::ICodedInputStream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static FileOptions ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    private FileOptions MakeReadOnly() {
-      uninterpretedOption_.MakeReadOnly();
-      return this;
-    }
-    
-    public static Builder CreateBuilder() { return new Builder(); }
-    public override Builder ToBuilder() { return CreateBuilder(this); }
-    public override Builder CreateBuilderForType() { return new Builder(); }
-    public static Builder CreateBuilder(FileOptions prototype) {
-      return new Builder(prototype);
-    }
-    
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-    public sealed partial class Builder : pb::ExtendableBuilder<FileOptions, Builder> {
-      protected override Builder ThisBuilder {
-        get { return this; }
-      }
-      public Builder() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-      }
-      internal Builder(FileOptions cloneFrom) {
-        result = cloneFrom;
-        resultIsReadOnly = true;
-      }
-      
-      private bool resultIsReadOnly;
-      private FileOptions result;
-      
-      private FileOptions PrepareBuilder() {
-        if (resultIsReadOnly) {
-          FileOptions original = result;
-          result = new FileOptions();
-          resultIsReadOnly = false;
-          MergeFrom(original);
-        }
-        return result;
-      }
-      
-      public override bool IsInitialized {
-        get { return result.IsInitialized; }
-      }
-      
-      protected override FileOptions MessageBeingBuilt {
-        get { return PrepareBuilder(); }
-      }
-      
-      public override Builder Clear() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-        return this;
-      }
-      
-      public override Builder Clone() {
-        if (resultIsReadOnly) {
-          return new Builder(result);
-        } else {
-          return new Builder().MergeFrom(result);
-        }
-      }
-      
-      public override pbd::MessageDescriptor DescriptorForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.Descriptor; }
-      }
-      
-      public override FileOptions DefaultInstanceForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.DefaultInstance; }
-      }
-      
-      public override FileOptions BuildPartial() {
-        if (resultIsReadOnly) {
-          return result;
-        }
-        resultIsReadOnly = true;
-        return result.MakeReadOnly();
-      }
-      
-      public override Builder MergeFrom(pb::IMessage other) {
-        if (other is FileOptions) {
-          return MergeFrom((FileOptions) other);
-        } else {
-          base.MergeFrom(other);
-          return this;
-        }
-      }
-      
-      public override Builder MergeFrom(FileOptions other) {
-        if (other == global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.DefaultInstance) return this;
-        PrepareBuilder();
-        if (other.HasJavaPackage) {
-          JavaPackage = other.JavaPackage;
-        }
-        if (other.HasJavaOuterClassname) {
-          JavaOuterClassname = other.JavaOuterClassname;
-        }
-        if (other.HasJavaMultipleFiles) {
-          JavaMultipleFiles = other.JavaMultipleFiles;
-        }
-        if (other.HasJavaGenerateEqualsAndHash) {
-          JavaGenerateEqualsAndHash = other.JavaGenerateEqualsAndHash;
-        }
-        if (other.HasOptimizeFor) {
-          OptimizeFor = other.OptimizeFor;
-        }
-        if (other.HasCcGenericServices) {
-          CcGenericServices = other.CcGenericServices;
-        }
-        if (other.HasJavaGenericServices) {
-          JavaGenericServices = other.JavaGenericServices;
-        }
-        if (other.HasPyGenericServices) {
-          PyGenericServices = other.PyGenericServices;
-        }
-        if (other.uninterpretedOption_.Count != 0) {
-          result.uninterpretedOption_.Add(other.uninterpretedOption_);
-        }
-          this.MergeExtensionFields(other);
-        this.MergeUnknownFields(other.UnknownFields);
-        return this;
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input) {
-        return MergeFrom(input, pb::ExtensionRegistry.Empty);
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-        PrepareBuilder();
-        pb::UnknownFieldSet.Builder unknownFields = null;
-        uint tag;
-        string field_name;
-        while (input.ReadTag(out tag, out field_name)) {
-          if(tag == 0 && field_name != null) {
-            int field_ordinal = global::System.Array.BinarySearch(_fileOptionsFieldNames, field_name, global::System.StringComparer.Ordinal);
-            if(field_ordinal >= 0)
-              tag = _fileOptionsFieldTags[field_ordinal];
-            else {
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              continue;
-            }
-          }
-          switch (tag) {
-            case 0: {
-              throw pb::InvalidProtocolBufferException.InvalidTag();
-            }
-            default: {
-              if (pb::WireFormat.IsEndGroupTag(tag)) {
-                if (unknownFields != null) {
-                  this.UnknownFields = unknownFields.Build();
-                }
-                return this;
-              }
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              break;
-            }
-            case 10: {
-              result.hasJavaPackage = input.ReadString(ref result.javaPackage_);
-              break;
-            }
-            case 66: {
-              result.hasJavaOuterClassname = input.ReadString(ref result.javaOuterClassname_);
-              break;
-            }
-            case 72: {
-              object unknown;
-              if(input.ReadEnum(ref result.optimizeFor_, out unknown)) {
-                result.hasOptimizeFor = true;
-              } else if(unknown is int) {
-                if (unknownFields == null) {
-                  unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-                }
-                unknownFields.MergeVarintField(9, (ulong)(int)unknown);
-              }
-              break;
-            }
-            case 80: {
-              result.hasJavaMultipleFiles = input.ReadBool(ref result.javaMultipleFiles_);
-              break;
-            }
-            case 128: {
-              result.hasCcGenericServices = input.ReadBool(ref result.ccGenericServices_);
-              break;
-            }
-            case 136: {
-              result.hasJavaGenericServices = input.ReadBool(ref result.javaGenericServices_);
-              break;
-            }
-            case 144: {
-              result.hasPyGenericServices = input.ReadBool(ref result.pyGenericServices_);
-              break;
-            }
-            case 160: {
-              result.hasJavaGenerateEqualsAndHash = input.ReadBool(ref result.javaGenerateEqualsAndHash_);
-              break;
-            }
-            case 7994: {
-              input.ReadMessageArray(tag, field_name, result.uninterpretedOption_, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.DefaultInstance, extensionRegistry);
-              break;
-            }
-          }
-        }
-        
-        if (unknownFields != null) {
-          this.UnknownFields = unknownFields.Build();
-        }
-        return this;
-      }
-      
-      
-      public bool HasJavaPackage {
-        get { return result.hasJavaPackage; }
-      }
-      public string JavaPackage {
-        get { return result.JavaPackage; }
-        set { SetJavaPackage(value); }
-      }
-      public Builder SetJavaPackage(string value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasJavaPackage = true;
-        result.javaPackage_ = value;
-        return this;
-      }
-      public Builder ClearJavaPackage() {
-        PrepareBuilder();
-        result.hasJavaPackage = false;
-        result.javaPackage_ = "";
-        return this;
-      }
-      
-      public bool HasJavaOuterClassname {
-        get { return result.hasJavaOuterClassname; }
-      }
-      public string JavaOuterClassname {
-        get { return result.JavaOuterClassname; }
-        set { SetJavaOuterClassname(value); }
-      }
-      public Builder SetJavaOuterClassname(string value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasJavaOuterClassname = true;
-        result.javaOuterClassname_ = value;
-        return this;
-      }
-      public Builder ClearJavaOuterClassname() {
-        PrepareBuilder();
-        result.hasJavaOuterClassname = false;
-        result.javaOuterClassname_ = "";
-        return this;
-      }
-      
-      public bool HasJavaMultipleFiles {
-        get { return result.hasJavaMultipleFiles; }
-      }
-      public bool JavaMultipleFiles {
-        get { return result.JavaMultipleFiles; }
-        set { SetJavaMultipleFiles(value); }
-      }
-      public Builder SetJavaMultipleFiles(bool value) {
-        PrepareBuilder();
-        result.hasJavaMultipleFiles = true;
-        result.javaMultipleFiles_ = value;
-        return this;
-      }
-      public Builder ClearJavaMultipleFiles() {
-        PrepareBuilder();
-        result.hasJavaMultipleFiles = false;
-        result.javaMultipleFiles_ = false;
-        return this;
-      }
-      
-      public bool HasJavaGenerateEqualsAndHash {
-        get { return result.hasJavaGenerateEqualsAndHash; }
-      }
-      public bool JavaGenerateEqualsAndHash {
-        get { return result.JavaGenerateEqualsAndHash; }
-        set { SetJavaGenerateEqualsAndHash(value); }
-      }
-      public Builder SetJavaGenerateEqualsAndHash(bool value) {
-        PrepareBuilder();
-        result.hasJavaGenerateEqualsAndHash = true;
-        result.javaGenerateEqualsAndHash_ = value;
-        return this;
-      }
-      public Builder ClearJavaGenerateEqualsAndHash() {
-        PrepareBuilder();
-        result.hasJavaGenerateEqualsAndHash = false;
-        result.javaGenerateEqualsAndHash_ = false;
-        return this;
-      }
-      
-      public bool HasOptimizeFor {
-       get { return result.hasOptimizeFor; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.Types.OptimizeMode OptimizeFor {
-        get { return result.OptimizeFor; }
-        set { SetOptimizeFor(value); }
-      }
-      public Builder SetOptimizeFor(global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.Types.OptimizeMode value) {
-        PrepareBuilder();
-        result.hasOptimizeFor = true;
-        result.optimizeFor_ = value;
-        return this;
-      }
-      public Builder ClearOptimizeFor() {
-        PrepareBuilder();
-        result.hasOptimizeFor = false;
-        result.optimizeFor_ = global::Google.ProtocolBuffers.DescriptorProtos.FileOptions.Types.OptimizeMode.SPEED;
-        return this;
-      }
-      
-      public bool HasCcGenericServices {
-        get { return result.hasCcGenericServices; }
-      }
-      public bool CcGenericServices {
-        get { return result.CcGenericServices; }
-        set { SetCcGenericServices(value); }
-      }
-      public Builder SetCcGenericServices(bool value) {
-        PrepareBuilder();
-        result.hasCcGenericServices = true;
-        result.ccGenericServices_ = value;
-        return this;
-      }
-      public Builder ClearCcGenericServices() {
-        PrepareBuilder();
-        result.hasCcGenericServices = false;
-        result.ccGenericServices_ = false;
-        return this;
-      }
-      
-      public bool HasJavaGenericServices {
-        get { return result.hasJavaGenericServices; }
-      }
-      public bool JavaGenericServices {
-        get { return result.JavaGenericServices; }
-        set { SetJavaGenericServices(value); }
-      }
-      public Builder SetJavaGenericServices(bool value) {
-        PrepareBuilder();
-        result.hasJavaGenericServices = true;
-        result.javaGenericServices_ = value;
-        return this;
-      }
-      public Builder ClearJavaGenericServices() {
-        PrepareBuilder();
-        result.hasJavaGenericServices = false;
-        result.javaGenericServices_ = false;
-        return this;
-      }
-      
-      public bool HasPyGenericServices {
-        get { return result.hasPyGenericServices; }
-      }
-      public bool PyGenericServices {
-        get { return result.PyGenericServices; }
-        set { SetPyGenericServices(value); }
-      }
-      public Builder SetPyGenericServices(bool value) {
-        PrepareBuilder();
-        result.hasPyGenericServices = true;
-        result.pyGenericServices_ = value;
-        return this;
-      }
-      public Builder ClearPyGenericServices() {
-        PrepareBuilder();
-        result.hasPyGenericServices = false;
-        result.pyGenericServices_ = false;
-        return this;
-      }
-      
-      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> UninterpretedOptionList {
-        get { return PrepareBuilder().uninterpretedOption_; }
-      }
-      public int UninterpretedOptionCount {
-        get { return result.UninterpretedOptionCount; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption GetUninterpretedOption(int index) {
-        return result.GetUninterpretedOption(index);
-      }
-      public Builder SetUninterpretedOption(int index, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.uninterpretedOption_[index] = value;
-        return this;
-      }
-      public Builder SetUninterpretedOption(int index, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.uninterpretedOption_[index] = builderForValue.Build();
-        return this;
-      }
-      public Builder AddUninterpretedOption(global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.uninterpretedOption_.Add(value);
-        return this;
-      }
-      public Builder AddUninterpretedOption(global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.uninterpretedOption_.Add(builderForValue.Build());
-        return this;
-      }
-      public Builder AddRangeUninterpretedOption(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> values) {
-        PrepareBuilder();
-        result.uninterpretedOption_.Add(values);
-        return this;
-      }
-      public Builder ClearUninterpretedOption() {
-        PrepareBuilder();
-        result.uninterpretedOption_.Clear();
-        return this;
-      }
-    }
-    static FileOptions() {
-      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
-    }
-  }
-  
-  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-  public sealed partial class MessageOptions : pb::ExtendableMessage<MessageOptions, MessageOptions.Builder> {
-    private MessageOptions() { }
-    private static readonly MessageOptions defaultInstance = new MessageOptions().MakeReadOnly();
-    private static readonly string[] _messageOptionsFieldNames = new string[] { "message_set_wire_format", "no_standard_descriptor_accessor", "uninterpreted_option" };
-    private static readonly uint[] _messageOptionsFieldTags = new uint[] { 8, 16, 7994 };
-    public static MessageOptions DefaultInstance {
-      get { return defaultInstance; }
-    }
-    
-    public override MessageOptions DefaultInstanceForType {
-      get { return DefaultInstance; }
-    }
-    
-    protected override MessageOptions ThisMessage {
-      get { return this; }
-    }
-    
-    public static pbd::MessageDescriptor Descriptor {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_MessageOptions__Descriptor; }
-    }
-    
-    protected override pb::FieldAccess.FieldAccessorTable<MessageOptions, MessageOptions.Builder> InternalFieldAccessors {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_MessageOptions__FieldAccessorTable; }
-    }
-    
-    public const int MessageSetWireFormatFieldNumber = 1;
-    private bool hasMessageSetWireFormat;
-    private bool messageSetWireFormat_;
-    public bool HasMessageSetWireFormat {
-      get { return hasMessageSetWireFormat; }
-    }
-    public bool MessageSetWireFormat {
-      get { return messageSetWireFormat_; }
-    }
-    
-    public const int NoStandardDescriptorAccessorFieldNumber = 2;
-    private bool hasNoStandardDescriptorAccessor;
-    private bool noStandardDescriptorAccessor_;
-    public bool HasNoStandardDescriptorAccessor {
-      get { return hasNoStandardDescriptorAccessor; }
-    }
-    public bool NoStandardDescriptorAccessor {
-      get { return noStandardDescriptorAccessor_; }
-    }
-    
-    public const int UninterpretedOptionFieldNumber = 999;
-    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> uninterpretedOption_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption>();
-    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> UninterpretedOptionList {
-      get { return uninterpretedOption_; }
-    }
-    public int UninterpretedOptionCount {
-      get { return uninterpretedOption_.Count; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption GetUninterpretedOption(int index) {
-      return uninterpretedOption_[index];
-    }
-    
-    public override bool IsInitialized {
-      get {
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption element in UninterpretedOptionList) {
-          if (!element.IsInitialized) return false;
-        }
-        if (!ExtensionsAreInitialized) return false;
-        return true;
-      }
-    }
-    
-    public override void WriteTo(pb::ICodedOutputStream output) {
-      int size = SerializedSize;
-      string[] field_names = _messageOptionsFieldNames;
-      pb::ExtendableMessage<MessageOptions, MessageOptions.Builder>.ExtensionWriter extensionWriter = CreateExtensionWriter(this);
-      if (hasMessageSetWireFormat) {
-        output.WriteBool(1, field_names[0], MessageSetWireFormat);
-      }
-      if (hasNoStandardDescriptorAccessor) {
-        output.WriteBool(2, field_names[1], NoStandardDescriptorAccessor);
-      }
-      if (uninterpretedOption_.Count > 0) {
-        output.WriteMessageArray(999, field_names[2], uninterpretedOption_);
-      }
-      extensionWriter.WriteUntil(536870912, output);
-      UnknownFields.WriteTo(output);
-    }
-    
-    private int memoizedSerializedSize = -1;
-    public override int SerializedSize {
-      get {
-        int size = memoizedSerializedSize;
-        if (size != -1) return size;
-        
-        size = 0;
-        if (hasMessageSetWireFormat) {
-          size += pb::CodedOutputStream.ComputeBoolSize(1, MessageSetWireFormat);
-        }
-        if (hasNoStandardDescriptorAccessor) {
-          size += pb::CodedOutputStream.ComputeBoolSize(2, NoStandardDescriptorAccessor);
-        }
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption element in UninterpretedOptionList) {
-          size += pb::CodedOutputStream.ComputeMessageSize(999, element);
-        }
-        size += ExtensionsSerializedSize;
-        size += UnknownFields.SerializedSize;
-        memoizedSerializedSize = size;
-        return size;
-      }
-    }
-    
-    public static MessageOptions ParseFrom(pb::ByteString data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static MessageOptions ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static MessageOptions ParseFrom(byte[] data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static MessageOptions ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static MessageOptions ParseFrom(global::System.IO.Stream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static MessageOptions ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    public static MessageOptions ParseDelimitedFrom(global::System.IO.Stream input) {
-      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
-    }
-    public static MessageOptions ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
-    }
-    public static MessageOptions ParseFrom(pb::ICodedInputStream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static MessageOptions ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    private MessageOptions MakeReadOnly() {
-      uninterpretedOption_.MakeReadOnly();
-      return this;
-    }
-    
-    public static Builder CreateBuilder() { return new Builder(); }
-    public override Builder ToBuilder() { return CreateBuilder(this); }
-    public override Builder CreateBuilderForType() { return new Builder(); }
-    public static Builder CreateBuilder(MessageOptions prototype) {
-      return new Builder(prototype);
-    }
-    
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-    public sealed partial class Builder : pb::ExtendableBuilder<MessageOptions, Builder> {
-      protected override Builder ThisBuilder {
-        get { return this; }
-      }
-      public Builder() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-      }
-      internal Builder(MessageOptions cloneFrom) {
-        result = cloneFrom;
-        resultIsReadOnly = true;
-      }
-      
-      private bool resultIsReadOnly;
-      private MessageOptions result;
-      
-      private MessageOptions PrepareBuilder() {
-        if (resultIsReadOnly) {
-          MessageOptions original = result;
-          result = new MessageOptions();
-          resultIsReadOnly = false;
-          MergeFrom(original);
-        }
-        return result;
-      }
-      
-      public override bool IsInitialized {
-        get { return result.IsInitialized; }
-      }
-      
-      protected override MessageOptions MessageBeingBuilt {
-        get { return PrepareBuilder(); }
-      }
-      
-      public override Builder Clear() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-        return this;
-      }
-      
-      public override Builder Clone() {
-        if (resultIsReadOnly) {
-          return new Builder(result);
-        } else {
-          return new Builder().MergeFrom(result);
-        }
-      }
-      
-      public override pbd::MessageDescriptor DescriptorForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions.Descriptor; }
-      }
-      
-      public override MessageOptions DefaultInstanceForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions.DefaultInstance; }
-      }
-      
-      public override MessageOptions BuildPartial() {
-        if (resultIsReadOnly) {
-          return result;
-        }
-        resultIsReadOnly = true;
-        return result.MakeReadOnly();
-      }
-      
-      public override Builder MergeFrom(pb::IMessage other) {
-        if (other is MessageOptions) {
-          return MergeFrom((MessageOptions) other);
-        } else {
-          base.MergeFrom(other);
-          return this;
-        }
-      }
-      
-      public override Builder MergeFrom(MessageOptions other) {
-        if (other == global::Google.ProtocolBuffers.DescriptorProtos.MessageOptions.DefaultInstance) return this;
-        PrepareBuilder();
-        if (other.HasMessageSetWireFormat) {
-          MessageSetWireFormat = other.MessageSetWireFormat;
-        }
-        if (other.HasNoStandardDescriptorAccessor) {
-          NoStandardDescriptorAccessor = other.NoStandardDescriptorAccessor;
-        }
-        if (other.uninterpretedOption_.Count != 0) {
-          result.uninterpretedOption_.Add(other.uninterpretedOption_);
-        }
-          this.MergeExtensionFields(other);
-        this.MergeUnknownFields(other.UnknownFields);
-        return this;
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input) {
-        return MergeFrom(input, pb::ExtensionRegistry.Empty);
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-        PrepareBuilder();
-        pb::UnknownFieldSet.Builder unknownFields = null;
-        uint tag;
-        string field_name;
-        while (input.ReadTag(out tag, out field_name)) {
-          if(tag == 0 && field_name != null) {
-            int field_ordinal = global::System.Array.BinarySearch(_messageOptionsFieldNames, field_name, global::System.StringComparer.Ordinal);
-            if(field_ordinal >= 0)
-              tag = _messageOptionsFieldTags[field_ordinal];
-            else {
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              continue;
-            }
-          }
-          switch (tag) {
-            case 0: {
-              throw pb::InvalidProtocolBufferException.InvalidTag();
-            }
-            default: {
-              if (pb::WireFormat.IsEndGroupTag(tag)) {
-                if (unknownFields != null) {
-                  this.UnknownFields = unknownFields.Build();
-                }
-                return this;
-              }
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              break;
-            }
-            case 8: {
-              result.hasMessageSetWireFormat = input.ReadBool(ref result.messageSetWireFormat_);
-              break;
-            }
-            case 16: {
-              result.hasNoStandardDescriptorAccessor = input.ReadBool(ref result.noStandardDescriptorAccessor_);
-              break;
-            }
-            case 7994: {
-              input.ReadMessageArray(tag, field_name, result.uninterpretedOption_, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.DefaultInstance, extensionRegistry);
-              break;
-            }
-          }
-        }
-        
-        if (unknownFields != null) {
-          this.UnknownFields = unknownFields.Build();
-        }
-        return this;
-      }
-      
-      
-      public bool HasMessageSetWireFormat {
-        get { return result.hasMessageSetWireFormat; }
-      }
-      public bool MessageSetWireFormat {
-        get { return result.MessageSetWireFormat; }
-        set { SetMessageSetWireFormat(value); }
-      }
-      public Builder SetMessageSetWireFormat(bool value) {
-        PrepareBuilder();
-        result.hasMessageSetWireFormat = true;
-        result.messageSetWireFormat_ = value;
-        return this;
-      }
-      public Builder ClearMessageSetWireFormat() {
-        PrepareBuilder();
-        result.hasMessageSetWireFormat = false;
-        result.messageSetWireFormat_ = false;
-        return this;
-      }
-      
-      public bool HasNoStandardDescriptorAccessor {
-        get { return result.hasNoStandardDescriptorAccessor; }
-      }
-      public bool NoStandardDescriptorAccessor {
-        get { return result.NoStandardDescriptorAccessor; }
-        set { SetNoStandardDescriptorAccessor(value); }
-      }
-      public Builder SetNoStandardDescriptorAccessor(bool value) {
-        PrepareBuilder();
-        result.hasNoStandardDescriptorAccessor = true;
-        result.noStandardDescriptorAccessor_ = value;
-        return this;
-      }
-      public Builder ClearNoStandardDescriptorAccessor() {
-        PrepareBuilder();
-        result.hasNoStandardDescriptorAccessor = false;
-        result.noStandardDescriptorAccessor_ = false;
-        return this;
-      }
-      
-      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> UninterpretedOptionList {
-        get { return PrepareBuilder().uninterpretedOption_; }
-      }
-      public int UninterpretedOptionCount {
-        get { return result.UninterpretedOptionCount; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption GetUninterpretedOption(int index) {
-        return result.GetUninterpretedOption(index);
-      }
-      public Builder SetUninterpretedOption(int index, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.uninterpretedOption_[index] = value;
-        return this;
-      }
-      public Builder SetUninterpretedOption(int index, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.uninterpretedOption_[index] = builderForValue.Build();
-        return this;
-      }
-      public Builder AddUninterpretedOption(global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.uninterpretedOption_.Add(value);
-        return this;
-      }
-      public Builder AddUninterpretedOption(global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.uninterpretedOption_.Add(builderForValue.Build());
-        return this;
-      }
-      public Builder AddRangeUninterpretedOption(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> values) {
-        PrepareBuilder();
-        result.uninterpretedOption_.Add(values);
-        return this;
-      }
-      public Builder ClearUninterpretedOption() {
-        PrepareBuilder();
-        result.uninterpretedOption_.Clear();
-        return this;
-      }
-    }
-    static MessageOptions() {
-      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
-    }
-  }
-  
-  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-  public sealed partial class FieldOptions : pb::ExtendableMessage<FieldOptions, FieldOptions.Builder> {
-    private FieldOptions() { }
-    private static readonly FieldOptions defaultInstance = new FieldOptions().MakeReadOnly();
-    private static readonly string[] _fieldOptionsFieldNames = new string[] { "ctype", "deprecated", "experimental_map_key", "packed", "uninterpreted_option" };
-    private static readonly uint[] _fieldOptionsFieldTags = new uint[] { 8, 24, 74, 16, 7994 };
-    public static FieldOptions DefaultInstance {
-      get { return defaultInstance; }
-    }
-    
-    public override FieldOptions DefaultInstanceForType {
-      get { return DefaultInstance; }
-    }
-    
-    protected override FieldOptions ThisMessage {
-      get { return this; }
-    }
-    
-    public static pbd::MessageDescriptor Descriptor {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_FieldOptions__Descriptor; }
-    }
-    
-    protected override pb::FieldAccess.FieldAccessorTable<FieldOptions, FieldOptions.Builder> InternalFieldAccessors {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_FieldOptions__FieldAccessorTable; }
-    }
-    
-    #region Nested types
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-    public static class Types {
-      [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-      [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-      public enum CType {
-        STRING = 0,
-        CORD = 1,
-        STRING_PIECE = 2,
-      }
-      
-    }
-    #endregion
-    
-    public const int CtypeFieldNumber = 1;
-    private bool hasCtype;
-    private global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.Types.CType ctype_ = global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.Types.CType.STRING;
-    public bool HasCtype {
-      get { return hasCtype; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.Types.CType Ctype {
-      get { return ctype_; }
-    }
-    
-    public const int PackedFieldNumber = 2;
-    private bool hasPacked;
-    private bool packed_;
-    public bool HasPacked {
-      get { return hasPacked; }
-    }
-    public bool Packed {
-      get { return packed_; }
-    }
-    
-    public const int DeprecatedFieldNumber = 3;
-    private bool hasDeprecated;
-    private bool deprecated_;
-    public bool HasDeprecated {
-      get { return hasDeprecated; }
-    }
-    public bool Deprecated {
-      get { return deprecated_; }
-    }
-    
-    public const int ExperimentalMapKeyFieldNumber = 9;
-    private bool hasExperimentalMapKey;
-    private string experimentalMapKey_ = "";
-    public bool HasExperimentalMapKey {
-      get { return hasExperimentalMapKey; }
-    }
-    public string ExperimentalMapKey {
-      get { return experimentalMapKey_; }
-    }
-    
-    public const int UninterpretedOptionFieldNumber = 999;
-    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> uninterpretedOption_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption>();
-    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> UninterpretedOptionList {
-      get { return uninterpretedOption_; }
-    }
-    public int UninterpretedOptionCount {
-      get { return uninterpretedOption_.Count; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption GetUninterpretedOption(int index) {
-      return uninterpretedOption_[index];
-    }
-    
-    public override bool IsInitialized {
-      get {
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption element in UninterpretedOptionList) {
-          if (!element.IsInitialized) return false;
-        }
-        if (!ExtensionsAreInitialized) return false;
-        return true;
-      }
-    }
-    
-    public override void WriteTo(pb::ICodedOutputStream output) {
-      int size = SerializedSize;
-      string[] field_names = _fieldOptionsFieldNames;
-      pb::ExtendableMessage<FieldOptions, FieldOptions.Builder>.ExtensionWriter extensionWriter = CreateExtensionWriter(this);
-      if (hasCtype) {
-        output.WriteEnum(1, field_names[0], (int) Ctype, Ctype);
-      }
-      if (hasPacked) {
-        output.WriteBool(2, field_names[3], Packed);
-      }
-      if (hasDeprecated) {
-        output.WriteBool(3, field_names[1], Deprecated);
-      }
-      if (hasExperimentalMapKey) {
-        output.WriteString(9, field_names[2], ExperimentalMapKey);
-      }
-      if (uninterpretedOption_.Count > 0) {
-        output.WriteMessageArray(999, field_names[4], uninterpretedOption_);
-      }
-      extensionWriter.WriteUntil(536870912, output);
-      UnknownFields.WriteTo(output);
-    }
-    
-    private int memoizedSerializedSize = -1;
-    public override int SerializedSize {
-      get {
-        int size = memoizedSerializedSize;
-        if (size != -1) return size;
-        
-        size = 0;
-        if (hasCtype) {
-          size += pb::CodedOutputStream.ComputeEnumSize(1, (int) Ctype);
-        }
-        if (hasPacked) {
-          size += pb::CodedOutputStream.ComputeBoolSize(2, Packed);
-        }
-        if (hasDeprecated) {
-          size += pb::CodedOutputStream.ComputeBoolSize(3, Deprecated);
-        }
-        if (hasExperimentalMapKey) {
-          size += pb::CodedOutputStream.ComputeStringSize(9, ExperimentalMapKey);
-        }
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption element in UninterpretedOptionList) {
-          size += pb::CodedOutputStream.ComputeMessageSize(999, element);
-        }
-        size += ExtensionsSerializedSize;
-        size += UnknownFields.SerializedSize;
-        memoizedSerializedSize = size;
-        return size;
-      }
-    }
-    
-    public static FieldOptions ParseFrom(pb::ByteString data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static FieldOptions ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static FieldOptions ParseFrom(byte[] data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static FieldOptions ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static FieldOptions ParseFrom(global::System.IO.Stream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static FieldOptions ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    public static FieldOptions ParseDelimitedFrom(global::System.IO.Stream input) {
-      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
-    }
-    public static FieldOptions ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
-    }
-    public static FieldOptions ParseFrom(pb::ICodedInputStream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static FieldOptions ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    private FieldOptions MakeReadOnly() {
-      uninterpretedOption_.MakeReadOnly();
-      return this;
-    }
-    
-    public static Builder CreateBuilder() { return new Builder(); }
-    public override Builder ToBuilder() { return CreateBuilder(this); }
-    public override Builder CreateBuilderForType() { return new Builder(); }
-    public static Builder CreateBuilder(FieldOptions prototype) {
-      return new Builder(prototype);
-    }
-    
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-    public sealed partial class Builder : pb::ExtendableBuilder<FieldOptions, Builder> {
-      protected override Builder ThisBuilder {
-        get { return this; }
-      }
-      public Builder() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-      }
-      internal Builder(FieldOptions cloneFrom) {
-        result = cloneFrom;
-        resultIsReadOnly = true;
-      }
-      
-      private bool resultIsReadOnly;
-      private FieldOptions result;
-      
-      private FieldOptions PrepareBuilder() {
-        if (resultIsReadOnly) {
-          FieldOptions original = result;
-          result = new FieldOptions();
-          resultIsReadOnly = false;
-          MergeFrom(original);
-        }
-        return result;
-      }
-      
-      public override bool IsInitialized {
-        get { return result.IsInitialized; }
-      }
-      
-      protected override FieldOptions MessageBeingBuilt {
-        get { return PrepareBuilder(); }
-      }
-      
-      public override Builder Clear() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-        return this;
-      }
-      
-      public override Builder Clone() {
-        if (resultIsReadOnly) {
-          return new Builder(result);
-        } else {
-          return new Builder().MergeFrom(result);
-        }
-      }
-      
-      public override pbd::MessageDescriptor DescriptorForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.Descriptor; }
-      }
-      
-      public override FieldOptions DefaultInstanceForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.DefaultInstance; }
-      }
-      
-      public override FieldOptions BuildPartial() {
-        if (resultIsReadOnly) {
-          return result;
-        }
-        resultIsReadOnly = true;
-        return result.MakeReadOnly();
-      }
-      
-      public override Builder MergeFrom(pb::IMessage other) {
-        if (other is FieldOptions) {
-          return MergeFrom((FieldOptions) other);
-        } else {
-          base.MergeFrom(other);
-          return this;
-        }
-      }
-      
-      public override Builder MergeFrom(FieldOptions other) {
-        if (other == global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.DefaultInstance) return this;
-        PrepareBuilder();
-        if (other.HasCtype) {
-          Ctype = other.Ctype;
-        }
-        if (other.HasPacked) {
-          Packed = other.Packed;
-        }
-        if (other.HasDeprecated) {
-          Deprecated = other.Deprecated;
-        }
-        if (other.HasExperimentalMapKey) {
-          ExperimentalMapKey = other.ExperimentalMapKey;
-        }
-        if (other.uninterpretedOption_.Count != 0) {
-          result.uninterpretedOption_.Add(other.uninterpretedOption_);
-        }
-          this.MergeExtensionFields(other);
-        this.MergeUnknownFields(other.UnknownFields);
-        return this;
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input) {
-        return MergeFrom(input, pb::ExtensionRegistry.Empty);
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-        PrepareBuilder();
-        pb::UnknownFieldSet.Builder unknownFields = null;
-        uint tag;
-        string field_name;
-        while (input.ReadTag(out tag, out field_name)) {
-          if(tag == 0 && field_name != null) {
-            int field_ordinal = global::System.Array.BinarySearch(_fieldOptionsFieldNames, field_name, global::System.StringComparer.Ordinal);
-            if(field_ordinal >= 0)
-              tag = _fieldOptionsFieldTags[field_ordinal];
-            else {
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              continue;
-            }
-          }
-          switch (tag) {
-            case 0: {
-              throw pb::InvalidProtocolBufferException.InvalidTag();
-            }
-            default: {
-              if (pb::WireFormat.IsEndGroupTag(tag)) {
-                if (unknownFields != null) {
-                  this.UnknownFields = unknownFields.Build();
-                }
-                return this;
-              }
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              break;
-            }
-            case 8: {
-              object unknown;
-              if(input.ReadEnum(ref result.ctype_, out unknown)) {
-                result.hasCtype = true;
-              } else if(unknown is int) {
-                if (unknownFields == null) {
-                  unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-                }
-                unknownFields.MergeVarintField(1, (ulong)(int)unknown);
-              }
-              break;
-            }
-            case 16: {
-              result.hasPacked = input.ReadBool(ref result.packed_);
-              break;
-            }
-            case 24: {
-              result.hasDeprecated = input.ReadBool(ref result.deprecated_);
-              break;
-            }
-            case 74: {
-              result.hasExperimentalMapKey = input.ReadString(ref result.experimentalMapKey_);
-              break;
-            }
-            case 7994: {
-              input.ReadMessageArray(tag, field_name, result.uninterpretedOption_, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.DefaultInstance, extensionRegistry);
-              break;
-            }
-          }
-        }
-        
-        if (unknownFields != null) {
-          this.UnknownFields = unknownFields.Build();
-        }
-        return this;
-      }
-      
-      
-      public bool HasCtype {
-       get { return result.hasCtype; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.Types.CType Ctype {
-        get { return result.Ctype; }
-        set { SetCtype(value); }
-      }
-      public Builder SetCtype(global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.Types.CType value) {
-        PrepareBuilder();
-        result.hasCtype = true;
-        result.ctype_ = value;
-        return this;
-      }
-      public Builder ClearCtype() {
-        PrepareBuilder();
-        result.hasCtype = false;
-        result.ctype_ = global::Google.ProtocolBuffers.DescriptorProtos.FieldOptions.Types.CType.STRING;
-        return this;
-      }
-      
-      public bool HasPacked {
-        get { return result.hasPacked; }
-      }
-      public bool Packed {
-        get { return result.Packed; }
-        set { SetPacked(value); }
-      }
-      public Builder SetPacked(bool value) {
-        PrepareBuilder();
-        result.hasPacked = true;
-        result.packed_ = value;
-        return this;
-      }
-      public Builder ClearPacked() {
-        PrepareBuilder();
-        result.hasPacked = false;
-        result.packed_ = false;
-        return this;
-      }
-      
-      public bool HasDeprecated {
-        get { return result.hasDeprecated; }
-      }
-      public bool Deprecated {
-        get { return result.Deprecated; }
-        set { SetDeprecated(value); }
-      }
-      public Builder SetDeprecated(bool value) {
-        PrepareBuilder();
-        result.hasDeprecated = true;
-        result.deprecated_ = value;
-        return this;
-      }
-      public Builder ClearDeprecated() {
-        PrepareBuilder();
-        result.hasDeprecated = false;
-        result.deprecated_ = false;
-        return this;
-      }
-      
-      public bool HasExperimentalMapKey {
-        get { return result.hasExperimentalMapKey; }
-      }
-      public string ExperimentalMapKey {
-        get { return result.ExperimentalMapKey; }
-        set { SetExperimentalMapKey(value); }
-      }
-      public Builder SetExperimentalMapKey(string value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasExperimentalMapKey = true;
-        result.experimentalMapKey_ = value;
-        return this;
-      }
-      public Builder ClearExperimentalMapKey() {
-        PrepareBuilder();
-        result.hasExperimentalMapKey = false;
-        result.experimentalMapKey_ = "";
-        return this;
-      }
-      
-      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> UninterpretedOptionList {
-        get { return PrepareBuilder().uninterpretedOption_; }
-      }
-      public int UninterpretedOptionCount {
-        get { return result.UninterpretedOptionCount; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption GetUninterpretedOption(int index) {
-        return result.GetUninterpretedOption(index);
-      }
-      public Builder SetUninterpretedOption(int index, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.uninterpretedOption_[index] = value;
-        return this;
-      }
-      public Builder SetUninterpretedOption(int index, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.uninterpretedOption_[index] = builderForValue.Build();
-        return this;
-      }
-      public Builder AddUninterpretedOption(global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.uninterpretedOption_.Add(value);
-        return this;
-      }
-      public Builder AddUninterpretedOption(global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.uninterpretedOption_.Add(builderForValue.Build());
-        return this;
-      }
-      public Builder AddRangeUninterpretedOption(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> values) {
-        PrepareBuilder();
-        result.uninterpretedOption_.Add(values);
-        return this;
-      }
-      public Builder ClearUninterpretedOption() {
-        PrepareBuilder();
-        result.uninterpretedOption_.Clear();
-        return this;
-      }
-    }
-    static FieldOptions() {
-      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
-    }
-  }
-  
-  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-  public sealed partial class EnumOptions : pb::ExtendableMessage<EnumOptions, EnumOptions.Builder> {
-    private EnumOptions() { }
-    private static readonly EnumOptions defaultInstance = new EnumOptions().MakeReadOnly();
-    private static readonly string[] _enumOptionsFieldNames = new string[] { "uninterpreted_option" };
-    private static readonly uint[] _enumOptionsFieldTags = new uint[] { 7994 };
-    public static EnumOptions DefaultInstance {
-      get { return defaultInstance; }
-    }
-    
-    public override EnumOptions DefaultInstanceForType {
-      get { return DefaultInstance; }
-    }
-    
-    protected override EnumOptions ThisMessage {
-      get { return this; }
-    }
-    
-    public static pbd::MessageDescriptor Descriptor {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_EnumOptions__Descriptor; }
-    }
-    
-    protected override pb::FieldAccess.FieldAccessorTable<EnumOptions, EnumOptions.Builder> InternalFieldAccessors {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_EnumOptions__FieldAccessorTable; }
-    }
-    
-    public const int UninterpretedOptionFieldNumber = 999;
-    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> uninterpretedOption_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption>();
-    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> UninterpretedOptionList {
-      get { return uninterpretedOption_; }
-    }
-    public int UninterpretedOptionCount {
-      get { return uninterpretedOption_.Count; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption GetUninterpretedOption(int index) {
-      return uninterpretedOption_[index];
-    }
-    
-    public override bool IsInitialized {
-      get {
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption element in UninterpretedOptionList) {
-          if (!element.IsInitialized) return false;
-        }
-        if (!ExtensionsAreInitialized) return false;
-        return true;
-      }
-    }
-    
-    public override void WriteTo(pb::ICodedOutputStream output) {
-      int size = SerializedSize;
-      string[] field_names = _enumOptionsFieldNames;
-      pb::ExtendableMessage<EnumOptions, EnumOptions.Builder>.ExtensionWriter extensionWriter = CreateExtensionWriter(this);
-      if (uninterpretedOption_.Count > 0) {
-        output.WriteMessageArray(999, field_names[0], uninterpretedOption_);
-      }
-      extensionWriter.WriteUntil(536870912, output);
-      UnknownFields.WriteTo(output);
-    }
-    
-    private int memoizedSerializedSize = -1;
-    public override int SerializedSize {
-      get {
-        int size = memoizedSerializedSize;
-        if (size != -1) return size;
-        
-        size = 0;
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption element in UninterpretedOptionList) {
-          size += pb::CodedOutputStream.ComputeMessageSize(999, element);
-        }
-        size += ExtensionsSerializedSize;
-        size += UnknownFields.SerializedSize;
-        memoizedSerializedSize = size;
-        return size;
-      }
-    }
-    
-    public static EnumOptions ParseFrom(pb::ByteString data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static EnumOptions ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static EnumOptions ParseFrom(byte[] data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static EnumOptions ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static EnumOptions ParseFrom(global::System.IO.Stream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static EnumOptions ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    public static EnumOptions ParseDelimitedFrom(global::System.IO.Stream input) {
-      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
-    }
-    public static EnumOptions ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
-    }
-    public static EnumOptions ParseFrom(pb::ICodedInputStream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static EnumOptions ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    private EnumOptions MakeReadOnly() {
-      uninterpretedOption_.MakeReadOnly();
-      return this;
-    }
-    
-    public static Builder CreateBuilder() { return new Builder(); }
-    public override Builder ToBuilder() { return CreateBuilder(this); }
-    public override Builder CreateBuilderForType() { return new Builder(); }
-    public static Builder CreateBuilder(EnumOptions prototype) {
-      return new Builder(prototype);
-    }
-    
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-    public sealed partial class Builder : pb::ExtendableBuilder<EnumOptions, Builder> {
-      protected override Builder ThisBuilder {
-        get { return this; }
-      }
-      public Builder() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-      }
-      internal Builder(EnumOptions cloneFrom) {
-        result = cloneFrom;
-        resultIsReadOnly = true;
-      }
-      
-      private bool resultIsReadOnly;
-      private EnumOptions result;
-      
-      private EnumOptions PrepareBuilder() {
-        if (resultIsReadOnly) {
-          EnumOptions original = result;
-          result = new EnumOptions();
-          resultIsReadOnly = false;
-          MergeFrom(original);
-        }
-        return result;
-      }
-      
-      public override bool IsInitialized {
-        get { return result.IsInitialized; }
-      }
-      
-      protected override EnumOptions MessageBeingBuilt {
-        get { return PrepareBuilder(); }
-      }
-      
-      public override Builder Clear() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-        return this;
-      }
-      
-      public override Builder Clone() {
-        if (resultIsReadOnly) {
-          return new Builder(result);
-        } else {
-          return new Builder().MergeFrom(result);
-        }
-      }
-      
-      public override pbd::MessageDescriptor DescriptorForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions.Descriptor; }
-      }
-      
-      public override EnumOptions DefaultInstanceForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions.DefaultInstance; }
-      }
-      
-      public override EnumOptions BuildPartial() {
-        if (resultIsReadOnly) {
-          return result;
-        }
-        resultIsReadOnly = true;
-        return result.MakeReadOnly();
-      }
-      
-      public override Builder MergeFrom(pb::IMessage other) {
-        if (other is EnumOptions) {
-          return MergeFrom((EnumOptions) other);
-        } else {
-          base.MergeFrom(other);
-          return this;
-        }
-      }
-      
-      public override Builder MergeFrom(EnumOptions other) {
-        if (other == global::Google.ProtocolBuffers.DescriptorProtos.EnumOptions.DefaultInstance) return this;
-        PrepareBuilder();
-        if (other.uninterpretedOption_.Count != 0) {
-          result.uninterpretedOption_.Add(other.uninterpretedOption_);
-        }
-          this.MergeExtensionFields(other);
-        this.MergeUnknownFields(other.UnknownFields);
-        return this;
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input) {
-        return MergeFrom(input, pb::ExtensionRegistry.Empty);
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-        PrepareBuilder();
-        pb::UnknownFieldSet.Builder unknownFields = null;
-        uint tag;
-        string field_name;
-        while (input.ReadTag(out tag, out field_name)) {
-          if(tag == 0 && field_name != null) {
-            int field_ordinal = global::System.Array.BinarySearch(_enumOptionsFieldNames, field_name, global::System.StringComparer.Ordinal);
-            if(field_ordinal >= 0)
-              tag = _enumOptionsFieldTags[field_ordinal];
-            else {
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              continue;
-            }
-          }
-          switch (tag) {
-            case 0: {
-              throw pb::InvalidProtocolBufferException.InvalidTag();
-            }
-            default: {
-              if (pb::WireFormat.IsEndGroupTag(tag)) {
-                if (unknownFields != null) {
-                  this.UnknownFields = unknownFields.Build();
-                }
-                return this;
-              }
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              break;
-            }
-            case 7994: {
-              input.ReadMessageArray(tag, field_name, result.uninterpretedOption_, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.DefaultInstance, extensionRegistry);
-              break;
-            }
-          }
-        }
-        
-        if (unknownFields != null) {
-          this.UnknownFields = unknownFields.Build();
-        }
-        return this;
-      }
-      
-      
-      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> UninterpretedOptionList {
-        get { return PrepareBuilder().uninterpretedOption_; }
-      }
-      public int UninterpretedOptionCount {
-        get { return result.UninterpretedOptionCount; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption GetUninterpretedOption(int index) {
-        return result.GetUninterpretedOption(index);
-      }
-      public Builder SetUninterpretedOption(int index, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.uninterpretedOption_[index] = value;
-        return this;
-      }
-      public Builder SetUninterpretedOption(int index, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.uninterpretedOption_[index] = builderForValue.Build();
-        return this;
-      }
-      public Builder AddUninterpretedOption(global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.uninterpretedOption_.Add(value);
-        return this;
-      }
-      public Builder AddUninterpretedOption(global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.uninterpretedOption_.Add(builderForValue.Build());
-        return this;
-      }
-      public Builder AddRangeUninterpretedOption(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> values) {
-        PrepareBuilder();
-        result.uninterpretedOption_.Add(values);
-        return this;
-      }
-      public Builder ClearUninterpretedOption() {
-        PrepareBuilder();
-        result.uninterpretedOption_.Clear();
-        return this;
-      }
-    }
-    static EnumOptions() {
-      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
-    }
-  }
-  
-  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-  public sealed partial class EnumValueOptions : pb::ExtendableMessage<EnumValueOptions, EnumValueOptions.Builder> {
-    private EnumValueOptions() { }
-    private static readonly EnumValueOptions defaultInstance = new EnumValueOptions().MakeReadOnly();
-    private static readonly string[] _enumValueOptionsFieldNames = new string[] { "uninterpreted_option" };
-    private static readonly uint[] _enumValueOptionsFieldTags = new uint[] { 7994 };
-    public static EnumValueOptions DefaultInstance {
-      get { return defaultInstance; }
-    }
-    
-    public override EnumValueOptions DefaultInstanceForType {
-      get { return DefaultInstance; }
-    }
-    
-    protected override EnumValueOptions ThisMessage {
-      get { return this; }
-    }
-    
-    public static pbd::MessageDescriptor Descriptor {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_EnumValueOptions__Descriptor; }
-    }
-    
-    protected override pb::FieldAccess.FieldAccessorTable<EnumValueOptions, EnumValueOptions.Builder> InternalFieldAccessors {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_EnumValueOptions__FieldAccessorTable; }
-    }
-    
-    public const int UninterpretedOptionFieldNumber = 999;
-    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> uninterpretedOption_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption>();
-    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> UninterpretedOptionList {
-      get { return uninterpretedOption_; }
-    }
-    public int UninterpretedOptionCount {
-      get { return uninterpretedOption_.Count; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption GetUninterpretedOption(int index) {
-      return uninterpretedOption_[index];
-    }
-    
-    public override bool IsInitialized {
-      get {
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption element in UninterpretedOptionList) {
-          if (!element.IsInitialized) return false;
-        }
-        if (!ExtensionsAreInitialized) return false;
-        return true;
-      }
-    }
-    
-    public override void WriteTo(pb::ICodedOutputStream output) {
-      int size = SerializedSize;
-      string[] field_names = _enumValueOptionsFieldNames;
-      pb::ExtendableMessage<EnumValueOptions, EnumValueOptions.Builder>.ExtensionWriter extensionWriter = CreateExtensionWriter(this);
-      if (uninterpretedOption_.Count > 0) {
-        output.WriteMessageArray(999, field_names[0], uninterpretedOption_);
-      }
-      extensionWriter.WriteUntil(536870912, output);
-      UnknownFields.WriteTo(output);
-    }
-    
-    private int memoizedSerializedSize = -1;
-    public override int SerializedSize {
-      get {
-        int size = memoizedSerializedSize;
-        if (size != -1) return size;
-        
-        size = 0;
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption element in UninterpretedOptionList) {
-          size += pb::CodedOutputStream.ComputeMessageSize(999, element);
-        }
-        size += ExtensionsSerializedSize;
-        size += UnknownFields.SerializedSize;
-        memoizedSerializedSize = size;
-        return size;
-      }
-    }
-    
-    public static EnumValueOptions ParseFrom(pb::ByteString data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static EnumValueOptions ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static EnumValueOptions ParseFrom(byte[] data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static EnumValueOptions ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static EnumValueOptions ParseFrom(global::System.IO.Stream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static EnumValueOptions ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    public static EnumValueOptions ParseDelimitedFrom(global::System.IO.Stream input) {
-      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
-    }
-    public static EnumValueOptions ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
-    }
-    public static EnumValueOptions ParseFrom(pb::ICodedInputStream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static EnumValueOptions ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    private EnumValueOptions MakeReadOnly() {
-      uninterpretedOption_.MakeReadOnly();
-      return this;
-    }
-    
-    public static Builder CreateBuilder() { return new Builder(); }
-    public override Builder ToBuilder() { return CreateBuilder(this); }
-    public override Builder CreateBuilderForType() { return new Builder(); }
-    public static Builder CreateBuilder(EnumValueOptions prototype) {
-      return new Builder(prototype);
-    }
-    
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-    public sealed partial class Builder : pb::ExtendableBuilder<EnumValueOptions, Builder> {
-      protected override Builder ThisBuilder {
-        get { return this; }
-      }
-      public Builder() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-      }
-      internal Builder(EnumValueOptions cloneFrom) {
-        result = cloneFrom;
-        resultIsReadOnly = true;
-      }
-      
-      private bool resultIsReadOnly;
-      private EnumValueOptions result;
-      
-      private EnumValueOptions PrepareBuilder() {
-        if (resultIsReadOnly) {
-          EnumValueOptions original = result;
-          result = new EnumValueOptions();
-          resultIsReadOnly = false;
-          MergeFrom(original);
-        }
-        return result;
-      }
-      
-      public override bool IsInitialized {
-        get { return result.IsInitialized; }
-      }
-      
-      protected override EnumValueOptions MessageBeingBuilt {
-        get { return PrepareBuilder(); }
-      }
-      
-      public override Builder Clear() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-        return this;
-      }
-      
-      public override Builder Clone() {
-        if (resultIsReadOnly) {
-          return new Builder(result);
-        } else {
-          return new Builder().MergeFrom(result);
-        }
-      }
-      
-      public override pbd::MessageDescriptor DescriptorForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions.Descriptor; }
-      }
-      
-      public override EnumValueOptions DefaultInstanceForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions.DefaultInstance; }
-      }
-      
-      public override EnumValueOptions BuildPartial() {
-        if (resultIsReadOnly) {
-          return result;
-        }
-        resultIsReadOnly = true;
-        return result.MakeReadOnly();
-      }
-      
-      public override Builder MergeFrom(pb::IMessage other) {
-        if (other is EnumValueOptions) {
-          return MergeFrom((EnumValueOptions) other);
-        } else {
-          base.MergeFrom(other);
-          return this;
-        }
-      }
-      
-      public override Builder MergeFrom(EnumValueOptions other) {
-        if (other == global::Google.ProtocolBuffers.DescriptorProtos.EnumValueOptions.DefaultInstance) return this;
-        PrepareBuilder();
-        if (other.uninterpretedOption_.Count != 0) {
-          result.uninterpretedOption_.Add(other.uninterpretedOption_);
-        }
-          this.MergeExtensionFields(other);
-        this.MergeUnknownFields(other.UnknownFields);
-        return this;
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input) {
-        return MergeFrom(input, pb::ExtensionRegistry.Empty);
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-        PrepareBuilder();
-        pb::UnknownFieldSet.Builder unknownFields = null;
-        uint tag;
-        string field_name;
-        while (input.ReadTag(out tag, out field_name)) {
-          if(tag == 0 && field_name != null) {
-            int field_ordinal = global::System.Array.BinarySearch(_enumValueOptionsFieldNames, field_name, global::System.StringComparer.Ordinal);
-            if(field_ordinal >= 0)
-              tag = _enumValueOptionsFieldTags[field_ordinal];
-            else {
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              continue;
-            }
-          }
-          switch (tag) {
-            case 0: {
-              throw pb::InvalidProtocolBufferException.InvalidTag();
-            }
-            default: {
-              if (pb::WireFormat.IsEndGroupTag(tag)) {
-                if (unknownFields != null) {
-                  this.UnknownFields = unknownFields.Build();
-                }
-                return this;
-              }
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              break;
-            }
-            case 7994: {
-              input.ReadMessageArray(tag, field_name, result.uninterpretedOption_, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.DefaultInstance, extensionRegistry);
-              break;
-            }
-          }
-        }
-        
-        if (unknownFields != null) {
-          this.UnknownFields = unknownFields.Build();
-        }
-        return this;
-      }
-      
-      
-      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> UninterpretedOptionList {
-        get { return PrepareBuilder().uninterpretedOption_; }
-      }
-      public int UninterpretedOptionCount {
-        get { return result.UninterpretedOptionCount; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption GetUninterpretedOption(int index) {
-        return result.GetUninterpretedOption(index);
-      }
-      public Builder SetUninterpretedOption(int index, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.uninterpretedOption_[index] = value;
-        return this;
-      }
-      public Builder SetUninterpretedOption(int index, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.uninterpretedOption_[index] = builderForValue.Build();
-        return this;
-      }
-      public Builder AddUninterpretedOption(global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.uninterpretedOption_.Add(value);
-        return this;
-      }
-      public Builder AddUninterpretedOption(global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.uninterpretedOption_.Add(builderForValue.Build());
-        return this;
-      }
-      public Builder AddRangeUninterpretedOption(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> values) {
-        PrepareBuilder();
-        result.uninterpretedOption_.Add(values);
-        return this;
-      }
-      public Builder ClearUninterpretedOption() {
-        PrepareBuilder();
-        result.uninterpretedOption_.Clear();
-        return this;
-      }
-    }
-    static EnumValueOptions() {
-      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
-    }
-  }
-  
-  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-  public sealed partial class ServiceOptions : pb::ExtendableMessage<ServiceOptions, ServiceOptions.Builder> {
-    private ServiceOptions() { }
-    private static readonly ServiceOptions defaultInstance = new ServiceOptions().MakeReadOnly();
-    private static readonly string[] _serviceOptionsFieldNames = new string[] { "uninterpreted_option" };
-    private static readonly uint[] _serviceOptionsFieldTags = new uint[] { 7994 };
-    public static ServiceOptions DefaultInstance {
-      get { return defaultInstance; }
-    }
-    
-    public override ServiceOptions DefaultInstanceForType {
-      get { return DefaultInstance; }
-    }
-    
-    protected override ServiceOptions ThisMessage {
-      get { return this; }
-    }
-    
-    public static pbd::MessageDescriptor Descriptor {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_ServiceOptions__Descriptor; }
-    }
-    
-    protected override pb::FieldAccess.FieldAccessorTable<ServiceOptions, ServiceOptions.Builder> InternalFieldAccessors {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_ServiceOptions__FieldAccessorTable; }
-    }
-    
-    public const int UninterpretedOptionFieldNumber = 999;
-    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> uninterpretedOption_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption>();
-    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> UninterpretedOptionList {
-      get { return uninterpretedOption_; }
-    }
-    public int UninterpretedOptionCount {
-      get { return uninterpretedOption_.Count; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption GetUninterpretedOption(int index) {
-      return uninterpretedOption_[index];
-    }
-    
-    public override bool IsInitialized {
-      get {
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption element in UninterpretedOptionList) {
-          if (!element.IsInitialized) return false;
-        }
-        if (!ExtensionsAreInitialized) return false;
-        return true;
-      }
-    }
-    
-    public override void WriteTo(pb::ICodedOutputStream output) {
-      int size = SerializedSize;
-      string[] field_names = _serviceOptionsFieldNames;
-      pb::ExtendableMessage<ServiceOptions, ServiceOptions.Builder>.ExtensionWriter extensionWriter = CreateExtensionWriter(this);
-      if (uninterpretedOption_.Count > 0) {
-        output.WriteMessageArray(999, field_names[0], uninterpretedOption_);
-      }
-      extensionWriter.WriteUntil(536870912, output);
-      UnknownFields.WriteTo(output);
-    }
-    
-    private int memoizedSerializedSize = -1;
-    public override int SerializedSize {
-      get {
-        int size = memoizedSerializedSize;
-        if (size != -1) return size;
-        
-        size = 0;
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption element in UninterpretedOptionList) {
-          size += pb::CodedOutputStream.ComputeMessageSize(999, element);
-        }
-        size += ExtensionsSerializedSize;
-        size += UnknownFields.SerializedSize;
-        memoizedSerializedSize = size;
-        return size;
-      }
-    }
-    
-    public static ServiceOptions ParseFrom(pb::ByteString data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static ServiceOptions ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static ServiceOptions ParseFrom(byte[] data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static ServiceOptions ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static ServiceOptions ParseFrom(global::System.IO.Stream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static ServiceOptions ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    public static ServiceOptions ParseDelimitedFrom(global::System.IO.Stream input) {
-      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
-    }
-    public static ServiceOptions ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
-    }
-    public static ServiceOptions ParseFrom(pb::ICodedInputStream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static ServiceOptions ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    private ServiceOptions MakeReadOnly() {
-      uninterpretedOption_.MakeReadOnly();
-      return this;
-    }
-    
-    public static Builder CreateBuilder() { return new Builder(); }
-    public override Builder ToBuilder() { return CreateBuilder(this); }
-    public override Builder CreateBuilderForType() { return new Builder(); }
-    public static Builder CreateBuilder(ServiceOptions prototype) {
-      return new Builder(prototype);
-    }
-    
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-    public sealed partial class Builder : pb::ExtendableBuilder<ServiceOptions, Builder> {
-      protected override Builder ThisBuilder {
-        get { return this; }
-      }
-      public Builder() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-      }
-      internal Builder(ServiceOptions cloneFrom) {
-        result = cloneFrom;
-        resultIsReadOnly = true;
-      }
-      
-      private bool resultIsReadOnly;
-      private ServiceOptions result;
-      
-      private ServiceOptions PrepareBuilder() {
-        if (resultIsReadOnly) {
-          ServiceOptions original = result;
-          result = new ServiceOptions();
-          resultIsReadOnly = false;
-          MergeFrom(original);
-        }
-        return result;
-      }
-      
-      public override bool IsInitialized {
-        get { return result.IsInitialized; }
-      }
-      
-      protected override ServiceOptions MessageBeingBuilt {
-        get { return PrepareBuilder(); }
-      }
-      
-      public override Builder Clear() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-        return this;
-      }
-      
-      public override Builder Clone() {
-        if (resultIsReadOnly) {
-          return new Builder(result);
-        } else {
-          return new Builder().MergeFrom(result);
-        }
-      }
-      
-      public override pbd::MessageDescriptor DescriptorForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions.Descriptor; }
-      }
-      
-      public override ServiceOptions DefaultInstanceForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions.DefaultInstance; }
-      }
-      
-      public override ServiceOptions BuildPartial() {
-        if (resultIsReadOnly) {
-          return result;
-        }
-        resultIsReadOnly = true;
-        return result.MakeReadOnly();
-      }
-      
-      public override Builder MergeFrom(pb::IMessage other) {
-        if (other is ServiceOptions) {
-          return MergeFrom((ServiceOptions) other);
-        } else {
-          base.MergeFrom(other);
-          return this;
-        }
-      }
-      
-      public override Builder MergeFrom(ServiceOptions other) {
-        if (other == global::Google.ProtocolBuffers.DescriptorProtos.ServiceOptions.DefaultInstance) return this;
-        PrepareBuilder();
-        if (other.uninterpretedOption_.Count != 0) {
-          result.uninterpretedOption_.Add(other.uninterpretedOption_);
-        }
-          this.MergeExtensionFields(other);
-        this.MergeUnknownFields(other.UnknownFields);
-        return this;
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input) {
-        return MergeFrom(input, pb::ExtensionRegistry.Empty);
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-        PrepareBuilder();
-        pb::UnknownFieldSet.Builder unknownFields = null;
-        uint tag;
-        string field_name;
-        while (input.ReadTag(out tag, out field_name)) {
-          if(tag == 0 && field_name != null) {
-            int field_ordinal = global::System.Array.BinarySearch(_serviceOptionsFieldNames, field_name, global::System.StringComparer.Ordinal);
-            if(field_ordinal >= 0)
-              tag = _serviceOptionsFieldTags[field_ordinal];
-            else {
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              continue;
-            }
-          }
-          switch (tag) {
-            case 0: {
-              throw pb::InvalidProtocolBufferException.InvalidTag();
-            }
-            default: {
-              if (pb::WireFormat.IsEndGroupTag(tag)) {
-                if (unknownFields != null) {
-                  this.UnknownFields = unknownFields.Build();
-                }
-                return this;
-              }
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              break;
-            }
-            case 7994: {
-              input.ReadMessageArray(tag, field_name, result.uninterpretedOption_, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.DefaultInstance, extensionRegistry);
-              break;
-            }
-          }
-        }
-        
-        if (unknownFields != null) {
-          this.UnknownFields = unknownFields.Build();
-        }
-        return this;
-      }
-      
-      
-      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> UninterpretedOptionList {
-        get { return PrepareBuilder().uninterpretedOption_; }
-      }
-      public int UninterpretedOptionCount {
-        get { return result.UninterpretedOptionCount; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption GetUninterpretedOption(int index) {
-        return result.GetUninterpretedOption(index);
-      }
-      public Builder SetUninterpretedOption(int index, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.uninterpretedOption_[index] = value;
-        return this;
-      }
-      public Builder SetUninterpretedOption(int index, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.uninterpretedOption_[index] = builderForValue.Build();
-        return this;
-      }
-      public Builder AddUninterpretedOption(global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.uninterpretedOption_.Add(value);
-        return this;
-      }
-      public Builder AddUninterpretedOption(global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.uninterpretedOption_.Add(builderForValue.Build());
-        return this;
-      }
-      public Builder AddRangeUninterpretedOption(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> values) {
-        PrepareBuilder();
-        result.uninterpretedOption_.Add(values);
-        return this;
-      }
-      public Builder ClearUninterpretedOption() {
-        PrepareBuilder();
-        result.uninterpretedOption_.Clear();
-        return this;
-      }
-    }
-    static ServiceOptions() {
-      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
-    }
-  }
-  
-  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-  public sealed partial class MethodOptions : pb::ExtendableMessage<MethodOptions, MethodOptions.Builder> {
-    private MethodOptions() { }
-    private static readonly MethodOptions defaultInstance = new MethodOptions().MakeReadOnly();
-    private static readonly string[] _methodOptionsFieldNames = new string[] { "uninterpreted_option" };
-    private static readonly uint[] _methodOptionsFieldTags = new uint[] { 7994 };
-    public static MethodOptions DefaultInstance {
-      get { return defaultInstance; }
-    }
-    
-    public override MethodOptions DefaultInstanceForType {
-      get { return DefaultInstance; }
-    }
-    
-    protected override MethodOptions ThisMessage {
-      get { return this; }
-    }
-    
-    public static pbd::MessageDescriptor Descriptor {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_MethodOptions__Descriptor; }
-    }
-    
-    protected override pb::FieldAccess.FieldAccessorTable<MethodOptions, MethodOptions.Builder> InternalFieldAccessors {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_MethodOptions__FieldAccessorTable; }
-    }
-    
-    public const int UninterpretedOptionFieldNumber = 999;
-    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> uninterpretedOption_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption>();
-    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> UninterpretedOptionList {
-      get { return uninterpretedOption_; }
-    }
-    public int UninterpretedOptionCount {
-      get { return uninterpretedOption_.Count; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption GetUninterpretedOption(int index) {
-      return uninterpretedOption_[index];
-    }
-    
-    public override bool IsInitialized {
-      get {
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption element in UninterpretedOptionList) {
-          if (!element.IsInitialized) return false;
-        }
-        if (!ExtensionsAreInitialized) return false;
-        return true;
-      }
-    }
-    
-    public override void WriteTo(pb::ICodedOutputStream output) {
-      int size = SerializedSize;
-      string[] field_names = _methodOptionsFieldNames;
-      pb::ExtendableMessage<MethodOptions, MethodOptions.Builder>.ExtensionWriter extensionWriter = CreateExtensionWriter(this);
-      if (uninterpretedOption_.Count > 0) {
-        output.WriteMessageArray(999, field_names[0], uninterpretedOption_);
-      }
-      extensionWriter.WriteUntil(536870912, output);
-      UnknownFields.WriteTo(output);
-    }
-    
-    private int memoizedSerializedSize = -1;
-    public override int SerializedSize {
-      get {
-        int size = memoizedSerializedSize;
-        if (size != -1) return size;
-        
-        size = 0;
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption element in UninterpretedOptionList) {
-          size += pb::CodedOutputStream.ComputeMessageSize(999, element);
-        }
-        size += ExtensionsSerializedSize;
-        size += UnknownFields.SerializedSize;
-        memoizedSerializedSize = size;
-        return size;
-      }
-    }
-    
-    public static MethodOptions ParseFrom(pb::ByteString data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static MethodOptions ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static MethodOptions ParseFrom(byte[] data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static MethodOptions ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static MethodOptions ParseFrom(global::System.IO.Stream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static MethodOptions ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    public static MethodOptions ParseDelimitedFrom(global::System.IO.Stream input) {
-      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
-    }
-    public static MethodOptions ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
-    }
-    public static MethodOptions ParseFrom(pb::ICodedInputStream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static MethodOptions ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    private MethodOptions MakeReadOnly() {
-      uninterpretedOption_.MakeReadOnly();
-      return this;
-    }
-    
-    public static Builder CreateBuilder() { return new Builder(); }
-    public override Builder ToBuilder() { return CreateBuilder(this); }
-    public override Builder CreateBuilderForType() { return new Builder(); }
-    public static Builder CreateBuilder(MethodOptions prototype) {
-      return new Builder(prototype);
-    }
-    
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-    public sealed partial class Builder : pb::ExtendableBuilder<MethodOptions, Builder> {
-      protected override Builder ThisBuilder {
-        get { return this; }
-      }
-      public Builder() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-      }
-      internal Builder(MethodOptions cloneFrom) {
-        result = cloneFrom;
-        resultIsReadOnly = true;
-      }
-      
-      private bool resultIsReadOnly;
-      private MethodOptions result;
-      
-      private MethodOptions PrepareBuilder() {
-        if (resultIsReadOnly) {
-          MethodOptions original = result;
-          result = new MethodOptions();
-          resultIsReadOnly = false;
-          MergeFrom(original);
-        }
-        return result;
-      }
-      
-      public override bool IsInitialized {
-        get { return result.IsInitialized; }
-      }
-      
-      protected override MethodOptions MessageBeingBuilt {
-        get { return PrepareBuilder(); }
-      }
-      
-      public override Builder Clear() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-        return this;
-      }
-      
-      public override Builder Clone() {
-        if (resultIsReadOnly) {
-          return new Builder(result);
-        } else {
-          return new Builder().MergeFrom(result);
-        }
-      }
-      
-      public override pbd::MessageDescriptor DescriptorForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions.Descriptor; }
-      }
-      
-      public override MethodOptions DefaultInstanceForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions.DefaultInstance; }
-      }
-      
-      public override MethodOptions BuildPartial() {
-        if (resultIsReadOnly) {
-          return result;
-        }
-        resultIsReadOnly = true;
-        return result.MakeReadOnly();
-      }
-      
-      public override Builder MergeFrom(pb::IMessage other) {
-        if (other is MethodOptions) {
-          return MergeFrom((MethodOptions) other);
-        } else {
-          base.MergeFrom(other);
-          return this;
-        }
-      }
-      
-      public override Builder MergeFrom(MethodOptions other) {
-        if (other == global::Google.ProtocolBuffers.DescriptorProtos.MethodOptions.DefaultInstance) return this;
-        PrepareBuilder();
-        if (other.uninterpretedOption_.Count != 0) {
-          result.uninterpretedOption_.Add(other.uninterpretedOption_);
-        }
-          this.MergeExtensionFields(other);
-        this.MergeUnknownFields(other.UnknownFields);
-        return this;
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input) {
-        return MergeFrom(input, pb::ExtensionRegistry.Empty);
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-        PrepareBuilder();
-        pb::UnknownFieldSet.Builder unknownFields = null;
-        uint tag;
-        string field_name;
-        while (input.ReadTag(out tag, out field_name)) {
-          if(tag == 0 && field_name != null) {
-            int field_ordinal = global::System.Array.BinarySearch(_methodOptionsFieldNames, field_name, global::System.StringComparer.Ordinal);
-            if(field_ordinal >= 0)
-              tag = _methodOptionsFieldTags[field_ordinal];
-            else {
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              continue;
-            }
-          }
-          switch (tag) {
-            case 0: {
-              throw pb::InvalidProtocolBufferException.InvalidTag();
-            }
-            default: {
-              if (pb::WireFormat.IsEndGroupTag(tag)) {
-                if (unknownFields != null) {
-                  this.UnknownFields = unknownFields.Build();
-                }
-                return this;
-              }
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              break;
-            }
-            case 7994: {
-              input.ReadMessageArray(tag, field_name, result.uninterpretedOption_, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.DefaultInstance, extensionRegistry);
-              break;
-            }
-          }
-        }
-        
-        if (unknownFields != null) {
-          this.UnknownFields = unknownFields.Build();
-        }
-        return this;
-      }
-      
-      
-      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> UninterpretedOptionList {
-        get { return PrepareBuilder().uninterpretedOption_; }
-      }
-      public int UninterpretedOptionCount {
-        get { return result.UninterpretedOptionCount; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption GetUninterpretedOption(int index) {
-        return result.GetUninterpretedOption(index);
-      }
-      public Builder SetUninterpretedOption(int index, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.uninterpretedOption_[index] = value;
-        return this;
-      }
-      public Builder SetUninterpretedOption(int index, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.uninterpretedOption_[index] = builderForValue.Build();
-        return this;
-      }
-      public Builder AddUninterpretedOption(global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.uninterpretedOption_.Add(value);
-        return this;
-      }
-      public Builder AddUninterpretedOption(global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.uninterpretedOption_.Add(builderForValue.Build());
-        return this;
-      }
-      public Builder AddRangeUninterpretedOption(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption> values) {
-        PrepareBuilder();
-        result.uninterpretedOption_.Add(values);
-        return this;
-      }
-      public Builder ClearUninterpretedOption() {
-        PrepareBuilder();
-        result.uninterpretedOption_.Clear();
-        return this;
-      }
-    }
-    static MethodOptions() {
-      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
-    }
-  }
-  
-  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-  public sealed partial class UninterpretedOption : pb::GeneratedMessage<UninterpretedOption, UninterpretedOption.Builder> {
-    private UninterpretedOption() { }
-    private static readonly UninterpretedOption defaultInstance = new UninterpretedOption().MakeReadOnly();
-    private static readonly string[] _uninterpretedOptionFieldNames = new string[] { "aggregate_value", "double_value", "identifier_value", "name", "negative_int_value", "positive_int_value", "string_value" };
-    private static readonly uint[] _uninterpretedOptionFieldTags = new uint[] { 66, 49, 26, 18, 40, 32, 58 };
-    public static UninterpretedOption DefaultInstance {
-      get { return defaultInstance; }
-    }
-    
-    public override UninterpretedOption DefaultInstanceForType {
-      get { return DefaultInstance; }
-    }
-    
-    protected override UninterpretedOption ThisMessage {
-      get { return this; }
-    }
-    
-    public static pbd::MessageDescriptor Descriptor {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_UninterpretedOption__Descriptor; }
-    }
-    
-    protected override pb::FieldAccess.FieldAccessorTable<UninterpretedOption, UninterpretedOption.Builder> InternalFieldAccessors {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_UninterpretedOption__FieldAccessorTable; }
-    }
-    
-    #region Nested types
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-    public static class Types {
-      [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-      [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-      [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-      public sealed partial class NamePart : pb::GeneratedMessage<NamePart, NamePart.Builder> {
-        private NamePart() { }
-        private static readonly NamePart defaultInstance = new NamePart().MakeReadOnly();
-        private static readonly string[] _namePartFieldNames = new string[] { "is_extension", "name_part" };
-        private static readonly uint[] _namePartFieldTags = new uint[] { 16, 10 };
-        public static NamePart DefaultInstance {
-          get { return defaultInstance; }
-        }
-        
-        public override NamePart DefaultInstanceForType {
-          get { return DefaultInstance; }
-        }
-        
-        protected override NamePart ThisMessage {
-          get { return this; }
-        }
-        
-        public static pbd::MessageDescriptor Descriptor {
-          get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_UninterpretedOption_NamePart__Descriptor; }
-        }
-        
-        protected override pb::FieldAccess.FieldAccessorTable<NamePart, NamePart.Builder> InternalFieldAccessors {
-          get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_UninterpretedOption_NamePart__FieldAccessorTable; }
-        }
-        
-        public const int NamePart_FieldNumber = 1;
-        private bool hasNamePart_;
-        private string namePart_ = "";
-        public bool HasNamePart_ {
-          get { return hasNamePart_; }
-        }
-        public string NamePart_ {
-          get { return namePart_; }
-        }
-        
-        public const int IsExtensionFieldNumber = 2;
-        private bool hasIsExtension;
-        private bool isExtension_;
-        public bool HasIsExtension {
-          get { return hasIsExtension; }
-        }
-        public bool IsExtension {
-          get { return isExtension_; }
-        }
-        
-        public override bool IsInitialized {
-          get {
-            if (!hasNamePart_) return false;
-            if (!hasIsExtension) return false;
-            return true;
-          }
-        }
-        
-        public override void WriteTo(pb::ICodedOutputStream output) {
-          int size = SerializedSize;
-          string[] field_names = _namePartFieldNames;
-          if (hasNamePart_) {
-            output.WriteString(1, field_names[1], NamePart_);
-          }
-          if (hasIsExtension) {
-            output.WriteBool(2, field_names[0], IsExtension);
-          }
-          UnknownFields.WriteTo(output);
-        }
-        
-        private int memoizedSerializedSize = -1;
-        public override int SerializedSize {
-          get {
-            int size = memoizedSerializedSize;
-            if (size != -1) return size;
-            
-            size = 0;
-            if (hasNamePart_) {
-              size += pb::CodedOutputStream.ComputeStringSize(1, NamePart_);
-            }
-            if (hasIsExtension) {
-              size += pb::CodedOutputStream.ComputeBoolSize(2, IsExtension);
-            }
-            size += UnknownFields.SerializedSize;
-            memoizedSerializedSize = size;
-            return size;
-          }
-        }
-        
-        public static NamePart ParseFrom(pb::ByteString data) {
-          return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-        }
-        public static NamePart ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
-          return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-        }
-        public static NamePart ParseFrom(byte[] data) {
-          return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-        }
-        public static NamePart ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
-          return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-        }
-        public static NamePart ParseFrom(global::System.IO.Stream input) {
-          return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-        }
-        public static NamePart ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-          return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-        }
-        public static NamePart ParseDelimitedFrom(global::System.IO.Stream input) {
-          return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
-        }
-        public static NamePart ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-          return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
-        }
-        public static NamePart ParseFrom(pb::ICodedInputStream input) {
-          return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-        }
-        public static NamePart ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-          return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-        }
-        private NamePart MakeReadOnly() {
-          return this;
-        }
-        
-        public static Builder CreateBuilder() { return new Builder(); }
-        public override Builder ToBuilder() { return CreateBuilder(this); }
-        public override Builder CreateBuilderForType() { return new Builder(); }
-        public static Builder CreateBuilder(NamePart prototype) {
-          return new Builder(prototype);
-        }
-        
-        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-        [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-        public sealed partial class Builder : pb::GeneratedBuilder<NamePart, Builder> {
-          protected override Builder ThisBuilder {
-            get { return this; }
-          }
-          public Builder() {
-            result = DefaultInstance;
-            resultIsReadOnly = true;
-          }
-          internal Builder(NamePart cloneFrom) {
-            result = cloneFrom;
-            resultIsReadOnly = true;
-          }
-          
-          private bool resultIsReadOnly;
-          private NamePart result;
-          
-          private NamePart PrepareBuilder() {
-            if (resultIsReadOnly) {
-              NamePart original = result;
-              result = new NamePart();
-              resultIsReadOnly = false;
-              MergeFrom(original);
-            }
-            return result;
-          }
-          
-          public override bool IsInitialized {
-            get { return result.IsInitialized; }
-          }
-          
-          protected override NamePart MessageBeingBuilt {
-            get { return PrepareBuilder(); }
-          }
-          
-          public override Builder Clear() {
-            result = DefaultInstance;
-            resultIsReadOnly = true;
-            return this;
-          }
-          
-          public override Builder Clone() {
-            if (resultIsReadOnly) {
-              return new Builder(result);
-            } else {
-              return new Builder().MergeFrom(result);
-            }
-          }
-          
-          public override pbd::MessageDescriptor DescriptorForType {
-            get { return global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart.Descriptor; }
-          }
-          
-          public override NamePart DefaultInstanceForType {
-            get { return global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart.DefaultInstance; }
-          }
-          
-          public override NamePart BuildPartial() {
-            if (resultIsReadOnly) {
-              return result;
-            }
-            resultIsReadOnly = true;
-            return result.MakeReadOnly();
-          }
-          
-          public override Builder MergeFrom(pb::IMessage other) {
-            if (other is NamePart) {
-              return MergeFrom((NamePart) other);
-            } else {
-              base.MergeFrom(other);
-              return this;
-            }
-          }
-          
-          public override Builder MergeFrom(NamePart other) {
-            if (other == global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart.DefaultInstance) return this;
-            PrepareBuilder();
-            if (other.HasNamePart_) {
-              NamePart_ = other.NamePart_;
-            }
-            if (other.HasIsExtension) {
-              IsExtension = other.IsExtension;
-            }
-            this.MergeUnknownFields(other.UnknownFields);
-            return this;
-          }
-          
-          public override Builder MergeFrom(pb::ICodedInputStream input) {
-            return MergeFrom(input, pb::ExtensionRegistry.Empty);
-          }
-          
-          public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-            PrepareBuilder();
-            pb::UnknownFieldSet.Builder unknownFields = null;
-            uint tag;
-            string field_name;
-            while (input.ReadTag(out tag, out field_name)) {
-              if(tag == 0 && field_name != null) {
-                int field_ordinal = global::System.Array.BinarySearch(_namePartFieldNames, field_name, global::System.StringComparer.Ordinal);
-                if(field_ordinal >= 0)
-                  tag = _namePartFieldTags[field_ordinal];
-                else {
-                  if (unknownFields == null) {
-                    unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-                  }
-                  ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-                  continue;
-                }
-              }
-              switch (tag) {
-                case 0: {
-                  throw pb::InvalidProtocolBufferException.InvalidTag();
-                }
-                default: {
-                  if (pb::WireFormat.IsEndGroupTag(tag)) {
-                    if (unknownFields != null) {
-                      this.UnknownFields = unknownFields.Build();
-                    }
-                    return this;
-                  }
-                  if (unknownFields == null) {
-                    unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-                  }
-                  ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-                  break;
-                }
-                case 10: {
-                  result.hasNamePart_ = input.ReadString(ref result.namePart_);
-                  break;
-                }
-                case 16: {
-                  result.hasIsExtension = input.ReadBool(ref result.isExtension_);
-                  break;
-                }
-              }
-            }
-            
-            if (unknownFields != null) {
-              this.UnknownFields = unknownFields.Build();
-            }
-            return this;
-          }
-          
-          
-          public bool HasNamePart_ {
-            get { return result.hasNamePart_; }
-          }
-          public string NamePart_ {
-            get { return result.NamePart_; }
-            set { SetNamePart_(value); }
-          }
-          public Builder SetNamePart_(string value) {
-            pb::ThrowHelper.ThrowIfNull(value, "value");
-            PrepareBuilder();
-            result.hasNamePart_ = true;
-            result.namePart_ = value;
-            return this;
-          }
-          public Builder ClearNamePart_() {
-            PrepareBuilder();
-            result.hasNamePart_ = false;
-            result.namePart_ = "";
-            return this;
-          }
-          
-          public bool HasIsExtension {
-            get { return result.hasIsExtension; }
-          }
-          public bool IsExtension {
-            get { return result.IsExtension; }
-            set { SetIsExtension(value); }
-          }
-          public Builder SetIsExtension(bool value) {
-            PrepareBuilder();
-            result.hasIsExtension = true;
-            result.isExtension_ = value;
-            return this;
-          }
-          public Builder ClearIsExtension() {
-            PrepareBuilder();
-            result.hasIsExtension = false;
-            result.isExtension_ = false;
-            return this;
-          }
-        }
-        static NamePart() {
-          object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
-        }
-      }
-      
-    }
-    #endregion
-    
-    public const int NameFieldNumber = 2;
-    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart> name_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart>();
-    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart> NameList {
-      get { return name_; }
-    }
-    public int NameCount {
-      get { return name_.Count; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart GetName(int index) {
-      return name_[index];
-    }
-    
-    public const int IdentifierValueFieldNumber = 3;
-    private bool hasIdentifierValue;
-    private string identifierValue_ = "";
-    public bool HasIdentifierValue {
-      get { return hasIdentifierValue; }
-    }
-    public string IdentifierValue {
-      get { return identifierValue_; }
-    }
-    
-    public const int PositiveIntValueFieldNumber = 4;
-    private bool hasPositiveIntValue;
-    private ulong positiveIntValue_;
-    public bool HasPositiveIntValue {
-      get { return hasPositiveIntValue; }
-    }
-    [global::System.CLSCompliant(false)]
-    public ulong PositiveIntValue {
-      get { return positiveIntValue_; }
-    }
-    
-    public const int NegativeIntValueFieldNumber = 5;
-    private bool hasNegativeIntValue;
-    private long negativeIntValue_;
-    public bool HasNegativeIntValue {
-      get { return hasNegativeIntValue; }
-    }
-    public long NegativeIntValue {
-      get { return negativeIntValue_; }
-    }
-    
-    public const int DoubleValueFieldNumber = 6;
-    private bool hasDoubleValue;
-    private double doubleValue_;
-    public bool HasDoubleValue {
-      get { return hasDoubleValue; }
-    }
-    public double DoubleValue {
-      get { return doubleValue_; }
-    }
-    
-    public const int StringValueFieldNumber = 7;
-    private bool hasStringValue;
-    private pb::ByteString stringValue_ = pb::ByteString.Empty;
-    public bool HasStringValue {
-      get { return hasStringValue; }
-    }
-    public pb::ByteString StringValue {
-      get { return stringValue_; }
-    }
-    
-    public const int AggregateValueFieldNumber = 8;
-    private bool hasAggregateValue;
-    private string aggregateValue_ = "";
-    public bool HasAggregateValue {
-      get { return hasAggregateValue; }
-    }
-    public string AggregateValue {
-      get { return aggregateValue_; }
-    }
-    
-    public override bool IsInitialized {
-      get {
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart element in NameList) {
-          if (!element.IsInitialized) return false;
-        }
-        return true;
-      }
-    }
-    
-    public override void WriteTo(pb::ICodedOutputStream output) {
-      int size = SerializedSize;
-      string[] field_names = _uninterpretedOptionFieldNames;
-      if (name_.Count > 0) {
-        output.WriteMessageArray(2, field_names[3], name_);
-      }
-      if (hasIdentifierValue) {
-        output.WriteString(3, field_names[2], IdentifierValue);
-      }
-      if (hasPositiveIntValue) {
-        output.WriteUInt64(4, field_names[5], PositiveIntValue);
-      }
-      if (hasNegativeIntValue) {
-        output.WriteInt64(5, field_names[4], NegativeIntValue);
-      }
-      if (hasDoubleValue) {
-        output.WriteDouble(6, field_names[1], DoubleValue);
-      }
-      if (hasStringValue) {
-        output.WriteBytes(7, field_names[6], StringValue);
-      }
-      if (hasAggregateValue) {
-        output.WriteString(8, field_names[0], AggregateValue);
-      }
-      UnknownFields.WriteTo(output);
-    }
-    
-    private int memoizedSerializedSize = -1;
-    public override int SerializedSize {
-      get {
-        int size = memoizedSerializedSize;
-        if (size != -1) return size;
-        
-        size = 0;
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart element in NameList) {
-          size += pb::CodedOutputStream.ComputeMessageSize(2, element);
-        }
-        if (hasIdentifierValue) {
-          size += pb::CodedOutputStream.ComputeStringSize(3, IdentifierValue);
-        }
-        if (hasPositiveIntValue) {
-          size += pb::CodedOutputStream.ComputeUInt64Size(4, PositiveIntValue);
-        }
-        if (hasNegativeIntValue) {
-          size += pb::CodedOutputStream.ComputeInt64Size(5, NegativeIntValue);
-        }
-        if (hasDoubleValue) {
-          size += pb::CodedOutputStream.ComputeDoubleSize(6, DoubleValue);
-        }
-        if (hasStringValue) {
-          size += pb::CodedOutputStream.ComputeBytesSize(7, StringValue);
-        }
-        if (hasAggregateValue) {
-          size += pb::CodedOutputStream.ComputeStringSize(8, AggregateValue);
-        }
-        size += UnknownFields.SerializedSize;
-        memoizedSerializedSize = size;
-        return size;
-      }
-    }
-    
-    public static UninterpretedOption ParseFrom(pb::ByteString data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static UninterpretedOption ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static UninterpretedOption ParseFrom(byte[] data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static UninterpretedOption ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static UninterpretedOption ParseFrom(global::System.IO.Stream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static UninterpretedOption ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    public static UninterpretedOption ParseDelimitedFrom(global::System.IO.Stream input) {
-      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
-    }
-    public static UninterpretedOption ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
-    }
-    public static UninterpretedOption ParseFrom(pb::ICodedInputStream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static UninterpretedOption ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    private UninterpretedOption MakeReadOnly() {
-      name_.MakeReadOnly();
-      return this;
-    }
-    
-    public static Builder CreateBuilder() { return new Builder(); }
-    public override Builder ToBuilder() { return CreateBuilder(this); }
-    public override Builder CreateBuilderForType() { return new Builder(); }
-    public static Builder CreateBuilder(UninterpretedOption prototype) {
-      return new Builder(prototype);
-    }
-    
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-    public sealed partial class Builder : pb::GeneratedBuilder<UninterpretedOption, Builder> {
-      protected override Builder ThisBuilder {
-        get { return this; }
-      }
-      public Builder() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-      }
-      internal Builder(UninterpretedOption cloneFrom) {
-        result = cloneFrom;
-        resultIsReadOnly = true;
-      }
-      
-      private bool resultIsReadOnly;
-      private UninterpretedOption result;
-      
-      private UninterpretedOption PrepareBuilder() {
-        if (resultIsReadOnly) {
-          UninterpretedOption original = result;
-          result = new UninterpretedOption();
-          resultIsReadOnly = false;
-          MergeFrom(original);
-        }
-        return result;
-      }
-      
-      public override bool IsInitialized {
-        get { return result.IsInitialized; }
-      }
-      
-      protected override UninterpretedOption MessageBeingBuilt {
-        get { return PrepareBuilder(); }
-      }
-      
-      public override Builder Clear() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-        return this;
-      }
-      
-      public override Builder Clone() {
-        if (resultIsReadOnly) {
-          return new Builder(result);
-        } else {
-          return new Builder().MergeFrom(result);
-        }
-      }
-      
-      public override pbd::MessageDescriptor DescriptorForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Descriptor; }
-      }
-      
-      public override UninterpretedOption DefaultInstanceForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.DefaultInstance; }
-      }
-      
-      public override UninterpretedOption BuildPartial() {
-        if (resultIsReadOnly) {
-          return result;
-        }
-        resultIsReadOnly = true;
-        return result.MakeReadOnly();
-      }
-      
-      public override Builder MergeFrom(pb::IMessage other) {
-        if (other is UninterpretedOption) {
-          return MergeFrom((UninterpretedOption) other);
-        } else {
-          base.MergeFrom(other);
-          return this;
-        }
-      }
-      
-      public override Builder MergeFrom(UninterpretedOption other) {
-        if (other == global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.DefaultInstance) return this;
-        PrepareBuilder();
-        if (other.name_.Count != 0) {
-          result.name_.Add(other.name_);
-        }
-        if (other.HasIdentifierValue) {
-          IdentifierValue = other.IdentifierValue;
-        }
-        if (other.HasPositiveIntValue) {
-          PositiveIntValue = other.PositiveIntValue;
-        }
-        if (other.HasNegativeIntValue) {
-          NegativeIntValue = other.NegativeIntValue;
-        }
-        if (other.HasDoubleValue) {
-          DoubleValue = other.DoubleValue;
-        }
-        if (other.HasStringValue) {
-          StringValue = other.StringValue;
-        }
-        if (other.HasAggregateValue) {
-          AggregateValue = other.AggregateValue;
-        }
-        this.MergeUnknownFields(other.UnknownFields);
-        return this;
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input) {
-        return MergeFrom(input, pb::ExtensionRegistry.Empty);
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-        PrepareBuilder();
-        pb::UnknownFieldSet.Builder unknownFields = null;
-        uint tag;
-        string field_name;
-        while (input.ReadTag(out tag, out field_name)) {
-          if(tag == 0 && field_name != null) {
-            int field_ordinal = global::System.Array.BinarySearch(_uninterpretedOptionFieldNames, field_name, global::System.StringComparer.Ordinal);
-            if(field_ordinal >= 0)
-              tag = _uninterpretedOptionFieldTags[field_ordinal];
-            else {
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              continue;
-            }
-          }
-          switch (tag) {
-            case 0: {
-              throw pb::InvalidProtocolBufferException.InvalidTag();
-            }
-            default: {
-              if (pb::WireFormat.IsEndGroupTag(tag)) {
-                if (unknownFields != null) {
-                  this.UnknownFields = unknownFields.Build();
-                }
-                return this;
-              }
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              break;
-            }
-            case 18: {
-              input.ReadMessageArray(tag, field_name, result.name_, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart.DefaultInstance, extensionRegistry);
-              break;
-            }
-            case 26: {
-              result.hasIdentifierValue = input.ReadString(ref result.identifierValue_);
-              break;
-            }
-            case 32: {
-              result.hasPositiveIntValue = input.ReadUInt64(ref result.positiveIntValue_);
-              break;
-            }
-            case 40: {
-              result.hasNegativeIntValue = input.ReadInt64(ref result.negativeIntValue_);
-              break;
-            }
-            case 49: {
-              result.hasDoubleValue = input.ReadDouble(ref result.doubleValue_);
-              break;
-            }
-            case 58: {
-              result.hasStringValue = input.ReadBytes(ref result.stringValue_);
-              break;
-            }
-            case 66: {
-              result.hasAggregateValue = input.ReadString(ref result.aggregateValue_);
-              break;
-            }
-          }
-        }
-        
-        if (unknownFields != null) {
-          this.UnknownFields = unknownFields.Build();
-        }
-        return this;
-      }
-      
-      
-      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart> NameList {
-        get { return PrepareBuilder().name_; }
-      }
-      public int NameCount {
-        get { return result.NameCount; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart GetName(int index) {
-        return result.GetName(index);
-      }
-      public Builder SetName(int index, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.name_[index] = value;
-        return this;
-      }
-      public Builder SetName(int index, global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.name_[index] = builderForValue.Build();
-        return this;
-      }
-      public Builder AddName(global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.name_.Add(value);
-        return this;
-      }
-      public Builder AddName(global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.name_.Add(builderForValue.Build());
-        return this;
-      }
-      public Builder AddRangeName(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.UninterpretedOption.Types.NamePart> values) {
-        PrepareBuilder();
-        result.name_.Add(values);
-        return this;
-      }
-      public Builder ClearName() {
-        PrepareBuilder();
-        result.name_.Clear();
-        return this;
-      }
-      
-      public bool HasIdentifierValue {
-        get { return result.hasIdentifierValue; }
-      }
-      public string IdentifierValue {
-        get { return result.IdentifierValue; }
-        set { SetIdentifierValue(value); }
-      }
-      public Builder SetIdentifierValue(string value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasIdentifierValue = true;
-        result.identifierValue_ = value;
-        return this;
-      }
-      public Builder ClearIdentifierValue() {
-        PrepareBuilder();
-        result.hasIdentifierValue = false;
-        result.identifierValue_ = "";
-        return this;
-      }
-      
-      public bool HasPositiveIntValue {
-        get { return result.hasPositiveIntValue; }
-      }
-      [global::System.CLSCompliant(false)]
-      public ulong PositiveIntValue {
-        get { return result.PositiveIntValue; }
-        set { SetPositiveIntValue(value); }
-      }
-      [global::System.CLSCompliant(false)]
-      public Builder SetPositiveIntValue(ulong value) {
-        PrepareBuilder();
-        result.hasPositiveIntValue = true;
-        result.positiveIntValue_ = value;
-        return this;
-      }
-      public Builder ClearPositiveIntValue() {
-        PrepareBuilder();
-        result.hasPositiveIntValue = false;
-        result.positiveIntValue_ = 0UL;
-        return this;
-      }
-      
-      public bool HasNegativeIntValue {
-        get { return result.hasNegativeIntValue; }
-      }
-      public long NegativeIntValue {
-        get { return result.NegativeIntValue; }
-        set { SetNegativeIntValue(value); }
-      }
-      public Builder SetNegativeIntValue(long value) {
-        PrepareBuilder();
-        result.hasNegativeIntValue = true;
-        result.negativeIntValue_ = value;
-        return this;
-      }
-      public Builder ClearNegativeIntValue() {
-        PrepareBuilder();
-        result.hasNegativeIntValue = false;
-        result.negativeIntValue_ = 0L;
-        return this;
-      }
-      
-      public bool HasDoubleValue {
-        get { return result.hasDoubleValue; }
-      }
-      public double DoubleValue {
-        get { return result.DoubleValue; }
-        set { SetDoubleValue(value); }
-      }
-      public Builder SetDoubleValue(double value) {
-        PrepareBuilder();
-        result.hasDoubleValue = true;
-        result.doubleValue_ = value;
-        return this;
-      }
-      public Builder ClearDoubleValue() {
-        PrepareBuilder();
-        result.hasDoubleValue = false;
-        result.doubleValue_ = 0D;
-        return this;
-      }
-      
-      public bool HasStringValue {
-        get { return result.hasStringValue; }
-      }
-      public pb::ByteString StringValue {
-        get { return result.StringValue; }
-        set { SetStringValue(value); }
-      }
-      public Builder SetStringValue(pb::ByteString value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasStringValue = true;
-        result.stringValue_ = value;
-        return this;
-      }
-      public Builder ClearStringValue() {
-        PrepareBuilder();
-        result.hasStringValue = false;
-        result.stringValue_ = pb::ByteString.Empty;
-        return this;
-      }
-      
-      public bool HasAggregateValue {
-        get { return result.hasAggregateValue; }
-      }
-      public string AggregateValue {
-        get { return result.AggregateValue; }
-        set { SetAggregateValue(value); }
-      }
-      public Builder SetAggregateValue(string value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasAggregateValue = true;
-        result.aggregateValue_ = value;
-        return this;
-      }
-      public Builder ClearAggregateValue() {
-        PrepareBuilder();
-        result.hasAggregateValue = false;
-        result.aggregateValue_ = "";
-        return this;
-      }
-    }
-    static UninterpretedOption() {
-      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
-    }
-  }
-  
-  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-  [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-  public sealed partial class SourceCodeInfo : pb::GeneratedMessage<SourceCodeInfo, SourceCodeInfo.Builder> {
-    private SourceCodeInfo() { }
-    private static readonly SourceCodeInfo defaultInstance = new SourceCodeInfo().MakeReadOnly();
-    private static readonly string[] _sourceCodeInfoFieldNames = new string[] { "location" };
-    private static readonly uint[] _sourceCodeInfoFieldTags = new uint[] { 10 };
-    public static SourceCodeInfo DefaultInstance {
-      get { return defaultInstance; }
-    }
-    
-    public override SourceCodeInfo DefaultInstanceForType {
-      get { return DefaultInstance; }
-    }
-    
-    protected override SourceCodeInfo ThisMessage {
-      get { return this; }
-    }
-    
-    public static pbd::MessageDescriptor Descriptor {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_SourceCodeInfo__Descriptor; }
-    }
-    
-    protected override pb::FieldAccess.FieldAccessorTable<SourceCodeInfo, SourceCodeInfo.Builder> InternalFieldAccessors {
-      get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_SourceCodeInfo__FieldAccessorTable; }
-    }
-    
-    #region Nested types
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-    public static class Types {
-      [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-      [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-      [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-      public sealed partial class Location : pb::GeneratedMessage<Location, Location.Builder> {
-        private Location() { }
-        private static readonly Location defaultInstance = new Location().MakeReadOnly();
-        private static readonly string[] _locationFieldNames = new string[] { "path", "span" };
-        private static readonly uint[] _locationFieldTags = new uint[] { 10, 18 };
-        public static Location DefaultInstance {
-          get { return defaultInstance; }
-        }
-        
-        public override Location DefaultInstanceForType {
-          get { return DefaultInstance; }
-        }
-        
-        protected override Location ThisMessage {
-          get { return this; }
-        }
-        
-        public static pbd::MessageDescriptor Descriptor {
-          get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_SourceCodeInfo_Location__Descriptor; }
-        }
-        
-        protected override pb::FieldAccess.FieldAccessorTable<Location, Location.Builder> InternalFieldAccessors {
-          get { return global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.internal__static_google_protobuf_SourceCodeInfo_Location__FieldAccessorTable; }
-        }
-        
-        public const int PathFieldNumber = 1;
-        private int pathMemoizedSerializedSize;
-        private pbc::PopsicleList<int> path_ = new pbc::PopsicleList<int>();
-        public scg::IList<int> PathList {
-          get { return pbc::Lists.AsReadOnly(path_); }
-        }
-        public int PathCount {
-          get { return path_.Count; }
-        }
-        public int GetPath(int index) {
-          return path_[index];
-        }
-        
-        public const int SpanFieldNumber = 2;
-        private int spanMemoizedSerializedSize;
-        private pbc::PopsicleList<int> span_ = new pbc::PopsicleList<int>();
-        public scg::IList<int> SpanList {
-          get { return pbc::Lists.AsReadOnly(span_); }
-        }
-        public int SpanCount {
-          get { return span_.Count; }
-        }
-        public int GetSpan(int index) {
-          return span_[index];
-        }
-        
-        public override bool IsInitialized {
-          get {
-            return true;
-          }
-        }
-        
-        public override void WriteTo(pb::ICodedOutputStream output) {
-          int size = SerializedSize;
-          string[] field_names = _locationFieldNames;
-          if (path_.Count > 0) {
-            output.WritePackedInt32Array(1, field_names[0], pathMemoizedSerializedSize, path_);
-          }
-          if (span_.Count > 0) {
-            output.WritePackedInt32Array(2, field_names[1], spanMemoizedSerializedSize, span_);
-          }
-          UnknownFields.WriteTo(output);
-        }
-        
-        private int memoizedSerializedSize = -1;
-        public override int SerializedSize {
-          get {
-            int size = memoizedSerializedSize;
-            if (size != -1) return size;
-            
-            size = 0;
-            {
-              int dataSize = 0;
-              foreach (int element in PathList) {
-                dataSize += pb::CodedOutputStream.ComputeInt32SizeNoTag(element);
-              }
-              size += dataSize;
-              if (path_.Count != 0) {
-                size += 1 + pb::CodedOutputStream.ComputeInt32SizeNoTag(dataSize);
-              }
-              pathMemoizedSerializedSize = dataSize;
-            }
-            {
-              int dataSize = 0;
-              foreach (int element in SpanList) {
-                dataSize += pb::CodedOutputStream.ComputeInt32SizeNoTag(element);
-              }
-              size += dataSize;
-              if (span_.Count != 0) {
-                size += 1 + pb::CodedOutputStream.ComputeInt32SizeNoTag(dataSize);
-              }
-              spanMemoizedSerializedSize = dataSize;
-            }
-            size += UnknownFields.SerializedSize;
-            memoizedSerializedSize = size;
-            return size;
-          }
-        }
-        
-        public static Location ParseFrom(pb::ByteString data) {
-          return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-        }
-        public static Location ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
-          return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-        }
-        public static Location ParseFrom(byte[] data) {
-          return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-        }
-        public static Location ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
-          return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-        }
-        public static Location ParseFrom(global::System.IO.Stream input) {
-          return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-        }
-        public static Location ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-          return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-        }
-        public static Location ParseDelimitedFrom(global::System.IO.Stream input) {
-          return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
-        }
-        public static Location ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-          return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
-        }
-        public static Location ParseFrom(pb::ICodedInputStream input) {
-          return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-        }
-        public static Location ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-          return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-        }
-        private Location MakeReadOnly() {
-          path_.MakeReadOnly();
-          span_.MakeReadOnly();
-          return this;
-        }
-        
-        public static Builder CreateBuilder() { return new Builder(); }
-        public override Builder ToBuilder() { return CreateBuilder(this); }
-        public override Builder CreateBuilderForType() { return new Builder(); }
-        public static Builder CreateBuilder(Location prototype) {
-          return new Builder(prototype);
-        }
-        
-        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-        [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-        public sealed partial class Builder : pb::GeneratedBuilder<Location, Builder> {
-          protected override Builder ThisBuilder {
-            get { return this; }
-          }
-          public Builder() {
-            result = DefaultInstance;
-            resultIsReadOnly = true;
-          }
-          internal Builder(Location cloneFrom) {
-            result = cloneFrom;
-            resultIsReadOnly = true;
-          }
-          
-          private bool resultIsReadOnly;
-          private Location result;
-          
-          private Location PrepareBuilder() {
-            if (resultIsReadOnly) {
-              Location original = result;
-              result = new Location();
-              resultIsReadOnly = false;
-              MergeFrom(original);
-            }
-            return result;
-          }
-          
-          public override bool IsInitialized {
-            get { return result.IsInitialized; }
-          }
-          
-          protected override Location MessageBeingBuilt {
-            get { return PrepareBuilder(); }
-          }
-          
-          public override Builder Clear() {
-            result = DefaultInstance;
-            resultIsReadOnly = true;
-            return this;
-          }
-          
-          public override Builder Clone() {
-            if (resultIsReadOnly) {
-              return new Builder(result);
-            } else {
-              return new Builder().MergeFrom(result);
-            }
-          }
-          
-          public override pbd::MessageDescriptor DescriptorForType {
-            get { return global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo.Types.Location.Descriptor; }
-          }
-          
-          public override Location DefaultInstanceForType {
-            get { return global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo.Types.Location.DefaultInstance; }
-          }
-          
-          public override Location BuildPartial() {
-            if (resultIsReadOnly) {
-              return result;
-            }
-            resultIsReadOnly = true;
-            return result.MakeReadOnly();
-          }
-          
-          public override Builder MergeFrom(pb::IMessage other) {
-            if (other is Location) {
-              return MergeFrom((Location) other);
-            } else {
-              base.MergeFrom(other);
-              return this;
-            }
-          }
-          
-          public override Builder MergeFrom(Location other) {
-            if (other == global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo.Types.Location.DefaultInstance) return this;
-            PrepareBuilder();
-            if (other.path_.Count != 0) {
-              result.path_.Add(other.path_);
-            }
-            if (other.span_.Count != 0) {
-              result.span_.Add(other.span_);
-            }
-            this.MergeUnknownFields(other.UnknownFields);
-            return this;
-          }
-          
-          public override Builder MergeFrom(pb::ICodedInputStream input) {
-            return MergeFrom(input, pb::ExtensionRegistry.Empty);
-          }
-          
-          public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-            PrepareBuilder();
-            pb::UnknownFieldSet.Builder unknownFields = null;
-            uint tag;
-            string field_name;
-            while (input.ReadTag(out tag, out field_name)) {
-              if(tag == 0 && field_name != null) {
-                int field_ordinal = global::System.Array.BinarySearch(_locationFieldNames, field_name, global::System.StringComparer.Ordinal);
-                if(field_ordinal >= 0)
-                  tag = _locationFieldTags[field_ordinal];
-                else {
-                  if (unknownFields == null) {
-                    unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-                  }
-                  ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-                  continue;
-                }
-              }
-              switch (tag) {
-                case 0: {
-                  throw pb::InvalidProtocolBufferException.InvalidTag();
-                }
-                default: {
-                  if (pb::WireFormat.IsEndGroupTag(tag)) {
-                    if (unknownFields != null) {
-                      this.UnknownFields = unknownFields.Build();
-                    }
-                    return this;
-                  }
-                  if (unknownFields == null) {
-                    unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-                  }
-                  ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-                  break;
-                }
-                case 10:
-                case 8: {
-                  input.ReadInt32Array(tag, field_name, result.path_);
-                  break;
-                }
-                case 18:
-                case 16: {
-                  input.ReadInt32Array(tag, field_name, result.span_);
-                  break;
-                }
-              }
-            }
-            
-            if (unknownFields != null) {
-              this.UnknownFields = unknownFields.Build();
-            }
-            return this;
-          }
-          
-          
-          public pbc::IPopsicleList<int> PathList {
-            get { return PrepareBuilder().path_; }
-          }
-          public int PathCount {
-            get { return result.PathCount; }
-          }
-          public int GetPath(int index) {
-            return result.GetPath(index);
-          }
-          public Builder SetPath(int index, int value) {
-            PrepareBuilder();
-            result.path_[index] = value;
-            return this;
-          }
-          public Builder AddPath(int value) {
-            PrepareBuilder();
-            result.path_.Add(value);
-            return this;
-          }
-          public Builder AddRangePath(scg::IEnumerable<int> values) {
-            PrepareBuilder();
-            result.path_.Add(values);
-            return this;
-          }
-          public Builder ClearPath() {
-            PrepareBuilder();
-            result.path_.Clear();
-            return this;
-          }
-          
-          public pbc::IPopsicleList<int> SpanList {
-            get { return PrepareBuilder().span_; }
-          }
-          public int SpanCount {
-            get { return result.SpanCount; }
-          }
-          public int GetSpan(int index) {
-            return result.GetSpan(index);
-          }
-          public Builder SetSpan(int index, int value) {
-            PrepareBuilder();
-            result.span_[index] = value;
-            return this;
-          }
-          public Builder AddSpan(int value) {
-            PrepareBuilder();
-            result.span_.Add(value);
-            return this;
-          }
-          public Builder AddRangeSpan(scg::IEnumerable<int> values) {
-            PrepareBuilder();
-            result.span_.Add(values);
-            return this;
-          }
-          public Builder ClearSpan() {
-            PrepareBuilder();
-            result.span_.Clear();
-            return this;
-          }
-        }
-        static Location() {
-          object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
-        }
-      }
-      
-    }
-    #endregion
-    
-    public const int LocationFieldNumber = 1;
-    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo.Types.Location> location_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo.Types.Location>();
-    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo.Types.Location> LocationList {
-      get { return location_; }
-    }
-    public int LocationCount {
-      get { return location_.Count; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo.Types.Location GetLocation(int index) {
-      return location_[index];
-    }
-    
-    public override bool IsInitialized {
-      get {
-        return true;
-      }
-    }
-    
-    public override void WriteTo(pb::ICodedOutputStream output) {
-      int size = SerializedSize;
-      string[] field_names = _sourceCodeInfoFieldNames;
-      if (location_.Count > 0) {
-        output.WriteMessageArray(1, field_names[0], location_);
-      }
-      UnknownFields.WriteTo(output);
-    }
-    
-    private int memoizedSerializedSize = -1;
-    public override int SerializedSize {
-      get {
-        int size = memoizedSerializedSize;
-        if (size != -1) return size;
-        
-        size = 0;
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo.Types.Location element in LocationList) {
-          size += pb::CodedOutputStream.ComputeMessageSize(1, element);
-        }
-        size += UnknownFields.SerializedSize;
-        memoizedSerializedSize = size;
-        return size;
-      }
-    }
-    
-    public static SourceCodeInfo ParseFrom(pb::ByteString data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static SourceCodeInfo ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static SourceCodeInfo ParseFrom(byte[] data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static SourceCodeInfo ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static SourceCodeInfo ParseFrom(global::System.IO.Stream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static SourceCodeInfo ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    public static SourceCodeInfo ParseDelimitedFrom(global::System.IO.Stream input) {
-      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
-    }
-    public static SourceCodeInfo ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
-    }
-    public static SourceCodeInfo ParseFrom(pb::ICodedInputStream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static SourceCodeInfo ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    private SourceCodeInfo MakeReadOnly() {
-      location_.MakeReadOnly();
-      return this;
-    }
-    
-    public static Builder CreateBuilder() { return new Builder(); }
-    public override Builder ToBuilder() { return CreateBuilder(this); }
-    public override Builder CreateBuilderForType() { return new Builder(); }
-    public static Builder CreateBuilder(SourceCodeInfo prototype) {
-      return new Builder(prototype);
-    }
-    
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]
-    public sealed partial class Builder : pb::GeneratedBuilder<SourceCodeInfo, Builder> {
-      protected override Builder ThisBuilder {
-        get { return this; }
-      }
-      public Builder() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-      }
-      internal Builder(SourceCodeInfo cloneFrom) {
-        result = cloneFrom;
-        resultIsReadOnly = true;
-      }
-      
-      private bool resultIsReadOnly;
-      private SourceCodeInfo result;
-      
-      private SourceCodeInfo PrepareBuilder() {
-        if (resultIsReadOnly) {
-          SourceCodeInfo original = result;
-          result = new SourceCodeInfo();
-          resultIsReadOnly = false;
-          MergeFrom(original);
-        }
-        return result;
-      }
-      
-      public override bool IsInitialized {
-        get { return result.IsInitialized; }
-      }
-      
-      protected override SourceCodeInfo MessageBeingBuilt {
-        get { return PrepareBuilder(); }
-      }
-      
-      public override Builder Clear() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-        return this;
-      }
-      
-      public override Builder Clone() {
-        if (resultIsReadOnly) {
-          return new Builder(result);
-        } else {
-          return new Builder().MergeFrom(result);
-        }
-      }
-      
-      public override pbd::MessageDescriptor DescriptorForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo.Descriptor; }
-      }
-      
-      public override SourceCodeInfo DefaultInstanceForType {
-        get { return global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo.DefaultInstance; }
-      }
-      
-      public override SourceCodeInfo BuildPartial() {
-        if (resultIsReadOnly) {
-          return result;
-        }
-        resultIsReadOnly = true;
-        return result.MakeReadOnly();
-      }
-      
-      public override Builder MergeFrom(pb::IMessage other) {
-        if (other is SourceCodeInfo) {
-          return MergeFrom((SourceCodeInfo) other);
-        } else {
-          base.MergeFrom(other);
-          return this;
-        }
-      }
-      
-      public override Builder MergeFrom(SourceCodeInfo other) {
-        if (other == global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo.DefaultInstance) return this;
-        PrepareBuilder();
-        if (other.location_.Count != 0) {
-          result.location_.Add(other.location_);
-        }
-        this.MergeUnknownFields(other.UnknownFields);
-        return this;
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input) {
-        return MergeFrom(input, pb::ExtensionRegistry.Empty);
-      }
-      
-      public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-        PrepareBuilder();
-        pb::UnknownFieldSet.Builder unknownFields = null;
-        uint tag;
-        string field_name;
-        while (input.ReadTag(out tag, out field_name)) {
-          if(tag == 0 && field_name != null) {
-            int field_ordinal = global::System.Array.BinarySearch(_sourceCodeInfoFieldNames, field_name, global::System.StringComparer.Ordinal);
-            if(field_ordinal >= 0)
-              tag = _sourceCodeInfoFieldTags[field_ordinal];
-            else {
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              continue;
-            }
-          }
-          switch (tag) {
-            case 0: {
-              throw pb::InvalidProtocolBufferException.InvalidTag();
-            }
-            default: {
-              if (pb::WireFormat.IsEndGroupTag(tag)) {
-                if (unknownFields != null) {
-                  this.UnknownFields = unknownFields.Build();
-                }
-                return this;
-              }
-              if (unknownFields == null) {
-                unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);
-              }
-              ParseUnknownField(input, unknownFields, extensionRegistry, tag, field_name);
-              break;
-            }
-            case 10: {
-              input.ReadMessageArray(tag, field_name, result.location_, global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo.Types.Location.DefaultInstance, extensionRegistry);
-              break;
-            }
-          }
-        }
-        
-        if (unknownFields != null) {
-          this.UnknownFields = unknownFields.Build();
-        }
-        return this;
-      }
-      
-      
-      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo.Types.Location> LocationList {
-        get { return PrepareBuilder().location_; }
-      }
-      public int LocationCount {
-        get { return result.LocationCount; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo.Types.Location GetLocation(int index) {
-        return result.GetLocation(index);
-      }
-      public Builder SetLocation(int index, global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo.Types.Location value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.location_[index] = value;
-        return this;
-      }
-      public Builder SetLocation(int index, global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo.Types.Location.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.location_[index] = builderForValue.Build();
-        return this;
-      }
-      public Builder AddLocation(global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo.Types.Location value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.location_.Add(value);
-        return this;
-      }
-      public Builder AddLocation(global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo.Types.Location.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.location_.Add(builderForValue.Build());
-        return this;
-      }
-      public Builder AddRangeLocation(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.SourceCodeInfo.Types.Location> values) {
-        PrepareBuilder();
-        result.location_.Add(values);
-        return this;
-      }
-      public Builder ClearLocation() {
-        PrepareBuilder();
-        result.location_.Clear();
-        return this;
-      }
-    }
-    static SourceCodeInfo() {
-      object.ReferenceEquals(global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor, null);
-    }
-  }
-  
-  #endregion
-  
-}
-
-#endregion Designer generated code

+ 0 - 30
CSharp/App/Modules/BehaviorTreeModule/FolderVisiableConverter.cs

@@ -1,30 +0,0 @@
-using System;
-using System.Globalization;
-using System.Windows;
-using System.Windows.Data;
-
-namespace Modules.BehaviorTreeModule
-{
-	[ValueConversion(typeof (bool), typeof (Visibility))]
-	public class FolderVisiableConverter: IValueConverter
-	{
-		public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-		{
-			if (value == null)
-			{
-				return 0;
-			}
-			bool isFolder = (bool) value;
-			if (isFolder)
-			{
-				return Visibility.Visible;
-			}
-			return Visibility.Hidden;
-		}
-
-		public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
-		{
-			return null;
-		}
-	}
-}

+ 0 - 42
CSharp/App/Modules/BehaviorTreeModule/ListToStringConverter.cs

@@ -1,42 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Globalization;
-using System.Linq;
-using System.Windows.Data;
-
-namespace Modules.BehaviorTreeModule
-{
-	[ValueConversion(typeof (List<string>), typeof (string))]
-	public class ListToStringConverter: IValueConverter
-	{
-		public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-		{
-			if (value == null)
-			{
-				return "";
-			}
-			var list = ((List<string>) value);
-			return String.Join(",", list);
-		}
-
-		public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
-		{
-			if (value == null)
-			{
-				return new List<string>();
-			}
-			string s = (string) value;
-			s = s.Trim();
-			if (s == "")
-			{
-				return new List<string>();
-			}
-			string[] ss = s.Split(',');
-			for (int i = 0; i < ss.Length; ++i)
-			{
-				ss[i] = ss[i].Trim();
-			}
-			return ss.ToList();
-		}
-	}
-}

+ 0 - 34
CSharp/App/Modules/BehaviorTreeModule/NodeDataEditor.xaml

@@ -1,34 +0,0 @@
-<UserControl x:Class="Modules.BehaviorTreeModule.NodeDataEditor"
-             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
-             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
-             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
-             xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
-             xmlns:tree="clr-namespace:Modules.BehaviorTreeModule"
-             mc:Ignorable="d" Height="200" DataContextChanged="OnDataContextChanged"
-			 d:DataContext="{d:DesignInstance tree:TreeNodeViewModel}" VerticalContentAlignment="Stretch" HorizontalAlignment="Stretch" d:DesignWidth="242">
-	<UserControl.Resources>
-		<tree:ListToStringConverter x:Key="ListToStringConverter"/>
-	</UserControl.Resources>
-
-	<Grid VerticalAlignment="Stretch" HorizontalAlignment="Stretch">
-		<Grid.RowDefinitions>
-			<RowDefinition Height="*"/>
-			<RowDefinition Height="*"/>
-			<RowDefinition Height="*"/>
-			<RowDefinition Height="5*"/>
-		</Grid.RowDefinitions>
-		<Grid.ColumnDefinitions>
-			<ColumnDefinition Width="40"/>
-			<ColumnDefinition Width="*"/>
-		</Grid.ColumnDefinitions>
-		<Label Content="ID  :" Grid.Row="0" Grid.Column="0" HorizontalAlignment="Left" HorizontalContentAlignment="Center" VerticalAlignment="Top" VerticalContentAlignment="Stretch" Height="30"/>
-		<Label Content="类型:" Grid.Row="1" Grid.Column="0" HorizontalAlignment="Left" HorizontalContentAlignment="Center" VerticalAlignment="Top" Height="30"/>
-		<Label Content="参数:" Grid.Row="2" Grid.Column="0" HorizontalAlignment="Left" HorizontalContentAlignment="Center" VerticalAlignment="Top" Height="30"/>
-		<Label Content="备注:" Grid.Row="3" Grid.Column="0" HorizontalAlignment="Left" HorizontalContentAlignment="Center" VerticalAlignment="Top" Height="30"/>
-		
-		<Label Name="lblId" Grid.Column="1" Grid.Row="0" Content="{Binding Id}" HorizontalAlignment="Stretch"/>
-		<ComboBox Name="cbType" Grid.Column="1" Grid.Row="1" Margin="2" SelectionChanged="CbType_OnSelectionChanged" HorizontalAlignment="Stretch"/>
-		<TextBox Name="tbArgs" Grid.Column="1" Grid.Row="2" Margin="2" Text="{Binding Args, Converter={StaticResource ListToStringConverter}, UpdateSourceTrigger=PropertyChanged}" HorizontalAlignment="Stretch"/>
-		<TextBox Name="tbComment" Grid.Column="1" Grid.Row="3" Margin="2" Text="{Binding Comment, UpdateSourceTrigger=PropertyChanged}" HorizontalAlignment="Stretch"/>
-	</Grid>
-</UserControl>

+ 0 - 65
CSharp/App/Modules/BehaviorTreeModule/NodeDataEditor.xaml.cs

@@ -1,65 +0,0 @@
-using System;
-using System.Windows;
-using System.Windows.Controls;
-using Common.Helper;
-using Model;
-
-namespace Modules.BehaviorTreeModule
-{
-	/// <summary>
-	/// NodeDataEditor.xaml 的交互逻辑
-	/// </summary>
-	public partial class NodeDataEditor
-	{
-		private readonly string[] nodeTypes;
-
-		public NodeDataEditor()
-		{
-			this.InitializeComponent();
-
-			this.nodeTypes = Enum.GetNames(typeof (NodeType));
-			Array.Sort(this.nodeTypes);
-			this.cbType.ItemsSource = this.nodeTypes;
-		}
-
-		public AllTreeView AllTreeView { get; set; }
-
-		public TreeNodeViewModel TreeNodeViewModel
-		{
-			get
-			{
-				return this.DataContext as TreeNodeViewModel;
-			}
-			set
-			{
-				this.DataContext = value;
-			}
-		}
-
-		private void OnDataContextChanged(object sender, DependencyPropertyChangedEventArgs e)
-		{
-			if (this.TreeNodeViewModel == null)
-			{
-				return;
-			}
-			string typeStr = ((NodeType) this.TreeNodeViewModel.Type).ToString();
-			int selectIndex = Array.IndexOf(this.nodeTypes, typeStr);
-			this.cbType.SelectedIndex = selectIndex;
-		}
-
-		private void CbType_OnSelectionChanged(object sender, SelectionChangedEventArgs e)
-		{
-			if (this.TreeNodeViewModel == null)
-			{
-				return;
-			}
-			if (this.cbType.SelectedValue == null)
-			{
-				this.TreeNodeViewModel.Type = 0;
-				return;
-			}
-			this.TreeNodeViewModel.Type =
-					(int) EnumHelper.FromString<NodeType>(this.cbType.SelectedValue.ToString().Trim());
-		}
-	}
-}

+ 0 - 42
CSharp/App/Modules/BehaviorTreeModule/NodeTypeColorConverter.cs

@@ -1,42 +0,0 @@
-using System;
-using System.Globalization;
-using System.Windows.Data;
-using Model;
-
-namespace Modules.BehaviorTreeModule
-{
-	[ValueConversion(typeof (int), typeof (int))]
-	public class NodeTypeColorConverter: IValueConverter
-	{
-		public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-		{
-			if (value == null)
-			{
-				return 0;
-			}
-			int nodeType = (int) value;
-			if (nodeType == (int) NodeType.Selector)
-			{
-				return "selector";
-			}
-			if (nodeType == (int) NodeType.Sequence)
-			{
-				return "sequence";
-			}
-			if (nodeType < 20000 && nodeType >= 10000)
-			{
-				return "condition";
-			}
-			if (nodeType < 30000 && nodeType >= 20000)
-			{
-				return "action";
-			}
-			return "other";
-		}
-
-		public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
-		{
-			return null;
-		}
-	}
-}

+ 0 - 25
CSharp/App/Modules/BehaviorTreeModule/NodeTypeToStringConverter.cs

@@ -1,25 +0,0 @@
-using System;
-using System.Globalization;
-using System.Windows.Data;
-using Model;
-
-namespace Modules.BehaviorTreeModule
-{
-	[ValueConversion(typeof (int), typeof (string))]
-	public class NodeTypeToStringConverter: IValueConverter
-	{
-		public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
-		{
-			if (value == null)
-			{
-				return "";
-			}
-			return ((NodeType) (int) value).ToString();
-		}
-
-		public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
-		{
-			return null;
-		}
-	}
-}

+ 0 - 186
CSharp/App/Modules/BehaviorTreeModule/TreeLayout.cs

@@ -1,186 +0,0 @@
-using Common.Logger;
-
-namespace Modules.BehaviorTreeModule
-{
-	public class TreeLayout
-	{
-		private readonly TreeViewModel treeViewModel;
-		private const double XGap = 20;
-		private const double YGap = 10;
-		private double rootOrigX;
-		private double rootOrigY;
-		private double rootOffsetX;
-		private double rootOffsetY;
-
-		public TreeLayout(TreeViewModel treeViewModel)
-		{
-			this.treeViewModel = treeViewModel;
-		}
-
-		private TreeNodeViewModel LeftMostOffspring(
-				TreeNodeViewModel treeNodeViewModel, int currentLevel, int searchLevel)
-		{
-			if (currentLevel == searchLevel)
-			{
-				return treeNodeViewModel;
-			}
-			for (int i = 0; i < treeNodeViewModel.Children.Count; ++i)
-			{
-				TreeNodeViewModel child = treeNodeViewModel.Children[i];
-				child.AncestorModify = treeNodeViewModel.Modify + treeNodeViewModel.AncestorModify;
-				TreeNodeViewModel offspring = this.LeftMostOffspring(child, currentLevel + 1, searchLevel);
-				if (offspring == null)
-				{
-					continue;
-				}
-				return offspring;
-			}
-			return null;
-		}
-
-		private TreeNodeViewModel RightMostOffspring(
-				TreeNodeViewModel treeNodeViewModel, int currentLevel, int searchLevel)
-		{
-			if (currentLevel == searchLevel)
-			{
-				return treeNodeViewModel;
-			}
-			for (int i = treeNodeViewModel.Children.Count - 1; i >= 0; --i)
-			{
-				TreeNodeViewModel child = treeNodeViewModel.Children[i];
-				child.AncestorModify = treeNodeViewModel.Modify + treeNodeViewModel.AncestorModify;
-				TreeNodeViewModel offspring = this.RightMostOffspring(child, currentLevel + 1, searchLevel);
-				if (offspring == null)
-				{
-					continue;
-				}
-				return offspring;
-			}
-			return null;
-		}
-
-		private void AjustSubTreeGap(TreeNodeViewModel left, TreeNodeViewModel right)
-		{
-			double offset = 0;
-			TreeNodeViewModel tLeft = left;
-			TreeNodeViewModel tRight = right;
-			left.AncestorModify = 0;
-			right.AncestorModify = 0;
-			for (int i = 0; tLeft != null && tRight != null; ++i)
-			{
-				double tGap = (tRight.Prelim + tRight.AncestorModify) - (tLeft.Prelim + tLeft.AncestorModify);
-				if (XGap + TreeNodeViewModel.Width - tGap > offset)
-				{
-					offset = XGap + TreeNodeViewModel.Width - tGap;
-				}
-				tLeft = this.RightMostOffspring(left, 0, i + 1);
-				tRight = this.LeftMostOffspring(right, 0, i + 1);
-			}
-			right.Modify += offset;
-			right.Prelim += offset;
-		}
-
-		private void AjustTreeGap(TreeNodeViewModel treeNodeViewModel)
-		{
-			for (int i = 0; i < treeNodeViewModel.Children.Count - 1; ++i)
-			{
-				for (int j = i + 1; j < treeNodeViewModel.Children.Count; ++j)
-				{
-					TreeNodeViewModel left = treeNodeViewModel.Children[i];
-					TreeNodeViewModel right = treeNodeViewModel.Children[j];
-					this.AjustSubTreeGap(left, right);
-				}
-			}
-		}
-
-		private void CalculatePrelimAndModify(TreeNodeViewModel treeNodeViewModel)
-		{
-			foreach (TreeNodeViewModel child in treeNodeViewModel.Children)
-			{
-				this.CalculatePrelimAndModify(child);
-			}
-
-			double prelim = 0;
-			double modify = 0;
-
-			if (treeNodeViewModel.IsLeaf)
-			{
-				if (treeNodeViewModel.LeftSibling == null)
-				{
-					// 如果没有左邻居,不需要设置modify
-					prelim = 0;
-				}
-				else
-				{
-					prelim = treeNodeViewModel.LeftSibling.Prelim + TreeNodeViewModel.Width + XGap;
-				}
-			}
-			else
-			{
-				// 调整子树间的间距
-				this.AjustTreeGap(treeNodeViewModel);
-				double childrenCenter = (treeNodeViewModel.FirstChild.Prelim +
-				                         treeNodeViewModel.LastChild.Prelim) / 2;
-				if (treeNodeViewModel.LeftSibling == null)
-				{
-					// 如果没有左邻居,不需要设置modify
-					prelim = childrenCenter;
-				}
-				else
-				{
-					prelim = treeNodeViewModel.LeftSibling.Prelim + TreeNodeViewModel.Width + XGap;
-					modify = prelim - childrenCenter;
-				}
-			}
-			treeNodeViewModel.Prelim = prelim;
-			treeNodeViewModel.Modify = modify;
-
-			Log.Debug("Id: " + treeNodeViewModel.Id + " Prelim: " + treeNodeViewModel.Prelim + " Modify: " + treeNodeViewModel.Modify);
-		}
-
-		private void CalculateRelativeXAndY(
-				TreeNodeViewModel treeNodeViewModel, int level, double totalModify)
-		{
-			foreach (TreeNodeViewModel child in treeNodeViewModel.Children)
-			{
-				this.CalculateRelativeXAndY(child, level + 1, treeNodeViewModel.Modify + totalModify);
-			}
-			if (treeNodeViewModel.IsLeaf)
-			{
-				treeNodeViewModel.XX = treeNodeViewModel.Prelim + totalModify;
-			}
-			else
-			{
-				treeNodeViewModel.XX = (treeNodeViewModel.FirstChild.XX + treeNodeViewModel.LastChild.XX) / 2;
-			}
-			treeNodeViewModel.YY = level * (TreeNodeViewModel.Height + YGap);
-		}
-
-		private void FixXAndY(TreeNodeViewModel treeNode)
-		{
-			treeNode.XX += this.rootOffsetX;
-			treeNode.YY += this.rootOffsetY;
-			foreach (TreeNodeViewModel child in treeNode.Children)
-			{
-				this.FixXAndY(child);
-			}
-		}
-
-		public void ExcuteLayout()
-		{
-			TreeNodeViewModel root = this.treeViewModel.Root;
-			if (root == null)
-			{
-				return;
-			}
-			this.rootOrigX = root.XX;
-			this.rootOrigY = root.YY;
-			this.CalculatePrelimAndModify(root);
-			this.CalculateRelativeXAndY(root, 0, 0);
-
-			this.rootOffsetX = this.rootOrigX - root.XX;
-			this.rootOffsetY = this.rootOrigY - root.YY;
-			this.FixXAndY(root);
-		}
-	}
-}

+ 0 - 415
CSharp/App/Modules/BehaviorTreeModule/TreeNodeViewModel.cs

@@ -1,415 +0,0 @@
-using System;
-using System.Collections.Generic;
-using Common.Helper;
-using Microsoft.Practices.Prism.Mvvm;
-using MongoDB.Bson.Serialization.Attributes;
-
-namespace Modules.BehaviorTreeModule
-{
-	[BsonDiscriminator("NodeProto", RootClass = true)]
-	public class TreeNodeViewModel: BindableBase, ICloneable
-	{
-		[BsonId]
-		private int id;
-		[BsonElement]
-		private int type;
-		[BsonElement, BsonIgnoreIfNull]
-		private List<string> args;
-		[BsonElement, BsonIgnoreIfNull]
-		private string comment;
-		[BsonElement, BsonIgnoreIfNull]
-		private List<TreeNodeViewModel> children = new List<TreeNodeViewModel>();
-
-		private TreeNodeViewModel parent;
-
-		private static double width = 80;
-		private static double height = 50;
-
-		private double x;
-		private double y;
-		private double connectorX2;
-		private double connectorY2;
-		private double prelim;
-		private double modify;
-		private double ancestorModify;
-		private bool isFold;
-
-		[BsonIgnore]
-		public TreeViewModel TreeViewModel { get; set; }
-
-		public TreeNodeViewModel(TreeViewModel treeViewModel, double x, double y)
-		{
-			this.TreeViewModel = treeViewModel;
-			this.x = x;
-			this.y = y;
-			this.id = ++treeViewModel.MaxNodeId;
-			this.connectorX2 = 0;
-			this.connectorY2 = Height / 2;
-		}
-
-		public TreeNodeViewModel(TreeViewModel treeViewModel, TreeNodeViewModel parent)
-		{
-			this.TreeViewModel = treeViewModel;
-			this.Id = ++treeViewModel.MaxNodeId;
-			this.Parent = parent;
-
-			this.connectorX2 = Width + this.Parent.XX - this.XX;
-			this.connectorY2 = Height / 2 + this.Parent.YY - this.YY;
-		}
-
-		[BsonIgnore]
-		public int Id
-		{
-			get
-			{
-				return this.id;
-			}
-			set
-			{
-				if (this.id == value)
-				{
-					return;
-				}
-				this.id = value;
-				this.OnPropertyChanged("Id");
-			}
-		}
-
-		[BsonIgnore]
-		public string Comment
-		{
-			get
-			{
-				return this.comment;
-			}
-			set
-			{
-				if (this.comment == value)
-				{
-					return;
-				}
-				this.comment = value;
-				if (this.IsRoot)
-				{
-					this.TreeViewModel.Comment = this.comment;
-				}
-				this.OnPropertyChanged("Comment");
-			}
-		}
-
-		[BsonIgnore]
-		public static double Width
-		{
-			get
-			{
-				return width;
-			}
-			set
-			{
-				width = value;
-			}
-		}
-
-		[BsonIgnore]
-		public static double Height
-		{
-			get
-			{
-				return height;
-			}
-			set
-			{
-				height = value;
-			}
-		}
-
-		[BsonIgnore]
-		public bool IsRoot
-		{
-			get
-			{
-				return this.Parent == null;
-			}
-		}
-
-		[BsonIgnore]
-		public double Prelim
-		{
-			get
-			{
-				return this.prelim;
-			}
-			set
-			{
-				this.prelim = value;
-			}
-		}
-
-		[BsonIgnore]
-		public double Modify
-		{
-			get
-			{
-				return this.modify;
-			}
-			set
-			{
-				this.modify = value;
-			}
-		}
-
-		[BsonIgnore]
-		public double XX
-		{
-			get
-			{
-				return this.x;
-			}
-			set
-			{
-				if (Math.Abs(this.x - value) < 0.1)
-				{
-					return;
-				}
-				this.x = value;
-				this.OnPropertyChanged("XX");
-
-				if (this.Parent != null)
-				{
-					this.ConnectorX2 = Width / 2 + this.Parent.XX - this.XX;
-				}
-
-				foreach (TreeNodeViewModel child in this.Children)
-				{
-					child.ConnectorX2 = Width / 2 + this.XX - child.XX;
-				}
-			}
-		}
-
-		[BsonIgnore]
-		public double YY
-		{
-			get
-			{
-				return this.y;
-			}
-			set
-			{
-				if (Math.Abs(this.YY - value) < 0.1)
-				{
-					return;
-				}
-
-				this.y = value;
-				this.OnPropertyChanged("YY");
-
-				if (this.Parent != null)
-				{
-					this.ConnectorY2 = Height + this.Parent.YY - this.YY;
-				}
-
-				foreach (TreeNodeViewModel child in this.Children)
-				{
-					child.ConnectorY2 = Height + this.YY - child.YY;
-				}
-			}
-		}
-
-		[BsonIgnore]
-		public double ConnectorX1
-		{
-			get
-			{
-				return Width / 2;
-			}
-		}
-
-		[BsonIgnore]
-		public double ConnectorY1
-		{
-			get
-			{
-				return 0;
-			}
-		}
-
-		[BsonIgnore]
-		public double ConnectorX2
-		{
-			get
-			{
-				return this.IsRoot? Width / 2 : this.connectorX2;
-			}
-			set
-			{
-				this.SetProperty(ref this.connectorX2, value);
-			}
-		}
-
-		[BsonIgnore]
-		public double ConnectorY2
-		{
-			get
-			{
-				return this.IsRoot? 0 : this.connectorY2;
-			}
-			set
-			{
-				this.SetProperty(ref this.connectorY2, value);
-			}
-		}
-
-		[BsonIgnore]
-		public int Type
-		{
-			get
-			{
-				return this.type;
-			}
-			set
-			{
-				if (this.type == value)
-				{
-					return;
-				}
-				this.type = value;
-				this.OnPropertyChanged("Type");
-			}
-		}
-
-		[BsonIgnore]
-		public List<string> Args
-		{
-			get
-			{
-				return this.args;
-			}
-			set
-			{
-				if (this.args == value)
-				{
-					return;
-				}
-				this.args = value;
-				this.OnPropertyChanged("Args");
-			}
-		}
-
-		[BsonIgnore]
-		public TreeNodeViewModel Parent
-		{
-			get
-			{
-				return parent;
-			}
-			set
-			{
-				this.parent = value;
-			}
-		}
-
-		/// <summary>
-		/// 节点是否折叠
-		/// </summary>
-		[BsonIgnore]
-		public bool IsFold
-		{
-			get
-			{
-				return this.isFold;
-			}
-			set
-			{
-				if (this.isFold == value)
-				{
-					return;
-				}
-				this.isFold = value;
-				this.OnPropertyChanged("IsFold");
-			}
-		}
-
-		[BsonIgnore]
-		public List<TreeNodeViewModel> Children
-		{
-			get
-			{
-				if (this.isFold)
-				{
-					return new List<TreeNodeViewModel>();
-				}
-				return this.children;
-			}
-			set
-			{
-				this.children = value;
-			}
-		}
-
-		[BsonIgnore]
-		public TreeNodeViewModel LeftSibling
-		{
-			get
-			{
-				if (this.IsRoot)
-				{
-					return null;
-				}
-
-				int index = this.Parent.Children.IndexOf(this);
-				return index == 0? null : this.Parent.Children[index - 1];
-			}
-		}
-
-		[BsonIgnore]
-		public TreeNodeViewModel LastChild
-		{
-			get
-			{
-				if (this.Children.Count == 0)
-				{
-					return null;
-				}
-
-				int maxIndex = this.Children.Count - 1;
-				return this.Children[maxIndex];
-			}
-		}
-
-		[BsonIgnore]
-		public TreeNodeViewModel FirstChild
-		{
-			get
-			{
-				return this.Children.Count == 0? null : this.Children[0];
-			}
-		}
-
-		[BsonIgnore]
-		public bool IsLeaf
-		{
-			get
-			{
-				return this.Children.Count == 0;
-			}
-		}
-
-		[BsonIgnore]
-		public double AncestorModify
-		{
-			get
-			{
-				return this.ancestorModify;
-			}
-			set
-			{
-				this.ancestorModify = value;
-			}
-		}
-
-		public object Clone()
-		{
-			return MongoHelper.FromJson<TreeNodeViewModel>(MongoHelper.ToJson(this));
-		}
-	}
-}

+ 0 - 104
CSharp/App/Modules/BehaviorTreeModule/TreeView.xaml

@@ -1,104 +0,0 @@
-<UserControl x:Class="Modules.BehaviorTreeModule.TreeView"
-             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
-             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
-             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
-             xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
-             xmlns:tree="clr-namespace:Modules.BehaviorTreeModule"
-             mc:Ignorable="d"
-             d:DesignHeight="300" d:DesignWidth="300"
-			 d:DataContext="{d:DesignInstance tree:TreeViewModel}" HorizontalAlignment="Stretch">
-
-	<UserControl.Resources>
-		<tree:ListToStringConverter x:Key="ListToStringConverter"/>
-
-		<LinearGradientBrush x:Key="treeNodeSelectorFillBrush" StartPoint="0,0" EndPoint="0,1">
-			<GradientStop Color="White" Offset="0" />
-			<GradientStop Color="#FFF37FFF" Offset="0.6" />
-		</LinearGradientBrush>
-		<LinearGradientBrush x:Key="treeNodeOtherFillBrush" StartPoint="0,0" EndPoint="0,1">
-			<GradientStop Color="White" Offset="0" />
-			<GradientStop Color="#FFF59202" Offset="0.6" />
-		</LinearGradientBrush>
-		<LinearGradientBrush x:Key="treeNodeActionFillBrush" StartPoint="0,0" EndPoint="0,1">
-			<GradientStop Color="White" Offset="0" />
-			<GradientStop Color="#FF06F31C" Offset="0.6" />
-		</LinearGradientBrush>
-		<LinearGradientBrush x:Key="treeNodeSequenceFillBrush" StartPoint="0,0" EndPoint="0,1">
-			<GradientStop Color="White" Offset="0" />
-			<GradientStop Color="#FFF3EF91" Offset="0.6" />
-		</LinearGradientBrush>
-		<LinearGradientBrush x:Key="treeNodeConditionFillBrush" StartPoint="0,0" EndPoint="0,1">
-			<GradientStop Color="White" Offset="0" />
-			<GradientStop Color="#FF06CBF7" Offset="0.6" />
-		</LinearGradientBrush>
-		<SolidColorBrush x:Key="treeNodeBorderBrush" Color="Black" />
-
-		<tree:NodeTypeColorConverter x:Key="NodeTypeColorConverter"/>
-		<tree:NodeTypeToStringConverter x:Key="NodeTypeToStringConverter"/>
-		<tree:FolderVisiableConverter x:Key="FolderVisiableConverter"/>
-	</UserControl.Resources>
-
-	<Grid>
-		<ListBox Name="listBox" SelectionMode="Single" ItemsSource="{Binding AllNodes}" VerticalAlignment="Stretch" HorizontalAlignment="Stretch">
-			<ListBox.ContextMenu>
-				<ContextMenu>
-					<MenuItem Header="新建" Click="MenuItem_New" />
-					<MenuItem Header="删除" Click="MenuItem_Remove" />
-					<MenuItem Header="复制" Click="MenuItem_Copy" />
-					<MenuItem Header="粘贴" Click="MenuItem_Paste" />
-					<MenuItem Header="左移" Click="MenuItem_MoveLeft" />
-					<MenuItem Header="右移" Click="MenuItem_MoveRight" />
-					<MenuItem Header="折叠/展开" Click="MenuItem_Fold" />
-				</ContextMenu>
-			</ListBox.ContextMenu>
-			<ListBox.Resources>
-				<Style TargetType="{x:Type ListBoxItem}">
-					<Setter Property="Canvas.Left" Value="{Binding XX}" />
-					<Setter Property="Canvas.Top" Value="{Binding YY}" />
-				</Style>
-			</ListBox.Resources>
-			<ListBox.ItemsPanel>
-				<ItemsPanelTemplate>
-					<Canvas AllowDrop="True" />
-				</ItemsPanelTemplate>
-			</ListBox.ItemsPanel>
-			<ListBox.ItemTemplate>
-				<DataTemplate DataType="tree:TreeNodeViewModel">
-					<Canvas MouseDown="ListBoxItem_MouseDown" MouseUp="ListBoxItem_MouseUp" MouseMove="ListBoxItem_MouseMove"
-							PreviewMouseLeftButtonDown="ListBoxItem_PreviewMouseLeftButtonDown"
-							PreviewMouseLeftButtonUp="ListBoxItem_PreviewMouseLeftButtonUp" Background="#FFD62121" >
-						<Rectangle Name="rectNode" Width="{Binding Width}" Height="{Binding Height}" Cursor="Hand" StrokeThickness="0"
-								RadiusX="10" RadiusY="10" Stroke="{StaticResource treeNodeBorderBrush}" Fill="{StaticResource treeNodeSelectorFillBrush}"/>
-						<Label Content="+" Visibility="{Binding IsFold, Converter={StaticResource FolderVisiableConverter}}" Canvas.Left="60" Canvas.Top="10"/>
-						<Label Content="{Binding Type, Converter={StaticResource NodeTypeToStringConverter}}" Canvas.Top="0"/>
-						<Label Content="{Binding Args, Converter={StaticResource ListToStringConverter}, UpdateSourceTrigger=PropertyChanged}" Canvas.Top="15"/>
-						<Label Content="{Binding Comment}" Canvas.Top="30"/>
-						<Line X1="{Binding ConnectorX1}" Y1="{Binding ConnectorY1}" X2="{Binding ConnectorX2}" Y2="{Binding ConnectorY2}"
-								Stroke="Black" StrokeThickness="2"  />
-					</Canvas>
-					<DataTemplate.Triggers>
-						<DataTrigger Binding="{Binding RelativeSource={RelativeSource Mode=FindAncestor, AncestorType={x:Type ListBoxItem}}, Path=IsSelected}" Value="True">
-							<Setter TargetName="rectNode" Property="Stroke" Value="Green" />
-							<Setter TargetName="rectNode" Property="StrokeThickness" Value="2" />
-						</DataTrigger>
-						<DataTrigger Binding="{Binding Type, Converter={StaticResource NodeTypeColorConverter}}" Value="selector">
-							<Setter TargetName="rectNode" Property="Fill" Value="{StaticResource treeNodeSelectorFillBrush}" />
-						</DataTrigger>
-						<DataTrigger Binding="{Binding Type, Converter={StaticResource NodeTypeColorConverter}}" Value="sequence">
-							<Setter TargetName="rectNode" Property="Fill" Value="{StaticResource treeNodeSequenceFillBrush}" />
-						</DataTrigger>
-						<DataTrigger Binding="{Binding Type, Converter={StaticResource NodeTypeColorConverter}}" Value="condition">
-							<Setter TargetName="rectNode" Property="Fill" Value="{StaticResource treeNodeConditionFillBrush}" />
-						</DataTrigger>
-						<DataTrigger Binding="{Binding Type, Converter={StaticResource NodeTypeColorConverter}}" Value="action">
-							<Setter TargetName="rectNode" Property="Fill" Value="{StaticResource treeNodeActionFillBrush}" />
-						</DataTrigger>
-						<DataTrigger Binding="{Binding Type, Converter={StaticResource NodeTypeColorConverter}}" Value="other">
-							<Setter TargetName="rectNode" Property="Fill" Value="{StaticResource treeNodeOtherFillBrush}" />
-						</DataTrigger>
-					</DataTemplate.Triggers>
-				</DataTemplate>
-			</ListBox.ItemTemplate>
-		</ListBox>
-	</Grid>
-</UserControl>

+ 0 - 261
CSharp/App/Modules/BehaviorTreeModule/TreeView.xaml.cs

@@ -1,261 +0,0 @@
-using System;
-using System.Windows;
-using System.Windows.Input;
-using Common.Logger;
-using Model;
-
-namespace Modules.BehaviorTreeModule
-{
-	public partial class TreeView
-	{
-		private const double DragThreshold = 5;
-		private bool isDragging;
-		private bool isLeftButtonDown;
-		private Point origMouseDownPoint;
-		private TreeNodeViewModel moveFromNode;
-
-		public AllTreeView AllTreeView { get; set; }
-
-		public TreeView()
-		{
-			this.InitializeComponent();
-		}
-
-		public TreeViewModel ViewModel
-		{
-			get
-			{
-				return this.DataContext as TreeViewModel;
-			}
-			set
-			{
-				this.DataContext = value;
-			}
-		}
-
-		public bool IsDragging
-		{
-			get
-			{
-				return this.isDragging;
-			}
-			set
-			{
-				//Mouse.SetCursor(value == false? Cursors.Arrow : Cursors.Hand);
-				this.isDragging = value;
-			}
-		}
-
-		private void ListBoxItem_MouseDown(object sender, MouseButtonEventArgs e)
-		{
-		}
-
-		private void ListBoxItem_MouseUp(object sender, MouseButtonEventArgs e)
-		{
-			if (!this.isLeftButtonDown)
-			{
-				this.IsDragging = false;
-				return;
-			}
-
-			var item = (FrameworkElement) sender;
-			var treeNodeViewModel = item.DataContext as TreeNodeViewModel;
-
-			if (!this.IsDragging)
-			{
-				this.listBox.SelectedItem = treeNodeViewModel;
-			}
-
-			this.isLeftButtonDown = false;
-			this.IsDragging = false;
-
-			item.ReleaseMouseCapture();
-			e.Handled = true;
-		}
-
-		private void ListBoxItem_MouseMove(object sender, MouseEventArgs e)
-		{
-			var item = (FrameworkElement) sender;
-			var treeNodeViewModel = item.DataContext as TreeNodeViewModel;
-			if (treeNodeViewModel == null)
-			{
-				return;
-			}
-
-			Point curMouseDownPoint;
-			Vector dragDelta;
-			// 拖动根节点,移动整个树
-			if (this.IsDragging && treeNodeViewModel.IsRoot)
-			{
-				if (this.moveFromNode == null || !this.moveFromNode.IsRoot)
-				{
-					return;
-				}
-				curMouseDownPoint = e.GetPosition(this);
-				dragDelta = curMouseDownPoint - this.origMouseDownPoint;
-
-				this.origMouseDownPoint = curMouseDownPoint;
-
-				this.ViewModel.MoveToPosition(dragDelta.X, dragDelta.Y);
-				return;
-			}
-
-			if (e.LeftButton != MouseButtonState.Pressed)
-			{
-				this.IsDragging = false;
-				this.moveFromNode = null;
-				return;
-			}
-
-			curMouseDownPoint = e.GetPosition(this);
-			dragDelta = curMouseDownPoint - this.origMouseDownPoint;
-			double dragDistance = Math.Abs(dragDelta.Length);
-			if (dragDistance > DragThreshold)
-			{
-				this.IsDragging = true;
-			}
-			e.Handled = true;
-		}
-
-		private void ListBoxItem_PreviewMouseLeftButtonDown(object sender, MouseEventArgs e)
-		{
-			this.origMouseDownPoint = e.GetPosition(this);
-			FrameworkElement item = (FrameworkElement) sender;
-			TreeNodeViewModel treeNodeViewModel = item.DataContext as TreeNodeViewModel;
-
-			this.listBox.SelectedItem = treeNodeViewModel;
-			this.moveFromNode = treeNodeViewModel;
-
-			this.AllTreeView.nodeDataEditor.DataContext = treeNodeViewModel;
-		}
-
-		private void ListBoxItem_PreviewMouseLeftButtonUp(object sender, MouseEventArgs e)
-		{
-			if (this.moveFromNode == null)
-			{
-				return;
-			}
-			if (this.moveFromNode.IsRoot)
-			{
-				return;
-			}
-			FrameworkElement item = (FrameworkElement) sender;
-			TreeNodeViewModel moveToNode = item.DataContext as TreeNodeViewModel;
-			Log.Debug("move to node: {0} {1}", this.moveFromNode.Id, moveToNode.Id);
-			if (this.moveFromNode.Id == moveToNode.Id)
-			{
-				return;
-			}
-			this.ViewModel.MoveToNode(this.moveFromNode, moveToNode);
-			this.moveFromNode = null;
-		}
-
-		private void MenuItem_New(object sender, RoutedEventArgs e)
-		{
-			if (this.ViewModel == null)
-			{
-				return;
-			}
-
-			Point point = Mouse.GetPosition(this.listBox);
-
-			// one root node
-			if (this.ViewModel.AllNodes.Count == 0)
-			{
-				TreeNodeViewModel addTreeNode = new TreeNodeViewModel(this.ViewModel, point.X, point.Y)
-				{
-					Type = (int) NodeType.Selector
-				};
-				this.ViewModel.Add(addTreeNode, null);
-			}
-			else
-			{
-				if (this.listBox.SelectedItem != null)
-				{
-					TreeNodeViewModel parentNode = this.listBox.SelectedItem as TreeNodeViewModel;
-					TreeNodeViewModel addTreeNode = new TreeNodeViewModel(this.ViewModel, parentNode)
-					{
-						Type = (int) NodeType.Selector,
-					};
-					this.ViewModel.Add(addTreeNode, parentNode);
-				}
-			}
-			this.listBox.SelectedItem = null;
-			e.Handled = true;
-		}
-
-		private void MenuItem_Remove(object sender, RoutedEventArgs e)
-		{
-			if (this.listBox.SelectedItem == null)
-			{
-				return;
-			}
-			TreeNodeViewModel treeNodeViewModel = this.listBox.SelectedItem as TreeNodeViewModel;
-			if (treeNodeViewModel.IsRoot)
-			{
-				return;
-			}
-			this.ViewModel.Remove(treeNodeViewModel);
-			this.listBox.SelectedItem = null;
-			e.Handled = true;
-		}
-
-		private void MenuItem_Fold(object sender, RoutedEventArgs e)
-		{
-			if (this.listBox.SelectedItem == null)
-			{
-				return;
-			}
-			TreeNodeViewModel treeNodeViewModel = this.listBox.SelectedItem as TreeNodeViewModel;
-
-			if (treeNodeViewModel.IsFold)
-			{
-				this.ViewModel.UnFold(treeNodeViewModel);
-			}
-			else
-			{
-				this.ViewModel.Fold(treeNodeViewModel);
-			}
-		}
-
-		private void MenuItem_MoveLeft(object sender, RoutedEventArgs e)
-		{
-			if (this.listBox.SelectedItem == null)
-			{
-				return;
-			}
-			TreeNodeViewModel treeNodeViewModel = this.listBox.SelectedItem as TreeNodeViewModel;
-			this.ViewModel.MoveLeft(treeNodeViewModel);
-		}
-
-		private void MenuItem_MoveRight(object sender, RoutedEventArgs e)
-		{
-			if (this.listBox.SelectedItem == null)
-			{
-				return;
-			}
-			TreeNodeViewModel treeNodeViewModel = this.listBox.SelectedItem as TreeNodeViewModel;
-			this.ViewModel.MoveRight(treeNodeViewModel);
-		}
-
-		private void MenuItem_Copy(object sender, RoutedEventArgs e)
-		{
-			if (this.listBox.SelectedItem == null)
-			{
-				return;
-			}
-			TreeNodeViewModel treeNodeViewModel = this.listBox.SelectedItem as TreeNodeViewModel;
-			this.ViewModel.Copy(treeNodeViewModel);
-		}
-
-		private void MenuItem_Paste(object sender, RoutedEventArgs e)
-		{
-			if (this.listBox.SelectedItem == null)
-			{
-				return;
-			}
-			TreeNodeViewModel treeNodeViewModel = this.listBox.SelectedItem as TreeNodeViewModel;
-			this.ViewModel.Paste(treeNodeViewModel);
-		}
-	}
-}

+ 0 - 358
CSharp/App/Modules/BehaviorTreeModule/TreeViewModel.cs

@@ -1,358 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Collections.ObjectModel;
-using System.ComponentModel;
-using System.ComponentModel.Composition;
-using Common.Helper;
-using Microsoft.Practices.Prism.Mvvm;
-using MongoDB.Bson.Serialization.Attributes;
-
-namespace Modules.BehaviorTreeModule
-{
-	[BsonDiscriminator("TreeProto", RootClass = true)]
-	[Export(typeof (TreeViewModel)), PartCreationPolicy(CreationPolicy.NonShared)]
-	public class TreeViewModel: BindableBase, ICloneable, ISupportInitialize
-	{
-		[BsonId]
-		private int id;
-		[BsonElement]
-		private int maxNodeId;
-		[BsonElement]
-		private TreeNodeViewModel root;
-        [BsonIgnore]
-		public ObservableCollection<TreeNodeViewModel> allNodes = new ObservableCollection<TreeNodeViewModel>();
-
-		[BsonIgnore]
-		public ObservableCollection<TreeNodeViewModel> AllNodes
-		{
-			get
-			{
-				return this.allNodes;
-			}
-		}
-
-		[BsonIgnore]
-		public int Id
-		{
-			get
-			{
-				return this.id;
-			}
-			set
-			{
-				if (this.id == value)
-				{
-					return;
-				}
-				this.id = value;
-				this.OnPropertyChanged("id");
-			}
-		}
-
-		[BsonIgnore]
-		public string Comment
-		{
-			get
-			{
-				if (this.root == null)
-				{
-					return "";
-				}
-				return this.root.Comment;
-			}
-			set
-			{
-				this.OnPropertyChanged("Comment");
-			}
-		}
-
-		[BsonIgnore]
-		public int MaxNodeId 
-		{
-			get
-			{
-				return this.maxNodeId;
-			}
-			set
-			{
-				this.maxNodeId = value;
-			} 
-		}
-
-		[BsonIgnore]
-		public TreeNodeViewModel copy;
-        
-		[BsonIgnore]
-		public TreeNodeViewModel Root
-		{
-			get
-			{
-				return this.root;
-			}
-			set
-			{
-				this.root = value;
-			}
-		}
-
-		public void Add(TreeNodeViewModel treeNode, TreeNodeViewModel parent)
-		{
-			// 如果父节点是折叠的,需要先展开父节点
-			if (parent != null)
-			{
-				if (parent.IsFold)
-				{
-					this.UnFold(parent);
-				}
-				treeNode.Parent = parent;
-				parent.Children.Add(treeNode);
-			}
-			else
-			{
-				this.root = treeNode;
-			}
-
-			treeNode.TreeViewModel = this;
-			allNodes.Add(treeNode);
-
-			TreeLayout treeLayout = new TreeLayout(this);
-			treeLayout.ExcuteLayout();
-		}
-
-		private void GetChildrenIdAndSelf(TreeNodeViewModel treeNodeViewModel, List<TreeNodeViewModel> children)
-		{
-			children.Add(treeNodeViewModel);
-			this.GetAllChildrenId(treeNodeViewModel, children);
-		}
-
-		private void GetAllChildrenId(TreeNodeViewModel treeNodeViewModel, List<TreeNodeViewModel> children)
-		{
-			foreach (TreeNodeViewModel child in treeNodeViewModel.Children)
-			{
-				children.Add(child);
-				this.GetAllChildrenId(child, children);
-			}
-		}
-
-		public void Remove(TreeNodeViewModel treeNodeViewModel)
-		{
-			var all = new List<TreeNodeViewModel>();
-			this.GetChildrenIdAndSelf(treeNodeViewModel, all);
-
-			foreach (TreeNodeViewModel child in all)
-			{
-				this.allNodes.Remove(child);
-			}
-
-			TreeNodeViewModel parent = treeNodeViewModel.Parent;
-			if (parent != null)
-			{
-				parent.Children.Remove(treeNodeViewModel);
-			}
-
-			TreeLayout treeLayout = new TreeLayout(this);
-			treeLayout.ExcuteLayout();
-		}
-
-		private void RecursionMove(TreeNodeViewModel treeNodeViewModel, double offsetX, double offsetY)
-		{
-			treeNodeViewModel.XX += offsetX;
-			treeNodeViewModel.YY += offsetY;
-			foreach (TreeNodeViewModel child in treeNodeViewModel.Children)
-			{
-				this.RecursionMove(child, offsetX, offsetY);
-			}
-		}
-
-		public void MoveToPosition(double offsetX, double offsetY)
-		{
-			this.RecursionMove(this.Root, offsetX, offsetY);
-		}
-
-		public void MoveToNode(TreeNodeViewModel from, TreeNodeViewModel to)
-		{
-			// from节点不能是to节点的父级节点
-			TreeNodeViewModel tmpNode = to;
-			while (tmpNode != null)
-			{
-				if (tmpNode.IsRoot)
-				{
-					break;
-				}
-				if (tmpNode.Id == from.Id)
-				{
-					return;
-				}
-				tmpNode = tmpNode.Parent;
-			}
-
-			if (from.IsFold)
-			{
-				this.UnFold(from);
-			}
-
-			if (to.IsFold)
-			{
-				this.UnFold(to);
-			}
-			from.Parent.Children.Remove(from);
-			to.Children.Add(from);
-			from.Parent = to;
-			TreeLayout treeLayout = new TreeLayout(this);
-			treeLayout.ExcuteLayout();
-		}
-
-		/// <summary>
-		/// 折叠节点
-		/// </summary>
-		/// <param name="treeNodeViewModel"></param>
-		public void Fold(TreeNodeViewModel treeNodeViewModel)
-		{
-			var allChild = new List<TreeNodeViewModel>();
-			this.GetAllChildrenId(treeNodeViewModel, allChild);
-
-			foreach (TreeNodeViewModel child in allChild)
-			{
-				this.allNodes.Remove(child);
-			}
-
-			treeNodeViewModel.IsFold = true;
-
-			TreeLayout treeLayout = new TreeLayout(this);
-			treeLayout.ExcuteLayout();
-		}
-
-		/// <summary>
-		/// 展开节点,一级一级展开,一次只展开下层子节点,比如下层节点是折叠的,那下下层节点不展开
-		/// </summary>
-		/// <param name="treeNodeViewModel"></param>
-		public void UnFold(TreeNodeViewModel treeNodeViewModel)
-		{
-			treeNodeViewModel.IsFold = false;
-
-			var allChild = new List<TreeNodeViewModel>();
-			this.GetAllChildrenId(treeNodeViewModel, allChild);
-
-			foreach (TreeNodeViewModel child in allChild)
-			{
-				this.allNodes.Add(child);
-			}
-
-			TreeLayout treeLayout = new TreeLayout(this);
-			treeLayout.ExcuteLayout();
-		}
-
-		public void MoveLeft(TreeNodeViewModel treeNodeViewModel)
-		{
-			if (treeNodeViewModel.IsRoot)
-			{
-				return;
-			}
-			TreeNodeViewModel parent = treeNodeViewModel.Parent;
-			int index = parent.Children.IndexOf(treeNodeViewModel);
-			if (index == 0)
-			{
-				return;
-			}
-			parent.Children.Remove(treeNodeViewModel);
-			parent.Children.Insert(index - 1, treeNodeViewModel);
-
-			TreeLayout treeLayout = new TreeLayout(this);
-			treeLayout.ExcuteLayout();
-		}
-
-		public void MoveRight(TreeNodeViewModel treeNodeViewModel)
-		{
-			if (treeNodeViewModel.IsRoot)
-			{
-				return;
-			}
-			TreeNodeViewModel parent = treeNodeViewModel.Parent;
-			int index = parent.Children.IndexOf(treeNodeViewModel);
-			if (index == parent.Children.Count - 1)
-			{
-				return;
-			}
-			parent.Children.Remove(treeNodeViewModel);
-			parent.Children.Insert(index + 1, treeNodeViewModel);
-
-			TreeLayout treeLayout = new TreeLayout(this);
-			treeLayout.ExcuteLayout();
-		}
-
-		public void Copy(TreeNodeViewModel copyTreeNodeViewModel)
-		{
-			this.copy = copyTreeNodeViewModel;
-		}
-
-		public void Paste(TreeNodeViewModel pasteTreeNodeViewModel)
-		{
-			if (this.copy == null)
-			{
-				return;
-			}
-
-			TreeNodeViewModel copyTreeNodeViewModel = this.copy;
-			// copy节点不能是paste节点的父级节点
-			TreeNodeViewModel tmpNode = pasteTreeNodeViewModel;
-			while (tmpNode != null)
-			{
-				if (tmpNode.IsRoot)
-				{
-					break;
-				}
-				if (tmpNode.Id == copyTreeNodeViewModel.Id)
-				{
-					return;
-				}
-				tmpNode = tmpNode.Parent;
-			}
-			this.copy = null;
-			this.CopyTree(copyTreeNodeViewModel, pasteTreeNodeViewModel);
-		}
-
-		private void CopyTree(TreeNodeViewModel copyTreeNodeViewModel, TreeNodeViewModel parent)
-		{
-			TreeNodeViewModel newTreeNodeViewModel = (TreeNodeViewModel)copyTreeNodeViewModel.Clone();
-			newTreeNodeViewModel.Id = ++this.MaxNodeId;
-
-			this.Add(newTreeNodeViewModel, parent);
-
-			foreach (TreeNodeViewModel child in copyTreeNodeViewModel.Children)
-			{
-				this.CopyTree(child, newTreeNodeViewModel);
-			}
-		}
-
-		public object Clone()
-		{
-			return MongoHelper.FromJson<TreeViewModel>(MongoHelper.ToJson(this));
-		}
-
-		private void SetChildParent(TreeNodeViewModel node)
-		{
-			if (node == null)
-			{
-				return;
-			}
-			node.TreeViewModel = this;
-            allNodes.Add(node);
-			foreach (TreeNodeViewModel child in node.Children)
-			{
-				child.Parent = node;
-				SetChildParent(child);
-			}
-		}
-
-		public void BeginInit()
-		{
-		}
-
-		public void EndInit()
-		{
-			SetChildParent(Root);
-			this.Root.XX = 450;
-			this.Root.YY = 20;
-		}
-	}
-}

+ 0 - 19
CSharp/App/Modules/BehaviorTreeModule/app.config

@@ -1,19 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<configuration>
-  <runtime>
-    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
-      <dependentAssembly>
-        <assemblyIdentity name="Microsoft.Practices.ServiceLocation" publicKeyToken="31bf3856ad364e35" culture="neutral"/>
-        <bindingRedirect oldVersion="0.0.0.0-1.3.0.0" newVersion="1.3.0.0"/>
-      </dependentAssembly>
-      <dependentAssembly>
-        <assemblyIdentity name="Microsoft.Practices.Prism.SharedInterfaces" publicKeyToken="31bf3856ad364e35" culture="neutral"/>
-        <bindingRedirect oldVersion="0.0.0.0-1.1.1.0" newVersion="1.1.1.0"/>
-      </dependentAssembly>
-      <dependentAssembly>
-        <assemblyIdentity name="Microsoft.Practices.Prism.PubSubEvents" publicKeyToken="31bf3856ad364e35" culture="neutral"/>
-        <bindingRedirect oldVersion="0.0.0.0-1.1.0.0" newVersion="1.1.0.0"/>
-      </dependentAssembly>
-    </assemblyBinding>
-  </runtime>
-<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2"/></startup></configuration>

+ 0 - 18
CSharp/CMakeLists.txt

@@ -1,18 +0,0 @@
-CMAKE_MINIMUM_REQUIRED(VERSION 2.8.4)
-
-SET_PROPERTY(GLOBAL PROPERTY USE_FOLDERS ON)
-SET(CMAKE_USE_RELATIVE_PATHS ON)
-IF(NOT CMAKE_BUILD_TYPE)
-	SET(CMAKE_BUILD_TYPE "Debug")
-ENDIF()
-
-PROJECT(CSharp)
-
-# 设置头文件查找路径
-INCLUDE_DIRECTORIES(Platform)
-INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}/Platform)
-
-ADD_DEFINITIONS(-DHAS_SOCKLEN_T)
-
-# 子目录
-ADD_SUBDIRECTORY(Platform/ENet)

+ 0 - 89
CSharp/CSharp-Mono.sln

@@ -1,89 +0,0 @@
-
-Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio 2012
-VisualStudioVersion = 12.0.31101.0
-MinimumVisualStudioVersion = 10.0.40219.1
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Game", "Game", "{BEA22CC3-9FA8-4663-82DC-6B2119A8E35E}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Model", "Game\Model\Model.csproj", "{0608C0C1-F584-4092-AAF9-1E99A78E3703}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Controller", "Game\Controller\Controller.csproj", "{7D5B90DF-43AC-42B8-9A52-2B985BC42A5C}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Platform", "Platform", "{0048704C-EEF3-4142-9E94-8A2D6A838D76}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Common", "Platform\Common\Common.csproj", "{F06B995E-6508-4C5C-A396-554316C9215D}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TNet", "Platform\TNet\TNet.csproj", "{B1B78524-3F75-40D7-BF12-10B25A00C590}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UNet", "Platform\UNet\UNet.csproj", "{D3CEA64F-4D75-4DC9-B139-8D12EB4ACF8E}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Exe", "Exe", "{C6DA219F-E1FD-4F0D-8A61-47419D7543B7}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Profile", "Exe\Profile\Profile.csproj", "{EA0D6994-A254-4DFE-9ADC-A29B7005419F}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Test", "Test", "{5988E6F8-A989-4C3A-A80B-4DEF5D941300}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ModelTest", "Test\ModelTest\ModelTest.csproj", "{DEF89A61-8AC7-4CCD-80B8-FC6AA2571E35}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TNetTest", "Test\TNetTest\TNetTest.csproj", "{1888D319-0495-43F3-BA8D-163EC20D9437}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UNetTest", "Test\UNetTest\UNetTest.csproj", "{47A7404D-F501-43C5-8183-4B4E9E8C24B2}"
-EndProject
-Global
-	GlobalSection(SolutionConfigurationPlatforms) = preSolution
-		Debug|Any CPU = Debug|Any CPU
-		Release|Any CPU = Release|Any CPU
-	EndGlobalSection
-	GlobalSection(ProjectConfigurationPlatforms) = postSolution
-		{0608C0C1-F584-4092-AAF9-1E99A78E3703}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{0608C0C1-F584-4092-AAF9-1E99A78E3703}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{0608C0C1-F584-4092-AAF9-1E99A78E3703}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{0608C0C1-F584-4092-AAF9-1E99A78E3703}.Release|Any CPU.Build.0 = Release|Any CPU
-		{1888D319-0495-43F3-BA8D-163EC20D9437}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{1888D319-0495-43F3-BA8D-163EC20D9437}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{1888D319-0495-43F3-BA8D-163EC20D9437}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{1888D319-0495-43F3-BA8D-163EC20D9437}.Release|Any CPU.Build.0 = Release|Any CPU
-		{47A7404D-F501-43C5-8183-4B4E9E8C24B2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{47A7404D-F501-43C5-8183-4B4E9E8C24B2}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{47A7404D-F501-43C5-8183-4B4E9E8C24B2}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{47A7404D-F501-43C5-8183-4B4E9E8C24B2}.Release|Any CPU.Build.0 = Release|Any CPU
-		{7D5B90DF-43AC-42B8-9A52-2B985BC42A5C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{7D5B90DF-43AC-42B8-9A52-2B985BC42A5C}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{7D5B90DF-43AC-42B8-9A52-2B985BC42A5C}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{7D5B90DF-43AC-42B8-9A52-2B985BC42A5C}.Release|Any CPU.Build.0 = Release|Any CPU
-		{B1B78524-3F75-40D7-BF12-10B25A00C590}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{B1B78524-3F75-40D7-BF12-10B25A00C590}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{B1B78524-3F75-40D7-BF12-10B25A00C590}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{B1B78524-3F75-40D7-BF12-10B25A00C590}.Release|Any CPU.Build.0 = Release|Any CPU
-		{D3CEA64F-4D75-4DC9-B139-8D12EB4ACF8E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{D3CEA64F-4D75-4DC9-B139-8D12EB4ACF8E}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{D3CEA64F-4D75-4DC9-B139-8D12EB4ACF8E}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{D3CEA64F-4D75-4DC9-B139-8D12EB4ACF8E}.Release|Any CPU.Build.0 = Release|Any CPU
-		{DEF89A61-8AC7-4CCD-80B8-FC6AA2571E35}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{DEF89A61-8AC7-4CCD-80B8-FC6AA2571E35}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{DEF89A61-8AC7-4CCD-80B8-FC6AA2571E35}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{DEF89A61-8AC7-4CCD-80B8-FC6AA2571E35}.Release|Any CPU.Build.0 = Release|Any CPU
-		{EA0D6994-A254-4DFE-9ADC-A29B7005419F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{EA0D6994-A254-4DFE-9ADC-A29B7005419F}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{EA0D6994-A254-4DFE-9ADC-A29B7005419F}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{EA0D6994-A254-4DFE-9ADC-A29B7005419F}.Release|Any CPU.Build.0 = Release|Any CPU
-		{F06B995E-6508-4C5C-A396-554316C9215D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{F06B995E-6508-4C5C-A396-554316C9215D}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{F06B995E-6508-4C5C-A396-554316C9215D}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{F06B995E-6508-4C5C-A396-554316C9215D}.Release|Any CPU.Build.0 = Release|Any CPU
-	EndGlobalSection
-	GlobalSection(NestedProjects) = preSolution
-		{0608C0C1-F584-4092-AAF9-1E99A78E3703} = {BEA22CC3-9FA8-4663-82DC-6B2119A8E35E}
-		{7D5B90DF-43AC-42B8-9A52-2B985BC42A5C} = {BEA22CC3-9FA8-4663-82DC-6B2119A8E35E}
-		{F06B995E-6508-4C5C-A396-554316C9215D} = {0048704C-EEF3-4142-9E94-8A2D6A838D76}
-		{B1B78524-3F75-40D7-BF12-10B25A00C590} = {0048704C-EEF3-4142-9E94-8A2D6A838D76}
-		{D3CEA64F-4D75-4DC9-B139-8D12EB4ACF8E} = {0048704C-EEF3-4142-9E94-8A2D6A838D76}
-		{EA0D6994-A254-4DFE-9ADC-A29B7005419F} = {C6DA219F-E1FD-4F0D-8A61-47419D7543B7}
-		{DEF89A61-8AC7-4CCD-80B8-FC6AA2571E35} = {5988E6F8-A989-4C3A-A80B-4DEF5D941300}
-		{1888D319-0495-43F3-BA8D-163EC20D9437} = {5988E6F8-A989-4C3A-A80B-4DEF5D941300}
-		{47A7404D-F501-43C5-8183-4B4E9E8C24B2} = {5988E6F8-A989-4C3A-A80B-4DEF5D941300}
-	EndGlobalSection
-	GlobalSection(SolutionProperties) = preSolution
-		HideSolutionNode = FALSE
-	EndGlobalSection
-EndGlobal

+ 0 - 1580
CSharp/CSharp-Mono.sln.DotSettings

@@ -1,1580 +0,0 @@
-<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
-	<s:String x:Key="/Default/CodeEditing/Intellisense/ClrSymbolsFilterFactory/StoredFilters/@EntryValue">&lt;root&gt;&lt;filter&gt;&lt;namespace_mask&gt;Boo&lt;/namespace_mask&gt;&lt;has_type_parameters&gt;Any&lt;/has_type_parameters&gt;&lt;element_kind&gt;Any&lt;/element_kind&gt;&lt;/filter&gt;&lt;/root&gt;</s:String>
-	<s:Boolean x:Key="/Default/CodeEditing/Intellisense/CodeCompletion/AutoCompleteBasicCompletion/@EntryValue">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/CodeEditing/Intellisense/CodeCompletion/CompletionFilters/PersistFilterState/@EntryValue">True</s:Boolean>
-	
-	<s:String x:Key="/Default/CodeEditing/Intellisense/CodeCompletion/IntelliSenseCompletingCharacters/CSharpCompletingCharacters/NonCompletingCharacters/@EntryValue">&lt;&gt;</s:String>
-	
-	
-	<s:Boolean x:Key="/Default/CodeEditing/Localization/CSharpLocalizationOptions/DontAnalyseVerbatimStrings/@EntryValue">False</s:Boolean>
-	<s:Boolean x:Key="/Default/CodeInspection/ExcludedFiles/FileMasksToSkip/=_002A_002Emin_002Ejs/@EntryIndexedValue">True</s:Boolean>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=ArrangeThisQualifier/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=CheckNamespace/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=ConvertIfStatementToReturnStatement/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=ConvertPropertyToExpressionBody/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=ConvertToAutoProperty/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=ConvertToAutoPropertyWithPrivateSetter/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=DelegateSubtraction/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=FieldCanBeMadeReadOnly_002EGlobal/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=ForCanBeConvertedToForeach/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=ImplicitlyCapturedClosure/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=InconsistentNaming/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=LoopCanBeConvertedToQuery/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=LoopCanBePartlyConvertedToQuery/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=PossibleNullReferenceException/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=RedundantAssignment/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=SpecifyACultureInStringConversionExplicitly/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=SuggestUseVarKeywordEverywhere/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=SuggestUseVarKeywordEvident/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=SuggestVarOrType_005FElsewhere/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=UnusedAutoPropertyAccessor_002EGlobal/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=UnusedAutoPropertyAccessor_002ELocal/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=UnusedMember_002EGlobal/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=UseNullPropagation/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=UseObjectOrCollectionInitializer/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	
-	<s:String x:Key="/Default/CodeStyle/CodeCleanup/Profiles/=Unity/@EntryIndexedValue">&lt;?xml version="1.0" encoding="utf-16"?&gt;&lt;Profile name="Unity"&gt;&lt;CSArrangeThisQualifier&gt;True&lt;/CSArrangeThisQualifier&gt;&lt;CSRemoveCodeRedundancies&gt;True&lt;/CSRemoveCodeRedundancies&gt;&lt;CSMakeFieldReadonly&gt;True&lt;/CSMakeFieldReadonly&gt;&lt;CSUseVar&gt;&lt;BehavourStyle&gt;DISABLED&lt;/BehavourStyle&gt;&lt;LocalVariableStyle&gt;IMPLICIT_WHEN_INITIALIZER_HAS_TYPE&lt;/LocalVariableStyle&gt;&lt;ForeachVariableStyle&gt;IMPLICIT_EXCEPT_SIMPLE_TYPES&lt;/ForeachVariableStyle&gt;&lt;/CSUseVar&gt;&lt;CSOptimizeUsings&gt;&lt;OptimizeUsings&gt;True&lt;/OptimizeUsings&gt;&lt;EmbraceInRegion&gt;False&lt;/EmbraceInRegion&gt;&lt;RegionName&gt;&lt;/RegionName&gt;&lt;/CSOptimizeUsings&gt;&lt;CSShortenReferences&gt;True&lt;/CSShortenReferences&gt;&lt;CSReformatCode&gt;True&lt;/CSReformatCode&gt;&lt;CSMakeAutoPropertyGetOnly&gt;True&lt;/CSMakeAutoPropertyGetOnly&gt;&lt;CSUseAutoProperty&gt;True&lt;/CSUseAutoProperty&gt;&lt;RemoveCodeRedundancies&gt;True&lt;/RemoveCodeRedundancies&gt;&lt;/Profile&gt;</s:String>
-	<s:String x:Key="/Default/CodeStyle/CodeCleanup/RecentlyUsedProfile/@EntryValue">tanghai</s:String>
-	
-	
-	<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpCodeStyle/ThisQualifier/INSTANCE_MEMBERS_QUALIFY_MEMBERS/@EntryValue">All</s:String>
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/ALIGN_FIRST_ARG_BY_PAREN/@EntryValue">True</s:Boolean>
-	
-	
-	
-	
-	
-	<s:Int64 x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/CONTINUOUS_INDENT_MULTIPLIER/@EntryValue">2</s:Int64>
-	<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/FORCE_ATTRIBUTE_STYLE/@EntryValue">JOIN</s:String>
-	<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/FORCE_FIXED_BRACES_STYLE/@EntryValue">ALWAYS_ADD</s:String>
-	<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/FORCE_FOR_BRACES_STYLE/@EntryValue">ALWAYS_ADD</s:String>
-	<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/FORCE_FOREACH_BRACES_STYLE/@EntryValue">ALWAYS_ADD</s:String>
-	<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/FORCE_IFELSE_BRACES_STYLE/@EntryValue">ALWAYS_ADD</s:String>
-	<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/FORCE_USING_BRACES_STYLE/@EntryValue">ALWAYS_ADD</s:String>
-	<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/FORCE_WHILE_BRACES_STYLE/@EntryValue">ALWAYS_ADD</s:String>
-	
-	
-	
-	<s:Int64 x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/KEEP_BLANK_LINES_IN_CODE/@EntryValue">1</s:Int64>
-	<s:Int64 x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/KEEP_BLANK_LINES_IN_DECLARATIONS/@EntryValue">1</s:Int64>
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/KEEP_USER_LINEBREAKS/@EntryValue">False</s:Boolean>
-	<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/MODIFIERS_ORDER/@EntryValue">private public protected internal new abstract virtual override sealed static readonly extern unsafe volatile async</s:String>
-	
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/PLACE_FIELD_ATTRIBUTE_ON_SAME_LINE/@EntryValue">False</s:Boolean>
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/PLACE_SIMPLE_ACCESSOR_ON_SINGLE_LINE/@EntryValue">False</s:Boolean>
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/PLACE_WHILE_ON_NEW_LINE/@EntryValue">True</s:Boolean>
-	<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/REDUNDANT_THIS_QUALIFIER_STYLE/@EntryValue">ALWAYS_USE</s:String>
-	<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/SIMPLE_EMBEDDED_STATEMENT_STYLE/@EntryValue">LINE_BREAK</s:String>
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/SPACE_AROUND_MULTIPLICATIVE_OP/@EntryValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/SPACE_BEFORE_EXTENDS_COLON/@EntryValue">False</s:Boolean>
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/SPACE_BEFORE_TERNARY_QUEST/@EntryValue">False</s:Boolean>
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/SPACE_WITHIN_SINGLE_LINE_ARRAY_INITIALIZER_BRACES/@EntryValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/STICK_COMMENT/@EntryValue">False</s:Boolean>
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/WRAP_AFTER_DECLARATION_LPAR/@EntryValue">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/WRAP_BEFORE_FIRST_TYPE_PARAMETER_CONSTRAINT/@EntryValue">True</s:Boolean>
-	<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/WRAP_FOR_STMT_HEADER_STYLE/@EntryValue">WRAP_IF_LONG</s:String>
-	<s:Int64 x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/WRAP_LIMIT/@EntryValue">150</s:Int64>
-	<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/WRAP_MULTIPLE_DECLARATION_STYLE/@EntryValue">WRAP_IF_LONG</s:String>
-	<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/WRAP_TERNARY_EXPR_STYLE/@EntryValue">WRAP_IF_LONG</s:String>
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/JavaScriptCodeFormatting/ALIGN_MULTIPLE_DECLARATION/@EntryValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/JavaScriptCodeFormatting/JavaScriptFormatOther/ALIGN_MULTIPLE_DECLARATION/@EntryValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/XmlFormatter/BlankLineAfterProcessingInstructions/@EntryValue">False</s:Boolean>
-	<s:String x:Key="/Default/CodeStyle/CodeFormatting/XmlFormatter/ProcessingInstructionAttributeIndenting/@EntryValue">TwoSteps</s:String>
-	<s:String x:Key="/Default/CodeStyle/CodeFormatting/XmlFormatter/TagAttributeIndenting/@EntryValue">TwoSteps</s:String>
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/XmlFormatter/TagSpaceBeforeHeaderEnd1/@EntryValue">False</s:Boolean>
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/XmlFormatter/WrapBeforeAttr/@EntryValue">False</s:Boolean>
-	
-	<s:String x:Key="/Default/CodeStyle/CSharpMemberOrderPattern/CustomPattern/@EntryValue">&lt;?xml version="1.0" encoding="utf-8" ?&gt;&#xD;
-&#xD;
-&lt;!--&#xD;
-I. Overall&#xD;
-&#xD;
-I.1 Each pattern can have &lt;Match&gt;....&lt;/Match&gt; element. For the given type declaration, the pattern with the match, evaluated to 'true' with the largest weight, will be used &#xD;
-I.2 Each pattern consists of the sequence of &lt;Entry&gt;...&lt;/Entry&gt; elements. Type member declarations are distributed between entries&#xD;
-I.3 If pattern has RemoveAllRegions="true" attribute, then all regions will be cleared prior to reordering. Otherwise, only auto-generated regions will be cleared&#xD;
-I.4 The contents of each entry is sorted by given keys (First key is primary,  next key is secondary, etc). Then the declarations are grouped and en-regioned by given property&#xD;
-&#xD;
-II. Available match operands&#xD;
-&#xD;
-Each operand may have Weight="..." attribute. This weight will be added to the match weight if the operand is evaluated to 'true'.&#xD;
-The default weight is 1&#xD;
-&#xD;
-II.1 Boolean functions:&#xD;
-II.1.1 &lt;And&gt;....&lt;/And&gt;&#xD;
-II.1.2 &lt;Or&gt;....&lt;/Or&gt;&#xD;
-II.1.3 &lt;Not&gt;....&lt;/Not&gt;&#xD;
-&#xD;
-II.2 Operands&#xD;
-II.2.1 &lt;Kind Is="..."/&gt;. Kinds are: class, struct, interface, enum, delegate, type, constructor, destructor, property, indexer, method, operator, field, constant, event, member&#xD;
-II.2.2 &lt;Name Is="..." [IgnoreCase="true/false"] /&gt;. The 'Is' attribute contains regular expression&#xD;
-II.2.3 &lt;HasAttribute CLRName="..." [Inherit="true/false"] /&gt;. The 'CLRName' attribute contains regular expression&#xD;
-II.2.4 &lt;Access Is="..."/&gt;. The 'Is' values are: public, protected, internal, protected internal, private&#xD;
-II.2.5 &lt;Static/&gt;&#xD;
-II.2.6 &lt;Abstract/&gt;&#xD;
-II.2.7 &lt;Virtual/&gt;&#xD;
-II.2.8 &lt;Override/&gt;&#xD;
-II.2.9 &lt;Sealed/&gt;&#xD;
-II.2.10 &lt;Readonly/&gt;&#xD;
-II.2.11 &lt;ImplementsInterface CLRName="..."/&gt;. The 'CLRName' attribute contains regular expression&#xD;
-II.2.12 &lt;HandlesEvent /&gt;&#xD;
---&gt;&#xD;
-&#xD;
-&lt;Patterns xmlns="urn:shemas-jetbrains-com:member-reordering-patterns"&gt;&#xD;
-&#xD;
-  &lt;!--Do not reorder COM interfaces and structs marked by StructLayout attribute--&gt;&#xD;
-  &lt;Pattern&gt;&#xD;
-    &lt;Match&gt;&#xD;
-      &lt;Or Weight="100"&gt;&#xD;
-        &lt;And&gt;&#xD;
-          &lt;Kind Is="interface"/&gt;&#xD;
-          &lt;Or&gt;&#xD;
-            &lt;HasAttribute CLRName="System.Runtime.InteropServices.InterfaceTypeAttribute"/&gt;&#xD;
-            &lt;HasAttribute CLRName="System.Runtime.InteropServices.ComImport"/&gt;&#xD;
-          &lt;/Or&gt;&#xD;
-        &lt;/And&gt;&#xD;
-        &lt;HasAttribute CLRName="System.Runtime.InteropServices.StructLayoutAttribute"/&gt;&#xD;
-      &lt;/Or&gt;&#xD;
-    &lt;/Match&gt;&#xD;
-  &lt;/Pattern&gt;&#xD;
-&#xD;
-  &lt;!--Special formatting of NUnit test fixture--&gt;&#xD;
-  &lt;Pattern RemoveAllRegions="true"&gt;&#xD;
-    &lt;Match&gt;&#xD;
-      &lt;And Weight="100"&gt;&#xD;
-        &lt;Kind Is="class"/&gt;&#xD;
-        &lt;HasAttribute CLRName="NUnit.Framework.TestFixtureAttribute" Inherit="true"/&gt;&#xD;
-      &lt;/And&gt;&#xD;
-    &lt;/Match&gt;&#xD;
-&#xD;
-    &lt;!--Setup/Teardow--&gt;&#xD;
-    &lt;Entry&gt;&#xD;
-      &lt;Match&gt;&#xD;
-        &lt;And&gt;&#xD;
-          &lt;Kind Is="method"/&gt;&#xD;
-          &lt;Or&gt;&#xD;
-            &lt;HasAttribute CLRName="NUnit.Framework.SetUpAttribute" Inherit="true"/&gt;&#xD;
-            &lt;HasAttribute CLRName="NUnit.Framework.TearDownAttribute" Inherit="true"/&gt;&#xD;
-            &lt;HasAttribute CLRName="NUnit.Framework.FixtureSetUpAttribute" Inherit="true"/&gt;&#xD;
-            &lt;HasAttribute CLRName="NUnit.Framework.FixtureTearDownAttribute" Inherit="true"/&gt;&#xD;
-          &lt;/Or&gt;&#xD;
-        &lt;/And&gt;&#xD;
-      &lt;/Match&gt;&#xD;
-      &lt;Group Region="Setup/Teardown"/&gt;&#xD;
-    &lt;/Entry&gt;&#xD;
-    &#xD;
-    &lt;!--All other members--&gt;&#xD;
-    &lt;Entry/&gt;&#xD;
-    &#xD;
-    &lt;!--Test methods--&gt;&#xD;
-    &lt;Entry&gt;&#xD;
-      &lt;Match&gt;&#xD;
-        &lt;And Weight="100"&gt;&#xD;
-          &lt;Kind Is="method"/&gt;&#xD;
-          &lt;HasAttribute CLRName="NUnit.Framework.TestAttribute" Inherit="false"/&gt;&#xD;
-        &lt;/And&gt;&#xD;
-      &lt;/Match&gt;&#xD;
-      &lt;Sort&gt;&#xD;
-        &lt;Name/&gt;&#xD;
-      &lt;/Sort&gt;&#xD;
-    &lt;/Entry&gt;&#xD;
-  &lt;/Pattern&gt;&#xD;
-&#xD;
-  &lt;!--Default pattern--&gt;&#xD;
-  &lt;Pattern&gt;&#xD;
-&#xD;
-    &lt;!--public delegate--&gt;&#xD;
-    &lt;Entry&gt;&#xD;
-      &lt;Match&gt;&#xD;
-        &lt;And Weight="100"&gt;&#xD;
-          &lt;Access Is="public"/&gt;&#xD;
-          &lt;Kind Is="delegate"/&gt;&#xD;
-        &lt;/And&gt;&#xD;
-      &lt;/Match&gt;&#xD;
-      &lt;Sort&gt;&#xD;
-        &lt;Name/&gt;&#xD;
-      &lt;/Sort&gt;&#xD;
-      &lt;Group Region="Delegates"/&gt;&#xD;
-    &lt;/Entry&gt;&#xD;
-    &#xD;
-    &lt;!--public enum--&gt;&#xD;
-    &lt;Entry&gt;&#xD;
-      &lt;Match&gt;&#xD;
-        &lt;And Weight="100"&gt;&#xD;
-          &lt;Access Is="public"/&gt;&#xD;
-          &lt;Kind Is="enum"/&gt;&#xD;
-        &lt;/And&gt;&#xD;
-      &lt;/Match&gt;&#xD;
-      &lt;Sort&gt;&#xD;
-        &lt;Name/&gt;&#xD;
-      &lt;/Sort&gt;&#xD;
-      &lt;Group&gt;&#xD;
-        &lt;Name Region="${Name} enum"/&gt;&#xD;
-      &lt;/Group&gt;&#xD;
-    &lt;/Entry&gt;&#xD;
-&#xD;
-    &lt;!--static fields and constants--&gt;&#xD;
-    &lt;Entry&gt;&#xD;
-      &lt;Match&gt;&#xD;
-        &lt;Or&gt;&#xD;
-          &lt;Kind Is="constant"/&gt;&#xD;
-          &lt;And&gt;&#xD;
-            &lt;Kind Is="field"/&gt;&#xD;
-            &lt;Static/&gt;&#xD;
-          &lt;/And&gt;&#xD;
-        &lt;/Or&gt;&#xD;
-      &lt;/Match&gt;&#xD;
-      &lt;Sort&gt;&#xD;
-        &lt;Kind Order="constant field"/&gt;&#xD;
-      &lt;/Sort&gt;&#xD;
-    &lt;/Entry&gt;&#xD;
-    &#xD;
-    &lt;!--instance fields--&gt;&#xD;
-    &lt;Entry&gt;&#xD;
-      &lt;Match&gt;&#xD;
-        &lt;And&gt;&#xD;
-          &lt;Kind Is="field"/&gt;&#xD;
-          &lt;Not&gt;&#xD;
-            &lt;Static/&gt;&#xD;
-          &lt;/Not&gt;&#xD;
-        &lt;/And&gt;&#xD;
-      &lt;/Match&gt;&#xD;
-      &lt;Sort&gt;&#xD;
-        &lt;Readonly/&gt;&#xD;
-        &lt;Name/&gt;&#xD;
-      &lt;/Sort&gt;&#xD;
-    &lt;/Entry&gt;&#xD;
-&#xD;
-    &lt;!--Constructors. Place static one first--&gt;&#xD;
-    &lt;Entry&gt;&#xD;
-      &lt;Match&gt;&#xD;
-        &lt;Kind Is="constructor"/&gt;&#xD;
-      &lt;/Match&gt;&#xD;
-      &lt;Sort&gt;&#xD;
-        &lt;Static/&gt;&#xD;
-      &lt;/Sort&gt;&#xD;
-    &lt;/Entry&gt;&#xD;
-    &#xD;
-    &lt;!--properties, indexers--&gt;&#xD;
-    &lt;Entry&gt;&#xD;
-      &lt;Match&gt;&#xD;
-        &lt;Or&gt;&#xD;
-          &lt;Kind Is="property"/&gt;&#xD;
-          &lt;Kind Is="indexer"/&gt;&#xD;
-        &lt;/Or&gt;&#xD;
-      &lt;/Match&gt;&#xD;
-    &lt;/Entry&gt;&#xD;
-    &#xD;
-    &lt;!--interface implementations--&gt;&#xD;
-    &lt;Entry&gt;&#xD;
-      &lt;Match&gt;&#xD;
-        &lt;And Weight="100"&gt;&#xD;
-          &lt;Kind Is="member"/&gt;&#xD;
-          &lt;ImplementsInterface/&gt;&#xD;
-        &lt;/And&gt;&#xD;
-      &lt;/Match&gt;&#xD;
-      &lt;Sort&gt;&#xD;
-        &lt;ImplementsInterface Immediate="true"/&gt;&#xD;
-      &lt;/Sort&gt;&#xD;
-      &lt;Group&gt;&#xD;
-        &lt;ImplementsInterface Immediate="true" Region="${ImplementsInterface} Members"/&gt;&#xD;
-      &lt;/Group&gt;&#xD;
-    &lt;/Entry&gt;&#xD;
-    &#xD;
-    &lt;!--all other members--&gt;&#xD;
-    &lt;Entry/&gt;&#xD;
-    &#xD;
-    &lt;!--nested types--&gt;&#xD;
-    &lt;Entry&gt;&#xD;
-      &lt;Match&gt;&#xD;
-        &lt;Kind Is="type"/&gt;&#xD;
-      &lt;/Match&gt;&#xD;
-      &lt;Sort&gt;&#xD;
-        &lt;Name/&gt;&#xD;
-      &lt;/Sort&gt;&#xD;
-      &lt;Group&gt;&#xD;
-        &lt;Name Region="Nested type: ${Name}"/&gt;&#xD;
-      &lt;/Group&gt;&#xD;
-    &lt;/Entry&gt;&#xD;
-  &lt;/Pattern&gt;&#xD;
-  &#xD;
-&lt;/Patterns&gt;&#xD;
-</s:String>
-	<s:String x:Key="/Default/CodeStyle/CSharpVarKeywordUsage/ForBuiltInTypes/@EntryValue">UseExplicitType</s:String>
-	<s:String x:Key="/Default/CodeStyle/CSharpVarKeywordUsage/ForSimpleTypes/@EntryValue">UseExplicitType</s:String>
-	<s:Boolean x:Key="/Default/CodeStyle/Generate/=Properties/@KeyIndexDefined">True</s:Boolean>
-	<s:String x:Key="/Default/CodeStyle/Generate/=Properties/Options/=DebuggerStepsThrough/@EntryIndexedValue">False</s:String>
-	<s:String x:Key="/Default/CodeStyle/Generate/=Properties/Options/=XmlDocumentation/@EntryIndexedValue">False</s:String>
-	<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/EventHandlerPatternLong/@EntryValue">$object$_On$event$</s:String>
-	<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/PredefinedNamingRules/=PrivateInstanceFields/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="" Suffix="" Style="aaBb" /&gt;</s:String>
-	<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/PredefinedNamingRules/=PrivateStaticFields/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="" Suffix="" Style="aaBb" /&gt;</s:String>
-	<s:String x:Key="/Default/CodeStyle/Naming/VBNaming/EventHandlerPatternLong/@EntryValue">$object$_On$event$</s:String>
-	<s:String x:Key="/Default/CodeStyle/Naming/XamlNaming/UserRules/=XAML_005FFIELD/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="" Suffix="" Style="aaBb" /&gt;</s:String>
-	
-	<s:String x:Key="/Default/Environment/Editor/MatchingBraceHighlighting/Position/@EntryValue">BOTH_SIDES</s:String>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Environment/OpenDocument/OpenDocumentAfterModification/@EntryValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Environment/SearchAndNavigation/MergeOccurences/@EntryValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ECSharpFileLayoutPatternsUpgrade/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002EAddAccessorOwnerDeclarationBracesMigration/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002EMigrateBlankLinesAroundFieldToBlankLinesAroundProperty/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002EMigrateThisQualifierSettings/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002EJavaScript_002ECodeStyle_002ESettingsUpgrade_002EJsCodeFormatterSettingsUpgrader/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Environment/TextControl/HighlightCurrentLine/@EntryValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Environment/UnitTesting/MsTestProvider/UseTestRunConfigFromMetadataFile/@EntryValue">False</s:Boolean>
-	<s:Boolean x:Key="/Default/Environment/UpdatesManger/IsDownloadUpdateDataAllowed/@EntryValue">False</s:Boolean>
-	<s:String x:Key="/Default/Environment/UserInterface/ShortcutSchemeName/@EntryValue">VS</s:String>
-	<s:Boolean x:Key="/Default/Housekeeping/GlobalSettingsUpgraded/IsUpgraded/@EntryValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/IntellisenseHousekeeping/HintUsed/@EntryValue">True</s:Boolean>
-	<s:String x:Key="/Default/Housekeeping/Layout/DialogWindows/OptionsDialog/SelectedPageId/@EntryValue">CSharpBracesLayoutPage</s:String>
-	<s:String x:Key="/Default/Housekeeping/Layout/DialogWindows/RefactoringWizardWindow/Location/@EntryValue">247,0</s:String>
-	<s:Boolean x:Key="/Default/Housekeeping/LiveTemplatesHousekeeping/HotspotSessionHintIsShown/@EntryValue">True</s:Boolean>
-	<s:Int64 x:Key="/Default/Housekeeping/TreeModelBrowserPanelPersistance/PreviewSplitterHorizontalPosition/=SearchUsagesDescriptor/@EntryIndexedValue">269</s:Int64>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=AnalyzeReferences/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=BlockComment/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EBookmarksMenu/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EGoToBookmark0/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EGoToBookmark1/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EGoToBookmark2/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EGoToBookmark3/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EGoToBookmark4/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EGoToBookmark5/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EGoToBookmark6/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EGoToBookmark7/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EGoToBookmark8/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EGoToBookmark9/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EToggleBookmark0/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EToggleBookmark1/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EToggleBookmark2/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EToggleBookmark3/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EToggleBookmark4/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EToggleBookmark5/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EToggleBookmark6/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EToggleBookmark7/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EToggleBookmark8/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EToggleBookmark9/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ChangeSignature/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=CleanupCode/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=CompleteCodeSmart/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=CompleteCodeTypeName/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=DuplicateText/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=EnableDaemon/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=EncapsulateField/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ExploreStackTrace/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ExtendSelection/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ExtractMethod/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=FindUsagesAdvanced/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ForceCompleteItem/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Generate/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GenerateFileBesides/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoBase/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoContainingDeclaration/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoFile/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoFileMember/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoInheritors/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoLastEditLocation/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoNextErrorInSolution/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoNextHighlight/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoNextMethod/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoNextOccurence/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoPrevErrorInSolution/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoPrevHighlight/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoPreviousOccurence/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoPrevMethod/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoRecentEdits/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoRecentFiles/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoRelatedFiles/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoSymbol/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoType/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoTypeDeclaration/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoUsage/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=HighlightUsages/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=InlineVariable/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=InspectThis/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=IntroduceField/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=IntroduceVariable/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=IntroParameter/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=LineComment/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=LiveTemplates_002EInsert/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=LocateInSolutionExplorerAction/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Move/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=MoveDown/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=MoveLeft/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=MoveRight/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=MoveUp/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=NavigateTo/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ParameterInfo_002EGoToPreviousSignature/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=QuickDoc/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=QuickFix/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=RefactorThis/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Rename/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ReSharper_005FUnitTest_005FDebugContext/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ReSharper_005FUnitTest_005FRunContext/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=SafeDelete/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=SelectContainingDeclaration/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ShowAnalyzeReferences/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ShowCodeStructure/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ShowFindResults/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ShowHierarchyWindow/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ShowInspectionWindow/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ShowTodoExplorer/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ShowUnitTestExplorer/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ShowUnitTestSessions/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ShrinkSelection/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=SilentCleanupCode/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=SurroundWith/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=TypeHierarchy_002EBrowse/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=UnitTest_002ERunCurrentSession/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=UnitTest_002ERunSolution/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=UnitTestSession_002ERepeatPreviousRun/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=WindowManager_002EActivateRecentTool/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=WindowManager_002ECloseRecentTool/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=AnalyzeReferences/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=AnalyzeReferences/Shortcuts/=Control_002BAlt_002BY/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark1/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark1/Shortcuts/=Control_002BD1/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark2/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark2/Shortcuts/=Control_002BD2/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark3/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark3/Shortcuts/=Control_002BD3/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark4/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark4/Shortcuts/=Control_002BD4/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark5/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark5/Shortcuts/=Control_002BD5/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark6/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark6/Shortcuts/=Control_002BD6/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark7/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark7/Shortcuts/=Control_002BD7/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark8/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark8/Shortcuts/=Control_002BD8/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark9/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark9/Shortcuts/=Control_002BD9/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EToggleBookmark1/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EToggleBookmark1/Shortcuts/=Shift_002BControl_002BD1/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EToggleBookmark2/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EToggleBookmark2/Shortcuts/=Shift_002BControl_002BD2/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EToggleBookmark3/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EToggleBookmark3/Shortcuts/=Shift_002BControl_002BD3/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EToggleBookmark7/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EToggleBookmark7/Shortcuts/=Shift_002BControl_002BD7/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EToggleBookmark8/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EToggleBookmark8/Shortcuts/=Shift_002BControl_002BD8/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ChangeSignature/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ChangeSignature/Shortcuts/=Control_002BR_0020Control_002BS/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ChangeSignature/Shortcuts/=Control_002BR_0020S/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=CleanupCode/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=CleanupCode/Shortcuts/=Control_002BE_0020C/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=CleanupCode/Shortcuts/=Control_002BE_0020Control_002BC/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=CompleteCodeSmart/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=CompleteCodeSmart/Shortcuts/=Control_002BAlt_002BSpace/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=DuplicateText/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=DuplicateText/Shortcuts/=Control_002BD/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=EncapsulateField/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=EncapsulateField/Shortcuts/=Control_002BR_0020Control_002BE/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=EncapsulateField/Shortcuts/=Control_002BR_0020E/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ExploreStackTrace/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ExploreStackTrace/Shortcuts/=Control_002BE_0020Control_002BT/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ExploreStackTrace/Shortcuts/=Control_002BE_0020T/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ExtendSelection/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ExtendSelection/Shortcuts/=Control_002BAlt_002BRight/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ExtractMethod/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ExtractMethod/Shortcuts/=Control_002BR_0020Control_002BM/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ExtractMethod/Shortcuts/=Control_002BR_0020M/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=FindUsagesAdvanced/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=FindUsagesAdvanced/Shortcuts/=Shift_002BControl_002BAlt_002BF12/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GenerateFileBesides/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GenerateFileBesides/Shortcuts/=Control_002BAlt_002BInsert/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoContainingDeclaration/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoContainingDeclaration/Shortcuts/=Control_002BOemOpenBrackets/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoFile/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoFile/Shortcuts/=Shift_002BControl_002BT/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoNextHighlight/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoNextHighlight/Shortcuts/=Alt_002BNext/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoNextMethod/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoNextMethod/Shortcuts/=Alt_002BDown/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoNextOccurence/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoNextOccurence/Shortcuts/=Control_002BAlt_002BNext/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoPrevHighlight/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoPrevHighlight/Shortcuts/=Alt_002BPageUp/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoPreviousOccurence/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoPreviousOccurence/Shortcuts/=Control_002BAlt_002BPageUp/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoPrevMethod/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoPrevMethod/Shortcuts/=Alt_002BUp/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoRecentEdits/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoRecentEdits/Shortcuts/=Shift_002BControl_002BOemcomma/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoRecentFiles/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoRecentFiles/Shortcuts/=Control_002BOemcomma/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoSymbol/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoSymbol/Shortcuts/=Shift_002BAlt_002BT/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoType/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoType/Shortcuts/=Control_002BT/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoTypeDeclaration/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoTypeDeclaration/Shortcuts/=Shift_002BControl_002BF11/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoUsage/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoUsage/Shortcuts/=Shift_002BAlt_002BF12/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=HighlightUsages/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=HighlightUsages/Shortcuts/=Shift_002BAlt_002BF11/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=InlineVariable/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=InlineVariable/Shortcuts/=Control_002BR_0020Control_002BI/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=InlineVariable/Shortcuts/=Control_002BR_0020I/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=IntroduceField/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=IntroduceField/Shortcuts/=Control_002BR_0020Control_002BF/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=IntroduceField/Shortcuts/=Control_002BR_0020F/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=IntroduceVariable/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=IntroduceVariable/Shortcuts/=Control_002BR_0020Control_002BV/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=IntroduceVariable/Shortcuts/=Control_002BR_0020V/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=IntroParameter/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=IntroParameter/Shortcuts/=Control_002BR_0020Control_002BP/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=IntroParameter/Shortcuts/=Control_002BR_0020P/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=LocateInSolutionExplorerAction/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=LocateInSolutionExplorerAction/Shortcuts/=Shift_002BAlt_002BL/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Move/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Move/Shortcuts/=Control_002BR_0020Control_002BO/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Move/Shortcuts/=Control_002BR_0020O/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=MoveDown/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=MoveDown/Shortcuts/=Shift_002BControl_002BAlt_002BDown/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=MoveLeft/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=MoveLeft/Shortcuts/=Shift_002BControl_002BAlt_002BLeft/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=MoveRight/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=MoveRight/Shortcuts/=Shift_002BControl_002BAlt_002BRight/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=MoveUp/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=MoveUp/Shortcuts/=Shift_002BControl_002BAlt_002BUp/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=QuickFix/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=QuickFix/Shortcuts/=Alt_002BReturn/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=RefactorThis/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=RefactorThis/Shortcuts/=Shift_002BControl_002BR/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Rename/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Rename/Shortcuts/=Control_002BR_0020Control_002BR/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Rename/Shortcuts/=Control_002BR_0020R/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ReSharper_005FUnitTest_005FDebugContext/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ReSharper_005FUnitTest_005FDebugContext/Shortcuts/=Control_002BU_0020Control_002BD/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ReSharper_005FUnitTest_005FDebugContext/Shortcuts/=Control_002BU_0020D/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ReSharper_005FUnitTest_005FRunContext/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ReSharper_005FUnitTest_005FRunContext/Shortcuts/=Control_002BU_0020Control_002BR/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ReSharper_005FUnitTest_005FRunContext/Shortcuts/=Control_002BU_0020R/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=SafeDelete/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=SafeDelete/Shortcuts/=Control_002BR_0020Control_002BD/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=SafeDelete/Shortcuts/=Control_002BR_0020D/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=SelectContainingDeclaration/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=SelectContainingDeclaration/Shortcuts/=Shift_002BControl_002BOemOpenBrackets/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShowAnalyzeReferences/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShowAnalyzeReferences/Shortcuts/=Control_002BAlt_002BY/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShowCodeStructure/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShowCodeStructure/Shortcuts/=Control_002BAlt_002BF/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShowFindResults/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShowFindResults/Shortcuts/=Control_002BAlt_002BF12/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShowHierarchyWindow/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShowHierarchyWindow/Shortcuts/=Control_002BAlt_002BH/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShowInspectionWindow/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShowInspectionWindow/Shortcuts/=Control_002BAlt_002BV/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShowTodoExplorer/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShowTodoExplorer/Shortcuts/=Control_002BAlt_002BD/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShowUnitTestExplorer/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShowUnitTestExplorer/Shortcuts/=Control_002BAlt_002BU/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShowUnitTestSessions/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShowUnitTestSessions/Shortcuts/=Control_002BAlt_002BT/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShrinkSelection/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShrinkSelection/Shortcuts/=Control_002BAlt_002BLeft/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=SilentCleanupCode/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=SilentCleanupCode/Shortcuts/=Control_002BE_0020Control_002BF/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=SilentCleanupCode/Shortcuts/=Control_002BE_0020F/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=SurroundWith/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=SurroundWith/Shortcuts/=Control_002BE_0020Control_002BU/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=SurroundWith/Shortcuts/=Control_002BE_0020U/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=UnitTest_002ERunCurrentSession/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=UnitTest_002ERunCurrentSession/Shortcuts/=Control_002BU_0020Control_002BY/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=UnitTest_002ERunCurrentSession/Shortcuts/=Control_002BU_0020Y/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=UnitTest_002ERunSolution/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=UnitTest_002ERunSolution/Shortcuts/=Control_002BU_0020Control_002BL/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=UnitTest_002ERunSolution/Shortcuts/=Control_002BU_0020L/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=UnitTestSession_002ERepeatPreviousRun/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=UnitTestSession_002ERepeatPreviousRun/Shortcuts/=Control_002BU_0020Control_002BU/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=UnitTestSession_002ERepeatPreviousRun/Shortcuts/=Control_002BU_0020U/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Add/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BBack/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BDown/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BF/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BF10/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BF11/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BF12/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BF2/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BF3/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BF4/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BF5/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BF6/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BF7/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BF8/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BF9/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BG/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BLeft/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BM/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BMultiply/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BNext/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BO/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BOem7/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BOemcomma/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BOemPeriod/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BP/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BPageUp/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BPause/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BR/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BReturn/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BRight/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BS/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BSubtract/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BUp/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BW/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=B/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Back/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BA/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAdd/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BA/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BB/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BC/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BD/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BDown/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BE/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BF/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BF1/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BF10/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BF11/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BF12/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BF5/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BF6/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BG/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BH/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BI/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BInsert/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BJ/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BL/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BLeft/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BM/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BNext/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BO/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BOem6/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BOemPeriod/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BP/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BPageUp/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BPause/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BQ/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BR/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BRight/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BS/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BSpace/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BT/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BU/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BUp/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BV/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BW/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BX/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BY/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BZ/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BB/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BBack/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BC/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BD/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BD1/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BD2/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BD3/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BD4/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BD5/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BD6/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BD7/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BD8/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BD9/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BDelete/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BDivide/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BDown/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BE/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BEnd/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BF/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BF1/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BF10/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BF11/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BF12/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BF2/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BF4/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BF5/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BF6/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BF7/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BF9/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BG/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BH/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BHome/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BI/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BInsert/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BJ/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BK/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BL/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BLeft/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BM/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BN/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BNext/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BO/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BOem1/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BOem6/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BOem7/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BOemBackslash/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BOemcomma/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BOemOpenBrackets/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BOemPeriod/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BOemplus/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BP/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BPageUp/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BPause/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BQ/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BR/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BReturn/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BRight/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BS/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BSpace/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BSubtract/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BT/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BTab/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BU/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BUp/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BV/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BW/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BX/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BY/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BZ/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Delete/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Down/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=End/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Escape/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=F1/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=F10/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=F11/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=F12/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=F2/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=F4/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=F5/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=F6/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=F7/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=F8/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=F9/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Home/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=I/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Insert/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Left/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Next/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=O/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=PageUp/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Return/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Right/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BA/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BB/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BBack/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BC/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BD/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BD3/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BD4/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BDown/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BEnd/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BF/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BF10/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BF11/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BF12/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BF6/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BF7/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BH/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BHome/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BL/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BLeft/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BN/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BOemcomma/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BOemPeriod/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BP/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BQ/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BR/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BReturn/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BRight/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BS/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BT/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BUp/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BV/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BW/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BBack/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BA/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BAlt_002BC/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BAlt_002BDown/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BAlt_002BF11/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BAlt_002BF12/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BAlt_002BLeft/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BAlt_002BP/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BAlt_002BR/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BAlt_002BRight/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BAlt_002BS/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BAlt_002BUp/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BAlt_002BW/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BB/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BC/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BD/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BD1/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BD2/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BD3/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BD7/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BD8/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BDown/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BE/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BEnd/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BF10/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BF11/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BF12/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BF5/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BF6/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BF9/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BG/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BH/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BHome/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BI/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BInsert/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BJ/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BL/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BLeft/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BM/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BN/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BNext/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BO/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BOem6/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BOemcomma/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BOemOpenBrackets/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BOemPeriod/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BP/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BPageUp/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BR/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BReturn/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BRight/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BS/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BSpace/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BSubtract/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BT/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BTab/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BU/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BUp/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BV/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BW/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BX/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BY/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BZ/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BDelete/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BDown/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BEnd/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BEscape/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BF1/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BF11/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BF12/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BF4/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BF5/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BF6/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BF7/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BF8/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BF9/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BHome/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BInsert/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BLeft/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BNext/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BPageUp/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BReturn/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BRight/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BSpace/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BTab/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BUp/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Subtract/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Tab/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Up/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	</wpf:ResourceDictionary>

+ 0 - 8
CSharp/CSharp-Mono.userprefs

@@ -1,8 +0,0 @@
-<Properties StartupItem="Exe\Profile\Profile.csproj">
-  <MonoDevelop.Ide.Workspace ActiveConfiguration="Debug" />
-  <MonoDevelop.Ide.Workbench />
-  <MonoDevelop.Ide.DebuggingService.Breakpoints>
-    <BreakpointStore />
-  </MonoDevelop.Ide.DebuggingService.Breakpoints>
-  <MonoDevelop.Ide.DebuggingService.PinnedWatches />
-</Properties>

BIN
CSharp/CSharp.VC.db


+ 0 - 139
CSharp/CSharp.sln

@@ -1,139 +0,0 @@
-
-Microsoft Visual Studio Solution File, Format Version 12.00
-# Visual Studio 14
-VisualStudioVersion = 14.0.23107.0
-MinimumVisualStudioVersion = 10.0.40219.1
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Modules", "Modules", "{C4C64188-4FAE-4CC3-A9E6-D9D4AF7429B6}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = ".nuget", ".nuget", "{EAEF8202-B3F6-4F9B-9EFD-41C374433612}"
-	ProjectSection(SolutionItems) = preProject
-		.nuget\NuGet.Config = .nuget\NuGet.Config
-		.nuget\NuGet.exe = .nuget\NuGet.exe
-		.nuget\NuGet.targets = .nuget\NuGet.targets
-	EndProjectSection
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Platform", "Platform", "{ADBF5F67-B480-4A93-9D50-C81856FC61A9}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "App", "App", "{6E9D97F0-4243-452E-B832-1A855B8118EB}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Editor", "App\Editor\Editor.csproj", "{C46F3337-0F48-4A72-84AD-8FDD1F159BB0}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Infrastructure", "App\Infrastructure\Infrastructure.csproj", "{48A2E149-0DAC-41B4-BB54-DFBCCD6D42B3}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Game", "Game", "{D0CC1FF4-2747-4278-A51F-BE9AA959175B}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "BehaviorTreeModule", "App\Modules\BehaviorTreeModule\BehaviorTreeModule.csproj", "{6CD185D1-08E0-4729-A999-2D5B57BA8193}"
-EndProject
-Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "ENet", "Platform\ENet\ENet.vcxproj", "{C9992B7C-313E-4C9F-A954-640D01EDFB58}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Common", "Platform\Common\Common.csproj", "{F06B995E-6508-4C5C-A396-554316C9215D}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TNet", "Platform\TNet\TNet.csproj", "{B1B78524-3F75-40D7-BF12-10B25A00C590}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UNet", "Platform\UNet\UNet.csproj", "{D3CEA64F-4D75-4DC9-B139-8D12EB4ACF8E}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Controller", "Game\Controller\Controller.csproj", "{7D5B90DF-43AC-42B8-9A52-2B985BC42A5C}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Model", "Game\Model\Model.csproj", "{0608C0C1-F584-4092-AAF9-1E99A78E3703}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Exe", "Exe", "{6A76F49C-07DC-4A7E-954F-7A7D3D900ED5}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Profile", "Exe\Profile\Profile.csproj", "{EA0D6994-A254-4DFE-9ADC-A29B7005419F}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "ThirdParty", "ThirdParty", "{C189FE4B-3358-4C11-B120-AEC5971E7331}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Nuget", "ThirdParty\Nuget\Nuget.csproj", "{56936640-F541-4389-9A0C-D8F6EB48427D}"
-EndProject
-Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Test", "Test", "{F13D0B3D-5B4F-452A-9378-0FD39555371D}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ModelTest", "Test\ModelTest\ModelTest.csproj", "{DEF89A61-8AC7-4CCD-80B8-FC6AA2571E35}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "TNetTest", "Test\TNetTest\TNetTest.csproj", "{1888D319-0495-43F3-BA8D-163EC20D9437}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "UNetTest", "Test\UNetTest\UNetTest.csproj", "{47A7404D-F501-43C5-8183-4B4E9E8C24B2}"
-EndProject
-Global
-	GlobalSection(SolutionConfigurationPlatforms) = preSolution
-		Debug|Any CPU = Debug|Any CPU
-		Release|Any CPU = Release|Any CPU
-	EndGlobalSection
-	GlobalSection(ProjectConfigurationPlatforms) = postSolution
-		{C46F3337-0F48-4A72-84AD-8FDD1F159BB0}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{C46F3337-0F48-4A72-84AD-8FDD1F159BB0}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{C46F3337-0F48-4A72-84AD-8FDD1F159BB0}.Release|Any CPU.ActiveCfg = Release|x86
-		{C46F3337-0F48-4A72-84AD-8FDD1F159BB0}.Release|Any CPU.Build.0 = Release|x86
-		{48A2E149-0DAC-41B4-BB54-DFBCCD6D42B3}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{48A2E149-0DAC-41B4-BB54-DFBCCD6D42B3}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{48A2E149-0DAC-41B4-BB54-DFBCCD6D42B3}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{48A2E149-0DAC-41B4-BB54-DFBCCD6D42B3}.Release|Any CPU.Build.0 = Release|Any CPU
-		{6CD185D1-08E0-4729-A999-2D5B57BA8193}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{6CD185D1-08E0-4729-A999-2D5B57BA8193}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{6CD185D1-08E0-4729-A999-2D5B57BA8193}.Debug|Any CPU.Deploy.0 = Debug|Any CPU
-		{6CD185D1-08E0-4729-A999-2D5B57BA8193}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{6CD185D1-08E0-4729-A999-2D5B57BA8193}.Release|Any CPU.Build.0 = Release|Any CPU
-		{C9992B7C-313E-4C9F-A954-640D01EDFB58}.Debug|Any CPU.ActiveCfg = Debug|Win32
-		{C9992B7C-313E-4C9F-A954-640D01EDFB58}.Debug|Any CPU.Build.0 = Debug|Win32
-		{C9992B7C-313E-4C9F-A954-640D01EDFB58}.Release|Any CPU.ActiveCfg = Release|Win32
-		{C9992B7C-313E-4C9F-A954-640D01EDFB58}.Release|Any CPU.Build.0 = Release|Win32
-		{F06B995E-6508-4C5C-A396-554316C9215D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{F06B995E-6508-4C5C-A396-554316C9215D}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{F06B995E-6508-4C5C-A396-554316C9215D}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{F06B995E-6508-4C5C-A396-554316C9215D}.Release|Any CPU.Build.0 = Release|Any CPU
-		{B1B78524-3F75-40D7-BF12-10B25A00C590}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{B1B78524-3F75-40D7-BF12-10B25A00C590}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{B1B78524-3F75-40D7-BF12-10B25A00C590}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{B1B78524-3F75-40D7-BF12-10B25A00C590}.Release|Any CPU.Build.0 = Release|Any CPU
-		{D3CEA64F-4D75-4DC9-B139-8D12EB4ACF8E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{D3CEA64F-4D75-4DC9-B139-8D12EB4ACF8E}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{D3CEA64F-4D75-4DC9-B139-8D12EB4ACF8E}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{D3CEA64F-4D75-4DC9-B139-8D12EB4ACF8E}.Release|Any CPU.Build.0 = Release|Any CPU
-		{7D5B90DF-43AC-42B8-9A52-2B985BC42A5C}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{7D5B90DF-43AC-42B8-9A52-2B985BC42A5C}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{7D5B90DF-43AC-42B8-9A52-2B985BC42A5C}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{7D5B90DF-43AC-42B8-9A52-2B985BC42A5C}.Release|Any CPU.Build.0 = Release|Any CPU
-		{0608C0C1-F584-4092-AAF9-1E99A78E3703}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{0608C0C1-F584-4092-AAF9-1E99A78E3703}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{0608C0C1-F584-4092-AAF9-1E99A78E3703}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{0608C0C1-F584-4092-AAF9-1E99A78E3703}.Release|Any CPU.Build.0 = Release|Any CPU
-		{EA0D6994-A254-4DFE-9ADC-A29B7005419F}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{EA0D6994-A254-4DFE-9ADC-A29B7005419F}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{EA0D6994-A254-4DFE-9ADC-A29B7005419F}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{EA0D6994-A254-4DFE-9ADC-A29B7005419F}.Release|Any CPU.Build.0 = Release|Any CPU
-		{56936640-F541-4389-9A0C-D8F6EB48427D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{56936640-F541-4389-9A0C-D8F6EB48427D}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{56936640-F541-4389-9A0C-D8F6EB48427D}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{56936640-F541-4389-9A0C-D8F6EB48427D}.Release|Any CPU.Build.0 = Release|Any CPU
-		{DEF89A61-8AC7-4CCD-80B8-FC6AA2571E35}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{DEF89A61-8AC7-4CCD-80B8-FC6AA2571E35}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{DEF89A61-8AC7-4CCD-80B8-FC6AA2571E35}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{DEF89A61-8AC7-4CCD-80B8-FC6AA2571E35}.Release|Any CPU.Build.0 = Release|Any CPU
-		{1888D319-0495-43F3-BA8D-163EC20D9437}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{1888D319-0495-43F3-BA8D-163EC20D9437}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{1888D319-0495-43F3-BA8D-163EC20D9437}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{1888D319-0495-43F3-BA8D-163EC20D9437}.Release|Any CPU.Build.0 = Release|Any CPU
-		{47A7404D-F501-43C5-8183-4B4E9E8C24B2}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{47A7404D-F501-43C5-8183-4B4E9E8C24B2}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{47A7404D-F501-43C5-8183-4B4E9E8C24B2}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{47A7404D-F501-43C5-8183-4B4E9E8C24B2}.Release|Any CPU.Build.0 = Release|Any CPU
-	EndGlobalSection
-	GlobalSection(SolutionProperties) = preSolution
-		HideSolutionNode = FALSE
-	EndGlobalSection
-	GlobalSection(NestedProjects) = preSolution
-		{C4C64188-4FAE-4CC3-A9E6-D9D4AF7429B6} = {6E9D97F0-4243-452E-B832-1A855B8118EB}
-		{C46F3337-0F48-4A72-84AD-8FDD1F159BB0} = {6E9D97F0-4243-452E-B832-1A855B8118EB}
-		{48A2E149-0DAC-41B4-BB54-DFBCCD6D42B3} = {6E9D97F0-4243-452E-B832-1A855B8118EB}
-		{6CD185D1-08E0-4729-A999-2D5B57BA8193} = {C4C64188-4FAE-4CC3-A9E6-D9D4AF7429B6}
-		{C9992B7C-313E-4C9F-A954-640D01EDFB58} = {ADBF5F67-B480-4A93-9D50-C81856FC61A9}
-		{F06B995E-6508-4C5C-A396-554316C9215D} = {ADBF5F67-B480-4A93-9D50-C81856FC61A9}
-		{B1B78524-3F75-40D7-BF12-10B25A00C590} = {ADBF5F67-B480-4A93-9D50-C81856FC61A9}
-		{D3CEA64F-4D75-4DC9-B139-8D12EB4ACF8E} = {ADBF5F67-B480-4A93-9D50-C81856FC61A9}
-		{7D5B90DF-43AC-42B8-9A52-2B985BC42A5C} = {D0CC1FF4-2747-4278-A51F-BE9AA959175B}
-		{0608C0C1-F584-4092-AAF9-1E99A78E3703} = {D0CC1FF4-2747-4278-A51F-BE9AA959175B}
-		{EA0D6994-A254-4DFE-9ADC-A29B7005419F} = {6A76F49C-07DC-4A7E-954F-7A7D3D900ED5}
-		{56936640-F541-4389-9A0C-D8F6EB48427D} = {C189FE4B-3358-4C11-B120-AEC5971E7331}
-		{DEF89A61-8AC7-4CCD-80B8-FC6AA2571E35} = {F13D0B3D-5B4F-452A-9378-0FD39555371D}
-		{1888D319-0495-43F3-BA8D-163EC20D9437} = {F13D0B3D-5B4F-452A-9378-0FD39555371D}
-		{47A7404D-F501-43C5-8183-4B4E9E8C24B2} = {F13D0B3D-5B4F-452A-9378-0FD39555371D}
-	EndGlobalSection
-EndGlobal

+ 0 - 1575
CSharp/CSharp.sln.DotSettings

@@ -1,1575 +0,0 @@
-<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
-	<s:Boolean x:Key="/Default/CodeEditing/Intellisense/CodeCompletion/AutoCompleteBasicCompletion/@EntryValue">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/CodeEditing/Localization/CSharpLocalizationOptions/DontAnalyseVerbatimStrings/@EntryValue">False</s:Boolean>
-	<s:Boolean x:Key="/Default/CodeInspection/ExcludedFiles/FileMasksToSkip/=_002A_002Emin_002Ejs/@EntryIndexedValue">True</s:Boolean>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=ArrangeThisQualifier/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=CheckNamespace/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=ConvertIfStatementToReturnStatement/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=ConvertPropertyToExpressionBody/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=ConvertToAutoProperty/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=ConvertToAutoPropertyWithPrivateSetter/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=DelegateSubtraction/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=FieldCanBeMadeReadOnly_002EGlobal/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=ForCanBeConvertedToForeach/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=ImplicitlyCapturedClosure/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=InconsistentNaming/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=LoopCanBeConvertedToQuery/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=LoopCanBePartlyConvertedToQuery/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=PossibleNullReferenceException/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=RedundantAssignment/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=SpecifyACultureInStringConversionExplicitly/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=SuggestUseVarKeywordEverywhere/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=SuggestUseVarKeywordEvident/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=SuggestVarOrType_005FElsewhere/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=UnusedAutoPropertyAccessor_002EGlobal/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=UnusedAutoPropertyAccessor_002ELocal/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=UnusedMember_002EGlobal/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=UseNullPropagation/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	<s:String x:Key="/Default/CodeInspection/Highlighting/InspectionSeverities/=UseObjectOrCollectionInitializer/@EntryIndexedValue">DO_NOT_SHOW</s:String>
-	
-	<s:String x:Key="/Default/CodeStyle/CodeCleanup/Profiles/=Unity/@EntryIndexedValue">&lt;?xml version="1.0" encoding="utf-16"?&gt;&lt;Profile name="Unity"&gt;&lt;CSArrangeThisQualifier&gt;True&lt;/CSArrangeThisQualifier&gt;&lt;CSRemoveCodeRedundancies&gt;True&lt;/CSRemoveCodeRedundancies&gt;&lt;CSMakeFieldReadonly&gt;True&lt;/CSMakeFieldReadonly&gt;&lt;CSUseVar&gt;&lt;BehavourStyle&gt;DISABLED&lt;/BehavourStyle&gt;&lt;LocalVariableStyle&gt;IMPLICIT_WHEN_INITIALIZER_HAS_TYPE&lt;/LocalVariableStyle&gt;&lt;ForeachVariableStyle&gt;IMPLICIT_EXCEPT_SIMPLE_TYPES&lt;/ForeachVariableStyle&gt;&lt;/CSUseVar&gt;&lt;CSOptimizeUsings&gt;&lt;OptimizeUsings&gt;True&lt;/OptimizeUsings&gt;&lt;EmbraceInRegion&gt;False&lt;/EmbraceInRegion&gt;&lt;RegionName&gt;&lt;/RegionName&gt;&lt;/CSOptimizeUsings&gt;&lt;CSShortenReferences&gt;True&lt;/CSShortenReferences&gt;&lt;CSReformatCode&gt;True&lt;/CSReformatCode&gt;&lt;CSMakeAutoPropertyGetOnly&gt;True&lt;/CSMakeAutoPropertyGetOnly&gt;&lt;CSUseAutoProperty&gt;True&lt;/CSUseAutoProperty&gt;&lt;RemoveCodeRedundancies&gt;True&lt;/RemoveCodeRedundancies&gt;&lt;CSEnforceVarKeywordUsageSettings&gt;True&lt;/CSEnforceVarKeywordUsageSettings&gt;&lt;CSharpFormatDocComments&gt;True&lt;/CSharpFormatDocComments&gt;&lt;/Profile&gt;</s:String>
-	<s:String x:Key="/Default/CodeStyle/CodeCleanup/RecentlyUsedProfile/@EntryValue">tanghai</s:String>
-	
-	
-	<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpCodeStyle/ThisQualifier/INSTANCE_MEMBERS_QUALIFY_MEMBERS/@EntryValue">All</s:String>
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/ALIGN_FIRST_ARG_BY_PAREN/@EntryValue">True</s:Boolean>
-	
-	
-	
-	
-	
-	<s:Int64 x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/CONTINUOUS_INDENT_MULTIPLIER/@EntryValue">2</s:Int64>
-	<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/FORCE_ATTRIBUTE_STYLE/@EntryValue">JOIN</s:String>
-	<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/FORCE_FIXED_BRACES_STYLE/@EntryValue">ALWAYS_ADD</s:String>
-	<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/FORCE_FOR_BRACES_STYLE/@EntryValue">ALWAYS_ADD</s:String>
-	<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/FORCE_FOREACH_BRACES_STYLE/@EntryValue">ALWAYS_ADD</s:String>
-	<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/FORCE_IFELSE_BRACES_STYLE/@EntryValue">ALWAYS_ADD</s:String>
-	<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/FORCE_USING_BRACES_STYLE/@EntryValue">ALWAYS_ADD</s:String>
-	<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/FORCE_WHILE_BRACES_STYLE/@EntryValue">ALWAYS_ADD</s:String>
-	
-	
-	
-	<s:Int64 x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/KEEP_BLANK_LINES_IN_CODE/@EntryValue">1</s:Int64>
-	<s:Int64 x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/KEEP_BLANK_LINES_IN_DECLARATIONS/@EntryValue">1</s:Int64>
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/KEEP_USER_LINEBREAKS/@EntryValue">False</s:Boolean>
-	<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/MODIFIERS_ORDER/@EntryValue">private public protected internal new abstract virtual override sealed static readonly extern unsafe volatile async</s:String>
-	
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/PLACE_FIELD_ATTRIBUTE_ON_SAME_LINE/@EntryValue">False</s:Boolean>
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/PLACE_SIMPLE_ACCESSOR_ON_SINGLE_LINE/@EntryValue">False</s:Boolean>
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/PLACE_WHILE_ON_NEW_LINE/@EntryValue">True</s:Boolean>
-	<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/REDUNDANT_THIS_QUALIFIER_STYLE/@EntryValue">ALWAYS_USE</s:String>
-	<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/SIMPLE_EMBEDDED_STATEMENT_STYLE/@EntryValue">LINE_BREAK</s:String>
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/SPACE_AROUND_MULTIPLICATIVE_OP/@EntryValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/SPACE_BEFORE_EXTENDS_COLON/@EntryValue">False</s:Boolean>
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/SPACE_BEFORE_TERNARY_QUEST/@EntryValue">False</s:Boolean>
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/SPACE_WITHIN_SINGLE_LINE_ARRAY_INITIALIZER_BRACES/@EntryValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/STICK_COMMENT/@EntryValue">False</s:Boolean>
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/WRAP_AFTER_DECLARATION_LPAR/@EntryValue">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/WRAP_BEFORE_FIRST_TYPE_PARAMETER_CONSTRAINT/@EntryValue">True</s:Boolean>
-	<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/WRAP_FOR_STMT_HEADER_STYLE/@EntryValue">WRAP_IF_LONG</s:String>
-	<s:Int64 x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/WRAP_LIMIT/@EntryValue">150</s:Int64>
-	<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/WRAP_MULTIPLE_DECLARATION_STYLE/@EntryValue">WRAP_IF_LONG</s:String>
-	<s:String x:Key="/Default/CodeStyle/CodeFormatting/CSharpFormat/WRAP_TERNARY_EXPR_STYLE/@EntryValue">WRAP_IF_LONG</s:String>
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/JavaScriptCodeFormatting/ALIGN_MULTIPLE_DECLARATION/@EntryValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/JavaScriptCodeFormatting/JavaScriptFormatOther/ALIGN_MULTIPLE_DECLARATION/@EntryValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/XmlFormatter/BlankLineAfterProcessingInstructions/@EntryValue">False</s:Boolean>
-	<s:String x:Key="/Default/CodeStyle/CodeFormatting/XmlFormatter/ProcessingInstructionAttributeIndenting/@EntryValue">TwoSteps</s:String>
-	<s:String x:Key="/Default/CodeStyle/CodeFormatting/XmlFormatter/TagAttributeIndenting/@EntryValue">TwoSteps</s:String>
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/XmlFormatter/TagSpaceBeforeHeaderEnd1/@EntryValue">False</s:Boolean>
-	<s:Boolean x:Key="/Default/CodeStyle/CodeFormatting/XmlFormatter/WrapBeforeAttr/@EntryValue">False</s:Boolean>
-	
-	<s:String x:Key="/Default/CodeStyle/CSharpMemberOrderPattern/CustomPattern/@EntryValue">&lt;?xml version="1.0" encoding="utf-8" ?&gt;&#xD;
-&#xD;
-&lt;!--&#xD;
-I. Overall&#xD;
-&#xD;
-I.1 Each pattern can have &lt;Match&gt;....&lt;/Match&gt; element. For the given type declaration, the pattern with the match, evaluated to 'true' with the largest weight, will be used &#xD;
-I.2 Each pattern consists of the sequence of &lt;Entry&gt;...&lt;/Entry&gt; elements. Type member declarations are distributed between entries&#xD;
-I.3 If pattern has RemoveAllRegions="true" attribute, then all regions will be cleared prior to reordering. Otherwise, only auto-generated regions will be cleared&#xD;
-I.4 The contents of each entry is sorted by given keys (First key is primary,  next key is secondary, etc). Then the declarations are grouped and en-regioned by given property&#xD;
-&#xD;
-II. Available match operands&#xD;
-&#xD;
-Each operand may have Weight="..." attribute. This weight will be added to the match weight if the operand is evaluated to 'true'.&#xD;
-The default weight is 1&#xD;
-&#xD;
-II.1 Boolean functions:&#xD;
-II.1.1 &lt;And&gt;....&lt;/And&gt;&#xD;
-II.1.2 &lt;Or&gt;....&lt;/Or&gt;&#xD;
-II.1.3 &lt;Not&gt;....&lt;/Not&gt;&#xD;
-&#xD;
-II.2 Operands&#xD;
-II.2.1 &lt;Kind Is="..."/&gt;. Kinds are: class, struct, interface, enum, delegate, type, constructor, destructor, property, indexer, method, operator, field, constant, event, member&#xD;
-II.2.2 &lt;Name Is="..." [IgnoreCase="true/false"] /&gt;. The 'Is' attribute contains regular expression&#xD;
-II.2.3 &lt;HasAttribute CLRName="..." [Inherit="true/false"] /&gt;. The 'CLRName' attribute contains regular expression&#xD;
-II.2.4 &lt;Access Is="..."/&gt;. The 'Is' values are: public, protected, internal, protected internal, private&#xD;
-II.2.5 &lt;Static/&gt;&#xD;
-II.2.6 &lt;Abstract/&gt;&#xD;
-II.2.7 &lt;Virtual/&gt;&#xD;
-II.2.8 &lt;Override/&gt;&#xD;
-II.2.9 &lt;Sealed/&gt;&#xD;
-II.2.10 &lt;Readonly/&gt;&#xD;
-II.2.11 &lt;ImplementsInterface CLRName="..."/&gt;. The 'CLRName' attribute contains regular expression&#xD;
-II.2.12 &lt;HandlesEvent /&gt;&#xD;
---&gt;&#xD;
-&#xD;
-&lt;Patterns xmlns="urn:shemas-jetbrains-com:member-reordering-patterns"&gt;&#xD;
-&#xD;
-  &lt;!--Do not reorder COM interfaces and structs marked by StructLayout attribute--&gt;&#xD;
-  &lt;Pattern&gt;&#xD;
-    &lt;Match&gt;&#xD;
-      &lt;Or Weight="100"&gt;&#xD;
-        &lt;And&gt;&#xD;
-          &lt;Kind Is="interface"/&gt;&#xD;
-          &lt;Or&gt;&#xD;
-            &lt;HasAttribute CLRName="System.Runtime.InteropServices.InterfaceTypeAttribute"/&gt;&#xD;
-            &lt;HasAttribute CLRName="System.Runtime.InteropServices.ComImport"/&gt;&#xD;
-          &lt;/Or&gt;&#xD;
-        &lt;/And&gt;&#xD;
-        &lt;HasAttribute CLRName="System.Runtime.InteropServices.StructLayoutAttribute"/&gt;&#xD;
-      &lt;/Or&gt;&#xD;
-    &lt;/Match&gt;&#xD;
-  &lt;/Pattern&gt;&#xD;
-&#xD;
-  &lt;!--Special formatting of NUnit test fixture--&gt;&#xD;
-  &lt;Pattern RemoveAllRegions="true"&gt;&#xD;
-    &lt;Match&gt;&#xD;
-      &lt;And Weight="100"&gt;&#xD;
-        &lt;Kind Is="class"/&gt;&#xD;
-        &lt;HasAttribute CLRName="NUnit.Framework.TestFixtureAttribute" Inherit="true"/&gt;&#xD;
-      &lt;/And&gt;&#xD;
-    &lt;/Match&gt;&#xD;
-&#xD;
-    &lt;!--Setup/Teardow--&gt;&#xD;
-    &lt;Entry&gt;&#xD;
-      &lt;Match&gt;&#xD;
-        &lt;And&gt;&#xD;
-          &lt;Kind Is="method"/&gt;&#xD;
-          &lt;Or&gt;&#xD;
-            &lt;HasAttribute CLRName="NUnit.Framework.SetUpAttribute" Inherit="true"/&gt;&#xD;
-            &lt;HasAttribute CLRName="NUnit.Framework.TearDownAttribute" Inherit="true"/&gt;&#xD;
-            &lt;HasAttribute CLRName="NUnit.Framework.FixtureSetUpAttribute" Inherit="true"/&gt;&#xD;
-            &lt;HasAttribute CLRName="NUnit.Framework.FixtureTearDownAttribute" Inherit="true"/&gt;&#xD;
-          &lt;/Or&gt;&#xD;
-        &lt;/And&gt;&#xD;
-      &lt;/Match&gt;&#xD;
-      &lt;Group Region="Setup/Teardown"/&gt;&#xD;
-    &lt;/Entry&gt;&#xD;
-    &#xD;
-    &lt;!--All other members--&gt;&#xD;
-    &lt;Entry/&gt;&#xD;
-    &#xD;
-    &lt;!--Test methods--&gt;&#xD;
-    &lt;Entry&gt;&#xD;
-      &lt;Match&gt;&#xD;
-        &lt;And Weight="100"&gt;&#xD;
-          &lt;Kind Is="method"/&gt;&#xD;
-          &lt;HasAttribute CLRName="NUnit.Framework.TestAttribute" Inherit="false"/&gt;&#xD;
-        &lt;/And&gt;&#xD;
-      &lt;/Match&gt;&#xD;
-      &lt;Sort&gt;&#xD;
-        &lt;Name/&gt;&#xD;
-      &lt;/Sort&gt;&#xD;
-    &lt;/Entry&gt;&#xD;
-  &lt;/Pattern&gt;&#xD;
-&#xD;
-  &lt;!--Default pattern--&gt;&#xD;
-  &lt;Pattern&gt;&#xD;
-&#xD;
-    &lt;!--public delegate--&gt;&#xD;
-    &lt;Entry&gt;&#xD;
-      &lt;Match&gt;&#xD;
-        &lt;And Weight="100"&gt;&#xD;
-          &lt;Access Is="public"/&gt;&#xD;
-          &lt;Kind Is="delegate"/&gt;&#xD;
-        &lt;/And&gt;&#xD;
-      &lt;/Match&gt;&#xD;
-      &lt;Sort&gt;&#xD;
-        &lt;Name/&gt;&#xD;
-      &lt;/Sort&gt;&#xD;
-      &lt;Group Region="Delegates"/&gt;&#xD;
-    &lt;/Entry&gt;&#xD;
-    &#xD;
-    &lt;!--public enum--&gt;&#xD;
-    &lt;Entry&gt;&#xD;
-      &lt;Match&gt;&#xD;
-        &lt;And Weight="100"&gt;&#xD;
-          &lt;Access Is="public"/&gt;&#xD;
-          &lt;Kind Is="enum"/&gt;&#xD;
-        &lt;/And&gt;&#xD;
-      &lt;/Match&gt;&#xD;
-      &lt;Sort&gt;&#xD;
-        &lt;Name/&gt;&#xD;
-      &lt;/Sort&gt;&#xD;
-      &lt;Group&gt;&#xD;
-        &lt;Name Region="${Name} enum"/&gt;&#xD;
-      &lt;/Group&gt;&#xD;
-    &lt;/Entry&gt;&#xD;
-&#xD;
-    &lt;!--static fields and constants--&gt;&#xD;
-    &lt;Entry&gt;&#xD;
-      &lt;Match&gt;&#xD;
-        &lt;Or&gt;&#xD;
-          &lt;Kind Is="constant"/&gt;&#xD;
-          &lt;And&gt;&#xD;
-            &lt;Kind Is="field"/&gt;&#xD;
-            &lt;Static/&gt;&#xD;
-          &lt;/And&gt;&#xD;
-        &lt;/Or&gt;&#xD;
-      &lt;/Match&gt;&#xD;
-      &lt;Sort&gt;&#xD;
-        &lt;Kind Order="constant field"/&gt;&#xD;
-      &lt;/Sort&gt;&#xD;
-    &lt;/Entry&gt;&#xD;
-    &#xD;
-    &lt;!--instance fields--&gt;&#xD;
-    &lt;Entry&gt;&#xD;
-      &lt;Match&gt;&#xD;
-        &lt;And&gt;&#xD;
-          &lt;Kind Is="field"/&gt;&#xD;
-          &lt;Not&gt;&#xD;
-            &lt;Static/&gt;&#xD;
-          &lt;/Not&gt;&#xD;
-        &lt;/And&gt;&#xD;
-      &lt;/Match&gt;&#xD;
-      &lt;Sort&gt;&#xD;
-        &lt;Readonly/&gt;&#xD;
-        &lt;Name/&gt;&#xD;
-      &lt;/Sort&gt;&#xD;
-    &lt;/Entry&gt;&#xD;
-&#xD;
-    &lt;!--Constructors. Place static one first--&gt;&#xD;
-    &lt;Entry&gt;&#xD;
-      &lt;Match&gt;&#xD;
-        &lt;Kind Is="constructor"/&gt;&#xD;
-      &lt;/Match&gt;&#xD;
-      &lt;Sort&gt;&#xD;
-        &lt;Static/&gt;&#xD;
-      &lt;/Sort&gt;&#xD;
-    &lt;/Entry&gt;&#xD;
-    &#xD;
-    &lt;!--properties, indexers--&gt;&#xD;
-    &lt;Entry&gt;&#xD;
-      &lt;Match&gt;&#xD;
-        &lt;Or&gt;&#xD;
-          &lt;Kind Is="property"/&gt;&#xD;
-          &lt;Kind Is="indexer"/&gt;&#xD;
-        &lt;/Or&gt;&#xD;
-      &lt;/Match&gt;&#xD;
-    &lt;/Entry&gt;&#xD;
-    &#xD;
-    &lt;!--interface implementations--&gt;&#xD;
-    &lt;Entry&gt;&#xD;
-      &lt;Match&gt;&#xD;
-        &lt;And Weight="100"&gt;&#xD;
-          &lt;Kind Is="member"/&gt;&#xD;
-          &lt;ImplementsInterface/&gt;&#xD;
-        &lt;/And&gt;&#xD;
-      &lt;/Match&gt;&#xD;
-      &lt;Sort&gt;&#xD;
-        &lt;ImplementsInterface Immediate="true"/&gt;&#xD;
-      &lt;/Sort&gt;&#xD;
-      &lt;Group&gt;&#xD;
-        &lt;ImplementsInterface Immediate="true" Region="${ImplementsInterface} Members"/&gt;&#xD;
-      &lt;/Group&gt;&#xD;
-    &lt;/Entry&gt;&#xD;
-    &#xD;
-    &lt;!--all other members--&gt;&#xD;
-    &lt;Entry/&gt;&#xD;
-    &#xD;
-    &lt;!--nested types--&gt;&#xD;
-    &lt;Entry&gt;&#xD;
-      &lt;Match&gt;&#xD;
-        &lt;Kind Is="type"/&gt;&#xD;
-      &lt;/Match&gt;&#xD;
-      &lt;Sort&gt;&#xD;
-        &lt;Name/&gt;&#xD;
-      &lt;/Sort&gt;&#xD;
-      &lt;Group&gt;&#xD;
-        &lt;Name Region="Nested type: ${Name}"/&gt;&#xD;
-      &lt;/Group&gt;&#xD;
-    &lt;/Entry&gt;&#xD;
-  &lt;/Pattern&gt;&#xD;
-  &#xD;
-&lt;/Patterns&gt;&#xD;
-</s:String>
-	<s:String x:Key="/Default/CodeStyle/CSharpVarKeywordUsage/ForBuiltInTypes/@EntryValue">UseExplicitType</s:String>
-	<s:String x:Key="/Default/CodeStyle/CSharpVarKeywordUsage/ForSimpleTypes/@EntryValue">UseExplicitType</s:String>
-	<s:Boolean x:Key="/Default/CodeStyle/Generate/=Properties/@KeyIndexDefined">True</s:Boolean>
-	<s:String x:Key="/Default/CodeStyle/Generate/=Properties/Options/=DebuggerStepsThrough/@EntryIndexedValue">False</s:String>
-	<s:String x:Key="/Default/CodeStyle/Generate/=Properties/Options/=XmlDocumentation/@EntryIndexedValue">False</s:String>
-	<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/EventHandlerPatternLong/@EntryValue">$object$_On$event$</s:String>
-	<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/PredefinedNamingRules/=PrivateInstanceFields/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="" Suffix="" Style="aaBb" /&gt;</s:String>
-	<s:String x:Key="/Default/CodeStyle/Naming/CSharpNaming/PredefinedNamingRules/=PrivateStaticFields/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="" Suffix="" Style="aaBb" /&gt;</s:String>
-	<s:String x:Key="/Default/CodeStyle/Naming/VBNaming/EventHandlerPatternLong/@EntryValue">$object$_On$event$</s:String>
-	<s:String x:Key="/Default/CodeStyle/Naming/XamlNaming/UserRules/=XAML_005FFIELD/@EntryIndexedValue">&lt;Policy Inspect="True" Prefix="" Suffix="" Style="aaBb" /&gt;</s:String>
-	
-	<s:String x:Key="/Default/Environment/Editor/MatchingBraceHighlighting/Position/@EntryValue">BOTH_SIDES</s:String>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Environment/OpenDocument/OpenDocumentAfterModification/@EntryValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Environment/SearchAndNavigation/AutoExpandResults/@EntryValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Environment/SearchAndNavigation/MergeOccurences/@EntryValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Environment/SearchAndNavigation/OpenPreviewTabForSelectedItemInFindResults/@EntryValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ECSharpFileLayoutPatternsUpgrade/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002EAddAccessorOwnerDeclarationBracesMigration/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002EMigrateBlankLinesAroundFieldToBlankLinesAroundProperty/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002ECSharp_002ECodeStyle_002ESettingsUpgrade_002EMigrateThisQualifierSettings/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Environment/SettingsMigration/IsMigratorApplied/=JetBrains_002EReSharper_002EPsi_002EJavaScript_002ECodeStyle_002ESettingsUpgrade_002EJsCodeFormatterSettingsUpgrader/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Environment/TextControl/HighlightCurrentLine/@EntryValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Environment/UnitTesting/MsTestProvider/UseTestRunConfigFromMetadataFile/@EntryValue">False</s:Boolean>
-	<s:Boolean x:Key="/Default/Environment/UpdatesManger/IsDownloadUpdateDataAllowed/@EntryValue">False</s:Boolean>
-	<s:String x:Key="/Default/Environment/UserInterface/ShortcutSchemeName/@EntryValue">VS</s:String>
-	<s:Boolean x:Key="/Default/Housekeeping/GlobalSettingsUpgraded/IsUpgraded/@EntryValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/IntellisenseHousekeeping/HintUsed/@EntryValue">True</s:Boolean>
-	<s:String x:Key="/Default/Housekeeping/Layout/DialogWindows/OptionsDialog/SelectedPageId/@EntryValue">CSharpBracesLayoutPage</s:String>
-	<s:String x:Key="/Default/Housekeeping/Layout/DialogWindows/RefactoringWizardWindow/Location/@EntryValue">247,0</s:String>
-	<s:Boolean x:Key="/Default/Housekeeping/LiveTemplatesHousekeeping/HotspotSessionHintIsShown/@EntryValue">True</s:Boolean>
-	<s:Int64 x:Key="/Default/Housekeeping/TreeModelBrowserPanelPersistance/PreviewSplitterHorizontalPosition/=SearchUsagesDescriptor/@EntryIndexedValue">269</s:Int64>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=AnalyzeReferences/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=BlockComment/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EBookmarksMenu/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EGoToBookmark0/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EGoToBookmark1/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EGoToBookmark2/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EGoToBookmark3/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EGoToBookmark4/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EGoToBookmark5/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EGoToBookmark6/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EGoToBookmark7/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EGoToBookmark8/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EGoToBookmark9/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EToggleBookmark0/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EToggleBookmark1/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EToggleBookmark2/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EToggleBookmark3/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EToggleBookmark4/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EToggleBookmark5/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EToggleBookmark6/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EToggleBookmark7/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EToggleBookmark8/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Bookmarks_002EToggleBookmark9/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ChangeSignature/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=CleanupCode/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=CompleteCodeSmart/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=CompleteCodeTypeName/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=DuplicateText/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=EnableDaemon/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=EncapsulateField/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ExploreStackTrace/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ExtendSelection/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ExtractMethod/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=FindUsagesAdvanced/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ForceCompleteItem/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Generate/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GenerateFileBesides/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoBase/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoContainingDeclaration/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoFile/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoFileMember/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoInheritors/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoLastEditLocation/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoNextErrorInSolution/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoNextHighlight/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoNextMethod/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoNextOccurence/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoPrevErrorInSolution/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoPrevHighlight/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoPreviousOccurence/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoPrevMethod/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoRecentEdits/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoRecentFiles/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoRelatedFiles/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoSymbol/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoType/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoTypeDeclaration/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=GotoUsage/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=HighlightUsages/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=InlineVariable/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=InspectThis/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=IntroduceField/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=IntroduceVariable/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=IntroParameter/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=LineComment/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=LiveTemplates_002EInsert/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=LocateInSolutionExplorerAction/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Move/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=MoveDown/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=MoveLeft/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=MoveRight/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=MoveUp/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=NavigateTo/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ParameterInfo_002EGoToPreviousSignature/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=QuickDoc/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=QuickFix/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=RefactorThis/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=Rename/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ReSharper_005FUnitTest_005FDebugContext/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ReSharper_005FUnitTest_005FRunContext/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=SafeDelete/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=SelectContainingDeclaration/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ShowAnalyzeReferences/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ShowCodeStructure/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ShowFindResults/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ShowHierarchyWindow/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ShowInspectionWindow/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ShowTodoExplorer/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ShowUnitTestExplorer/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ShowUnitTestSessions/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=ShrinkSelection/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=SilentCleanupCode/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=SurroundWith/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=TypeHierarchy_002EBrowse/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=UnitTest_002ERunCurrentSession/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=UnitTest_002ERunSolution/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=UnitTestSession_002ERepeatPreviousRun/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=WindowManager_002EActivateRecentTool/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ActionsWithShortcuts/=WindowManager_002ECloseRecentTool/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=AnalyzeReferences/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=AnalyzeReferences/Shortcuts/=Control_002BAlt_002BY/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark1/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark1/Shortcuts/=Control_002BD1/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark2/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark2/Shortcuts/=Control_002BD2/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark3/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark3/Shortcuts/=Control_002BD3/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark4/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark4/Shortcuts/=Control_002BD4/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark5/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark5/Shortcuts/=Control_002BD5/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark6/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark6/Shortcuts/=Control_002BD6/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark7/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark7/Shortcuts/=Control_002BD7/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark8/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark8/Shortcuts/=Control_002BD8/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark9/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EGoToBookmark9/Shortcuts/=Control_002BD9/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EToggleBookmark1/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EToggleBookmark1/Shortcuts/=Shift_002BControl_002BD1/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EToggleBookmark2/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EToggleBookmark2/Shortcuts/=Shift_002BControl_002BD2/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EToggleBookmark3/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EToggleBookmark3/Shortcuts/=Shift_002BControl_002BD3/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EToggleBookmark7/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EToggleBookmark7/Shortcuts/=Shift_002BControl_002BD7/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EToggleBookmark8/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Bookmarks_002EToggleBookmark8/Shortcuts/=Shift_002BControl_002BD8/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ChangeSignature/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ChangeSignature/Shortcuts/=Control_002BR_0020Control_002BS/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ChangeSignature/Shortcuts/=Control_002BR_0020S/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=CleanupCode/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=CleanupCode/Shortcuts/=Control_002BE_0020C/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=CleanupCode/Shortcuts/=Control_002BE_0020Control_002BC/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=CompleteCodeSmart/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=CompleteCodeSmart/Shortcuts/=Control_002BAlt_002BSpace/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=DuplicateText/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=DuplicateText/Shortcuts/=Control_002BD/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=EncapsulateField/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=EncapsulateField/Shortcuts/=Control_002BR_0020Control_002BE/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=EncapsulateField/Shortcuts/=Control_002BR_0020E/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ExploreStackTrace/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ExploreStackTrace/Shortcuts/=Control_002BE_0020Control_002BT/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ExploreStackTrace/Shortcuts/=Control_002BE_0020T/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ExtendSelection/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ExtendSelection/Shortcuts/=Control_002BAlt_002BRight/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ExtractMethod/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ExtractMethod/Shortcuts/=Control_002BR_0020Control_002BM/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ExtractMethod/Shortcuts/=Control_002BR_0020M/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=FindUsagesAdvanced/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=FindUsagesAdvanced/Shortcuts/=Shift_002BControl_002BAlt_002BF12/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GenerateFileBesides/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GenerateFileBesides/Shortcuts/=Control_002BAlt_002BInsert/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoContainingDeclaration/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoContainingDeclaration/Shortcuts/=Control_002BOemOpenBrackets/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoFile/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoFile/Shortcuts/=Shift_002BControl_002BT/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoNextHighlight/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoNextHighlight/Shortcuts/=Alt_002BNext/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoNextMethod/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoNextMethod/Shortcuts/=Alt_002BDown/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoNextOccurence/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoNextOccurence/Shortcuts/=Control_002BAlt_002BNext/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoPrevHighlight/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoPrevHighlight/Shortcuts/=Alt_002BPageUp/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoPreviousOccurence/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoPreviousOccurence/Shortcuts/=Control_002BAlt_002BPageUp/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoPrevMethod/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoPrevMethod/Shortcuts/=Alt_002BUp/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoRecentEdits/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoRecentEdits/Shortcuts/=Shift_002BControl_002BOemcomma/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoRecentFiles/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoRecentFiles/Shortcuts/=Control_002BOemcomma/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoSymbol/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoSymbol/Shortcuts/=Shift_002BAlt_002BT/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoType/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoType/Shortcuts/=Control_002BT/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoTypeDeclaration/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoTypeDeclaration/Shortcuts/=Shift_002BControl_002BF11/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoUsage/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=GotoUsage/Shortcuts/=Shift_002BAlt_002BF12/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=HighlightUsages/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=HighlightUsages/Shortcuts/=Shift_002BAlt_002BF11/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=InlineVariable/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=InlineVariable/Shortcuts/=Control_002BR_0020Control_002BI/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=InlineVariable/Shortcuts/=Control_002BR_0020I/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=IntroduceField/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=IntroduceField/Shortcuts/=Control_002BR_0020Control_002BF/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=IntroduceField/Shortcuts/=Control_002BR_0020F/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=IntroduceVariable/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=IntroduceVariable/Shortcuts/=Control_002BR_0020Control_002BV/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=IntroduceVariable/Shortcuts/=Control_002BR_0020V/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=IntroParameter/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=IntroParameter/Shortcuts/=Control_002BR_0020Control_002BP/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=IntroParameter/Shortcuts/=Control_002BR_0020P/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=LocateInSolutionExplorerAction/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=LocateInSolutionExplorerAction/Shortcuts/=Shift_002BAlt_002BL/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Move/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Move/Shortcuts/=Control_002BR_0020Control_002BO/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Move/Shortcuts/=Control_002BR_0020O/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=MoveDown/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=MoveDown/Shortcuts/=Shift_002BControl_002BAlt_002BDown/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=MoveLeft/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=MoveLeft/Shortcuts/=Shift_002BControl_002BAlt_002BLeft/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=MoveRight/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=MoveRight/Shortcuts/=Shift_002BControl_002BAlt_002BRight/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=MoveUp/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=MoveUp/Shortcuts/=Shift_002BControl_002BAlt_002BUp/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=QuickFix/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=QuickFix/Shortcuts/=Alt_002BReturn/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=RefactorThis/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=RefactorThis/Shortcuts/=Shift_002BControl_002BR/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Rename/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Rename/Shortcuts/=Control_002BR_0020Control_002BR/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=Rename/Shortcuts/=Control_002BR_0020R/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ReSharper_005FUnitTest_005FDebugContext/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ReSharper_005FUnitTest_005FDebugContext/Shortcuts/=Control_002BU_0020Control_002BD/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ReSharper_005FUnitTest_005FDebugContext/Shortcuts/=Control_002BU_0020D/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ReSharper_005FUnitTest_005FRunContext/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ReSharper_005FUnitTest_005FRunContext/Shortcuts/=Control_002BU_0020Control_002BR/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ReSharper_005FUnitTest_005FRunContext/Shortcuts/=Control_002BU_0020R/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=SafeDelete/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=SafeDelete/Shortcuts/=Control_002BR_0020Control_002BD/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=SafeDelete/Shortcuts/=Control_002BR_0020D/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=SelectContainingDeclaration/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=SelectContainingDeclaration/Shortcuts/=Shift_002BControl_002BOemOpenBrackets/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShowAnalyzeReferences/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShowAnalyzeReferences/Shortcuts/=Control_002BAlt_002BY/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShowCodeStructure/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShowCodeStructure/Shortcuts/=Control_002BAlt_002BF/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShowFindResults/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShowFindResults/Shortcuts/=Control_002BAlt_002BF12/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShowHierarchyWindow/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShowHierarchyWindow/Shortcuts/=Control_002BAlt_002BH/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShowInspectionWindow/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShowInspectionWindow/Shortcuts/=Control_002BAlt_002BV/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShowTodoExplorer/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShowTodoExplorer/Shortcuts/=Control_002BAlt_002BD/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShowUnitTestExplorer/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShowUnitTestExplorer/Shortcuts/=Control_002BAlt_002BU/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShowUnitTestSessions/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShowUnitTestSessions/Shortcuts/=Control_002BAlt_002BT/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShrinkSelection/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=ShrinkSelection/Shortcuts/=Control_002BAlt_002BLeft/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=SilentCleanupCode/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=SilentCleanupCode/Shortcuts/=Control_002BE_0020Control_002BF/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=SilentCleanupCode/Shortcuts/=Control_002BE_0020F/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=SurroundWith/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=SurroundWith/Shortcuts/=Control_002BE_0020Control_002BU/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=SurroundWith/Shortcuts/=Control_002BE_0020U/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=UnitTest_002ERunCurrentSession/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=UnitTest_002ERunCurrentSession/Shortcuts/=Control_002BU_0020Control_002BY/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=UnitTest_002ERunCurrentSession/Shortcuts/=Control_002BU_0020Y/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=UnitTest_002ERunSolution/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=UnitTest_002ERunSolution/Shortcuts/=Control_002BU_0020Control_002BL/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=UnitTest_002ERunSolution/Shortcuts/=Control_002BU_0020L/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=UnitTestSession_002ERepeatPreviousRun/@KeyIndexDefined">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=UnitTestSession_002ERepeatPreviousRun/Shortcuts/=Control_002BU_0020Control_002BU/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/ConflictingActions/=UnitTestSession_002ERepeatPreviousRun/Shortcuts/=Control_002BU_0020U/@EntryIndexedValue">True</s:Boolean>
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Add/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BBack/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BDown/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BF/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BF10/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BF11/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BF12/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BF2/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BF3/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BF4/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BF5/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BF6/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BF7/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BF8/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BF9/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BG/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BLeft/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BM/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BMultiply/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BNext/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BO/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BOem7/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BOemcomma/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BOemPeriod/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BP/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BPageUp/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BPause/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BR/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BReturn/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BRight/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BS/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BSubtract/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BUp/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Alt_002BW/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=B/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Back/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BA/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAdd/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BA/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BB/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BC/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BD/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BDown/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BE/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BF/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BF1/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BF10/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BF11/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BF12/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BF5/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BF6/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BG/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BH/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BI/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BInsert/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BJ/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BL/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BLeft/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BM/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BNext/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BO/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BOem6/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BOemPeriod/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BP/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BPageUp/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BPause/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BQ/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BR/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BRight/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BS/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BSpace/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BT/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BU/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BUp/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BV/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BW/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BX/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BY/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BAlt_002BZ/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BB/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BBack/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BC/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BD/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BD1/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BD2/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BD3/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BD4/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BD5/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BD6/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BD7/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BD8/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BD9/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BDelete/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BDivide/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BDown/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BE/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BEnd/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BF/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BF1/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BF10/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BF11/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BF12/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BF2/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BF4/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BF5/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BF6/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BF7/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BF9/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BG/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BH/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BHome/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BI/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BInsert/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BJ/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BK/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BL/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BLeft/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BM/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BN/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BNext/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BO/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BOem1/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BOem6/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BOem7/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BOemBackslash/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BOemcomma/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BOemOpenBrackets/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BOemPeriod/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BOemplus/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BP/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BPageUp/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BPause/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BQ/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BR/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BReturn/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BRight/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BS/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BSpace/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BSubtract/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BT/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BTab/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BU/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BUp/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BV/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BW/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BX/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BY/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Control_002BZ/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Delete/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Down/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=End/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Escape/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=F1/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=F10/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=F11/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=F12/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=F2/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=F4/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=F5/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=F6/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=F7/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=F8/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=F9/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Home/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=I/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Insert/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Left/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Next/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=O/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=PageUp/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Return/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Right/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BA/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BB/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BBack/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BC/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BD/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BD3/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BD4/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BDown/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BEnd/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BF/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BF10/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BF11/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BF12/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BF6/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BF7/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BH/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BHome/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BL/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BLeft/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BN/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BOemcomma/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BOemPeriod/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BP/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BQ/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BR/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BReturn/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BRight/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BS/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BT/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BUp/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BV/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BAlt_002BW/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BBack/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BA/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BAlt_002BC/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BAlt_002BDown/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BAlt_002BF11/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BAlt_002BF12/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BAlt_002BLeft/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BAlt_002BP/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BAlt_002BR/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BAlt_002BRight/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BAlt_002BS/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BAlt_002BUp/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BAlt_002BW/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BB/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BC/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BD/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BD1/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BD2/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BD3/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BD7/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BD8/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BDown/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BE/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BEnd/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BF10/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BF11/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BF12/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BF5/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BF6/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BF9/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BG/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BH/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BHome/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BI/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BInsert/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BJ/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BL/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BLeft/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BM/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BN/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BNext/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BO/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BOem6/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BOemcomma/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BOemOpenBrackets/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BOemPeriod/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BP/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BPageUp/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BR/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BReturn/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BRight/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BS/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BSpace/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BSubtract/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BT/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BTab/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BU/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BUp/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BV/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BW/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BX/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BY/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BControl_002BZ/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BDelete/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BDown/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BEnd/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BEscape/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BF1/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BF11/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BF12/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BF4/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BF5/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BF6/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BF7/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BF8/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BF9/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BHome/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BInsert/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BLeft/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BNext/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BPageUp/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BReturn/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BRight/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BSpace/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BTab/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Shift_002BUp/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Subtract/@KeyIndexDefined">True</s:Boolean>
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Tab/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	<s:Boolean x:Key="/Default/Housekeeping/VsActionManager/KeyboardShortcutToVsCommand/=Up/@KeyIndexDefined">True</s:Boolean>
-	
-	
-	</wpf:ResourceDictionary>

+ 0 - 6
CSharp/Config/BuffConfig/1.json

@@ -1,6 +0,0 @@
-{ 
-	"_id" : 1,
-	"Type" : 0,
-	"Name" : "yun",
-	"Duration" : 1500,
-}

+ 0 - 4
CSharp/Config/GlobalConfig/1.json

@@ -1,4 +0,0 @@
-{
-	"_id": 1
-	"Type" : 1 
-}

+ 0 - 4
CSharp/Config/UnitConfig/1.json

@@ -1,4 +0,0 @@
-{
-	"_id": 1
-	"Type" : 1 
-}

BIN
CSharp/Egametang.pfx


+ 0 - 6
CSharp/Exe/Profile/App.config

@@ -1,6 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<configuration>
-    <startup> 
-        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5"/>
-    </startup>
-</configuration>

+ 0 - 73
CSharp/Exe/Profile/Profile.csproj

@@ -1,73 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
-  <PropertyGroup>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProjectGuid>{EA0D6994-A254-4DFE-9ADC-A29B7005419F}</ProjectGuid>
-    <OutputType>Exe</OutputType>
-    <AppDesignerFolder>Properties</AppDesignerFolder>
-    <RootNamespace>Profile</RootNamespace>
-    <AssemblyName>Profile</AssemblyName>
-    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
-    <FileAlignment>512</FileAlignment>
-    <TargetFrameworkProfile />
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <PlatformTarget>AnyCPU</PlatformTarget>
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>..\..\Bin\Debug\</OutputPath>
-    <DefineConstants>DEBUG;TRACE</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <PlatformTarget>AnyCPU</PlatformTarget>
-    <DebugType>pdbonly</DebugType>
-    <Optimize>true</Optimize>
-    <OutputPath>..\..\Bin\Release\</OutputPath>
-    <DefineConstants>TRACE</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="System" />
-    <Reference Include="System.Core" />
-    <Reference Include="System.Xml.Linq" />
-    <Reference Include="System.Data.DataSetExtensions" />
-    <Reference Include="Microsoft.CSharp" />
-    <Reference Include="System.Data" />
-    <Reference Include="System.Xml" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="Program.cs" />
-    <Compile Include="Properties\AssemblyInfo.cs" />
-  </ItemGroup>
-  <ItemGroup>
-    <None Include="App.config" />
-  </ItemGroup>
-  <ItemGroup>
-    <ProjectReference Include="..\..\Platform\Common\Common.csproj">
-      <Project>{F06B995E-6508-4C5C-A396-554316C9215D}</Project>
-      <Name>Common</Name>
-    </ProjectReference>
-    <ProjectReference Include="..\..\Test\TNetTest\TNetTest.csproj">
-      <Project>{1888D319-0495-43F3-BA8D-163EC20D9437}</Project>
-      <Name>TNetTest</Name>
-    </ProjectReference>
-    <ProjectReference Include="..\..\Test\UNetTest\UNetTest.csproj">
-      <Project>{47A7404D-F501-43C5-8183-4B4E9E8C24B2}</Project>
-      <Name>UNetTest</Name>
-    </ProjectReference>
-  </ItemGroup>
-  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
-  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
-       Other similar extension points exist, see Microsoft.Common.targets.
-  <Target Name="BeforeBuild">
-  </Target>
-  <Target Name="AfterBuild">
-  </Target>
-  -->
-</Project>

+ 0 - 16
CSharp/Exe/Profile/Program.cs

@@ -1,16 +0,0 @@
-using Common.Logger;
-using TNetTest;
-
-namespace Profile
-{
-	internal static class Program
-	{
-		private static void Main(string[] args)
-		{
-			TServiceTest test = new TServiceTest();
-			Log.Debug("Profile start");
-			test.ClientSendToServer();
-			Log.Debug("Profile stop");
-		}
-	}
-}

+ 0 - 39
CSharp/Exe/Profile/Properties/AssemblyInfo.cs

@@ -1,39 +0,0 @@
-using System.Reflection;
-using System.Runtime.InteropServices;
-
-// 有关程序集的常规信息通过以下
-// 特性集控制。更改这些特性值可修改
-// 与程序集关联的信息。
-
-[assembly: AssemblyTitle("Profile")]
-[assembly: AssemblyDescription("")]
-[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("Microsoft")]
-[assembly: AssemblyProduct("Profile")]
-[assembly: AssemblyCopyright("Copyright © Microsoft 2015")]
-[assembly: AssemblyTrademark("")]
-[assembly: AssemblyCulture("")]
-
-// 将 ComVisible 设置为 false 使此程序集中的类型
-// 对 COM 组件不可见。  如果需要从 COM 访问此程序集中的类型,
-// 则将该类型上的 ComVisible 特性设置为 true。
-
-[assembly: ComVisible(false)]
-
-// 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID
-
-[assembly: Guid("784e44fc-7993-457c-ab57-28b174b9bca5")]
-
-// 程序集的版本信息由下面四个值组成: 
-//
-//      主版本
-//      次版本 
-//      生成号
-//      修订号
-//
-// 可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值,
-// 方法是按如下所示使用“*”: 
-// [assembly: AssemblyVersion("1.0.*")]
-
-[assembly: AssemblyVersion("1.0.0.0")]
-[assembly: AssemblyFileVersion("1.0.0.0")]

+ 0 - 17
CSharp/Game/Controller/BehaviorTreeNode/Not.cs

@@ -1,17 +0,0 @@
-using Model;
-
-namespace Controller
-{
-	[Node(NodeType.Not)]
-	public class Not: Node
-	{
-		public Not(NodeConfig config): base(config)
-		{
-		}
-
-		public override bool Run(Env env)
-		{
-			return !this.children[0].Run(env);
-		}
-	}
-}

+ 0 - 24
CSharp/Game/Controller/BehaviorTreeNode/Selector.cs

@@ -1,24 +0,0 @@
-using Model;
-
-namespace Controller
-{
-	[Node(NodeType.Selector)]
-	public class Selector: Node
-	{
-		public Selector(NodeConfig config): base(config)
-		{
-		}
-
-		public override bool Run(Env env)
-		{
-			foreach (var child in this.children)
-			{
-				if (child.Run(env))
-				{
-					return true;
-				}
-			}
-			return false;
-		}
-	}
-}

+ 0 - 24
CSharp/Game/Controller/BehaviorTreeNode/Sequence.cs

@@ -1,24 +0,0 @@
-using Model;
-
-namespace Controller
-{
-	[Node(NodeType.Sequence)]
-	internal class Sequence: Node
-	{
-		public Sequence(NodeConfig config): base(config)
-		{
-		}
-
-		public override bool Run(Env env)
-		{
-			foreach (var child in this.children)
-			{
-				if (!child.Run(env))
-				{
-					return false;
-				}
-			}
-			return true;
-		}
-	}
-}

+ 0 - 9
CSharp/Game/Controller/ConfigCategory/BuffCategory.cs

@@ -1,9 +0,0 @@
-using Model;
-
-namespace Controller
-{
-	[Config(ServerType.City)]
-	public class BuffCategory: ACategory<BuffConfig>
-	{
-	}
-}

+ 0 - 9
CSharp/Game/Controller/ConfigCategory/GlobalCategory.cs

@@ -1,9 +0,0 @@
-using Model;
-
-namespace Controller
-{
-	[Config(ServerType.All)]
-	public class GlobalCategory: ACategory<GlobalConfig>
-	{
-	}
-}

+ 0 - 30
CSharp/Game/Controller/ConfigCategory/ServerInfoCategory.cs

@@ -1,30 +0,0 @@
-using System.Collections.Generic;
-using Model;
-
-namespace Controller
-{
-	[Config(ServerType.All)]
-	public class ServerInfoCategory: ACategory<ServerInfoConfig>
-	{
-		public Dictionary<string, ServerInfoConfig> NameServerInfoConfigs =
-				new Dictionary<string, ServerInfoConfig>();
-
-		public override void EndInit()
-		{
-			base.EndInit();
-
-			foreach (ServerInfoConfig serverInfoConfig in this.GetAll())
-			{
-				this.NameServerInfoConfigs[serverInfoConfig.Name] = serverInfoConfig;
-			}
-		}
-
-		public ServerInfoConfig this[string name]
-		{
-			get
-			{
-				return this.NameServerInfoConfigs[name];
-			}
-		}
-	}
-}

+ 0 - 9
CSharp/Game/Controller/ConfigCategory/TreeCategory.cs

@@ -1,9 +0,0 @@
-using Model;
-
-namespace Controller
-{
-	[Config(ServerType.All)]
-	public class TreeCategory: ACategory<TreeConfig>
-	{
-	}
-}

+ 0 - 9
CSharp/Game/Controller/ConfigCategory/UnitCategory.cs

@@ -1,9 +0,0 @@
-using Model;
-
-namespace Controller
-{
-	[Config(ServerType.All)]
-	public class UnitCategory: ACategory<UnitConfig>
-	{
-	}
-}

+ 0 - 82
CSharp/Game/Controller/Controller.csproj

@@ -1,82 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="12.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
-  <PropertyGroup>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProjectGuid>{7D5B90DF-43AC-42B8-9A52-2B985BC42A5C}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <AppDesignerFolder>Properties</AppDesignerFolder>
-    <RootNamespace>Controller</RootNamespace>
-    <AssemblyName>Controller</AssemblyName>
-    <TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
-    <FileAlignment>512</FileAlignment>
-    <TargetFrameworkProfile />
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>..\..\Bin\Debug\</OutputPath>
-    <DefineConstants>DEBUG;TRACE</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>pdbonly</DebugType>
-    <Optimize>true</Optimize>
-    <OutputPath>..\..\Bin\Release\</OutputPath>
-    <DefineConstants>TRACE</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="MongoDB.Bson, Version=2.0.1.27, Culture=neutral, processorArchitecture=MSIL">
-      <HintPath>..\..\packages\MongoDB.Bson.2.0.1\lib\net45\MongoDB.Bson.dll</HintPath>
-      <Private>True</Private>
-    </Reference>
-    <Reference Include="NLog, Version=4.1.0.0, Culture=neutral, PublicKeyToken=5120e14c03d0593c, processorArchitecture=MSIL">
-      <HintPath>..\..\packages\NLog.4.1.0\lib\net45\NLog.dll</HintPath>
-      <Private>True</Private>
-    </Reference>
-    <Reference Include="System" />
-    <Reference Include="System.Core" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="Logic\AddressHelper.cs" />
-    <Compile Include="ConfigCategory\TreeCategory.cs" />
-    <Compile Include="Event\SleepTimeoutEvent.cs" />
-    <Compile Include="Event\BuffTimeoutEvent.cs" />
-    <Compile Include="BehaviorTreeNode\Not.cs" />
-    <Compile Include="BehaviorTreeNode\Selector.cs" />
-    <Compile Include="BehaviorTreeNode\Sequence.cs" />
-    <Compile Include="ConfigCategory\BuffCategory.cs" />
-    <Compile Include="ConfigCategory\GlobalCategory.cs" />
-    <Compile Include="ConfigCategory\ServerInfoCategory.cs" />
-    <Compile Include="ConfigCategory\UnitCategory.cs" />
-    <Compile Include="Factory\UnitPlayerFactory.cs" />
-    <Compile Include="Message\CMsgLoginEvent.cs" />
-    <Compile Include="Properties\AssemblyInfo.cs" />
-  </ItemGroup>
-  <ItemGroup>
-    <ProjectReference Include="..\..\Platform\Common\Common.csproj">
-      <Project>{F06B995E-6508-4C5C-A396-554316C9215D}</Project>
-      <Name>Common</Name>
-    </ProjectReference>
-    <ProjectReference Include="..\Model\Model.csproj">
-      <Project>{0608C0C1-F584-4092-AAF9-1E99A78E3703}</Project>
-      <Name>Model</Name>
-    </ProjectReference>
-  </ItemGroup>
-  <ItemGroup>
-    <Folder Include="Extension\" />
-  </ItemGroup>
-  <Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
-  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
-       Other similar extension points exist, see Microsoft.Common.targets.
-  <Target Name="BeforeBuild">
-  </Target>
-  <Target Name="AfterBuild">
-  </Target>
-  -->
-</Project>

+ 0 - 19
CSharp/Game/Controller/Event/BuffTimeoutEvent.cs

@@ -1,19 +0,0 @@
-using Model;
-using MongoDB.Bson;
-
-namespace Controller
-{
-	[Event(EventType.BuffTimeout, ServerType.City)]
-	public class BuffTimeoutEvent: AEvent<Env>
-	{
-		public override void Run(Env env)
-		{
-			Unit owner = World.Instance.GetComponent<UnitComponent>().Get(env.Get<ObjectId>(EnvKey.OwnerId));
-			if (owner == null)
-			{
-				return;
-			}
-			owner.GetComponent<BuffComponent>().RemoveById(env.Get<ObjectId>(EnvKey.BuffId));
-		}
-	}
-}

+ 0 - 16
CSharp/Game/Controller/Event/SleepTimeoutEvent.cs

@@ -1,16 +0,0 @@
-using System.Threading.Tasks;
-using Model;
-
-namespace Controller
-{
-	[Event(EventType.SleepTimeout, ServerType.City)]
-	public class SleepTimeoutEvent_RunTcs : AEvent<Env>
-	{
-		public override void Run(Env env)
-		{
-			TaskCompletionSource<bool> tcs =
-					env.Get<TaskCompletionSource<bool>>(EnvKey.SleepTimeout_TaskCompletionSource);
-			tcs.SetResult(true);
-		}
-	}
-}

+ 0 - 15
CSharp/Game/Controller/Factory/UnitPlayerFactory.cs

@@ -1,15 +0,0 @@
-using Model;
-
-namespace Controller
-{
-	[Factory(typeof (Unit), UnitType.GatePlayer)]
-	public class UnitGatePlayerFactory: IFactory<Unit>
-	{
-		public Unit Create(int configId)
-		{
-			Unit gatePlayer = new Unit(configId);
-			World.Instance.GetComponent<UnitComponent>().Add(gatePlayer);
-			return gatePlayer;
-		}
-	}
-}

+ 0 - 15
CSharp/Game/Controller/Logic/AddressHelper.cs

@@ -1,15 +0,0 @@
-using Model;
-
-namespace Controller
-{
-	public static class AddressHelper
-	{
-		public static string GetAddressByServerName(string serverName)
-		{
-			ServerInfoConfig serverInfoConfig =
-					World.Instance.GetComponent<ConfigComponent>().GetCategory<ServerInfoCategory>()[serverName];
-			string address = serverInfoConfig.Host + ":" + serverInfoConfig.Port;
-			return address;
-		}
-	}
-}

+ 0 - 20
CSharp/Game/Controller/Message/CMsgLoginEvent.cs

@@ -1,20 +0,0 @@
-using System.Threading.Tasks;
-using Model;
-
-namespace Controller
-{
-	public class CMsgLogin
-	{
-		public byte[] Account { get; set; }
-		public byte[] PassMd5 { get; set; }
-	}
-
-	[Message(ServerType.Gate)]
-	internal class CMsgLoginEvent : MEvent<CMsgLogin, Task<bool>>
-	{
-		public override async Task<bool> Run(CMsgLogin msg)
-		{
-			return true;
-		}
-	}
-}

+ 0 - 39
CSharp/Game/Controller/Properties/AssemblyInfo.cs

@@ -1,39 +0,0 @@
-using System.Reflection;
-using System.Runtime.InteropServices;
-
-// 有关程序集的常规信息通过以下
-// 特性集控制。更改这些特性值可修改
-// 与程序集关联的信息。
-
-[assembly: AssemblyTitle("Controller")]
-[assembly: AssemblyDescription("")]
-[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("Microsoft")]
-[assembly: AssemblyProduct("Controller")]
-[assembly: AssemblyCopyright("Copyright © Microsoft 2015")]
-[assembly: AssemblyTrademark("")]
-[assembly: AssemblyCulture("")]
-
-// 将 ComVisible 设置为 false 使此程序集中的类型
-// 对 COM 组件不可见。  如果需要从 COM 访问此程序集中的类型,
-// 则将该类型上的 ComVisible 特性设置为 true。
-
-[assembly: ComVisible(false)]
-
-// 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID
-
-[assembly: Guid("d9d1f906-81a1-48c8-b901-93e2aede657c")]
-
-// 程序集的版本信息由下面四个值组成: 
-//
-//      主版本
-//      次版本 
-//      生成号
-//      修订号
-//
-// 可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值,
-// 方法是按如下所示使用“*”: 
-// [assembly: AssemblyVersion("1.0.*")]
-
-[assembly: AssemblyVersion("1.0.0.0")]
-[assembly: AssemblyFileVersion("1.0.0.0")]

+ 0 - 56
CSharp/Game/Model/ACategory.cs

@@ -1,56 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.IO;
-using System.Linq;
-using Common.Helper;
-
-namespace Model
-{
-	public abstract class ACategory<T>: ICategory where T : AConfig
-	{
-		private Dictionary<int, T> dict;
-
-		public virtual void BeginInit()
-		{
-			this.dict = new Dictionary<int, T>();
-
-			string path = Path.Combine(@"../../Config/", typeof (T).Name);
-
-			if (!Directory.Exists(path))
-			{
-				throw new Exception($"not found config path: {path}");
-			}
-
-			foreach (string file in Directory.GetFiles(path))
-			{
-				T t = MongoHelper.FromJson<T>(File.ReadAllText(file));
-				this.dict.Add(t.Id, t);
-			}
-		}
-
-		public Type ConfigType
-		{
-			get
-			{
-				return typeof (T);
-			}
-		}
-
-		public virtual void EndInit()
-		{
-		}
-
-		public T this[int type]
-		{
-			get
-			{
-				return this.dict[type];
-			}
-		}
-
-		public T[] GetAll()
-		{
-			return this.dict.Values.ToArray();
-		}
-	}
-}

+ 0 - 19
CSharp/Game/Model/AConfig.cs

@@ -1,19 +0,0 @@
-using System.ComponentModel;
-using MongoDB.Bson.Serialization.Attributes;
-
-namespace Model
-{
-	public abstract class AConfig: ISupportInitialize
-	{
-		[BsonId]
-		public int Id { get; set; }
-
-		public virtual void BeginInit()
-		{
-		}
-
-		public virtual void EndInit()
-		{
-		}
-	}
-}

+ 0 - 27
CSharp/Game/Model/AEventAttribute.cs

@@ -1,27 +0,0 @@
-using System;
-
-namespace Model
-{
-	[AttributeUsage(AttributeTargets.Class)]
-	public abstract class AEventAttribute: Attribute
-	{
-		public EventType Type { get; private set; }
-
-		private ServerType ServerType { get; set; }
-
-		protected AEventAttribute(EventType type, ServerType serverType)
-		{
-			this.Type = type;
-			this.ServerType = serverType;
-		}
-
-		public bool Contains(ServerType serverType)
-		{
-			if ((this.ServerType & serverType) == 0)
-			{
-				return false;
-			}
-			return true;
-		}
-	}
-}

+ 0 - 71
CSharp/Game/Model/Actor.cs

@@ -1,71 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Threading.Tasks;
-using Common.Base;
-using Common.Logger;
-using MongoDB.Bson;
-
-namespace Model
-{
-	public class Actor : Entity<Unit>, IDisposable
-	{
-		private readonly Queue<byte[]> msgQueue = new Queue<byte[]>();
-
-		private Action msgAction = () => { };
-		
-		private bool isStop;
-
-		public Actor(ObjectId id): base(id)
-		{
-			this.Start();
-		}
-
-		private async void Start()
-		{
-			while (!this.isStop)
-			{
-				try
-				{
-					byte[] messageBytes = await this.Get();
-					Opcode opcode = (Opcode)BitConverter.ToUInt16(messageBytes, 0);
-					await World.Instance.GetComponent<MessageComponent>().RunAsync(opcode, messageBytes);
-				}
-				catch (Exception e)
-				{
-					Log.Trace(e.ToString());
-				}
-			}
-		}
-
-		public void Add(byte[] msg)
-		{
-			this.msgQueue.Enqueue(msg);
-			this.msgAction();
-		}
-
-		private Task<byte[]> Get()
-		{
-			var tcs = new TaskCompletionSource<byte[]>();
-			if (this.msgQueue.Count > 0)
-			{
-				byte[] messageBytes = this.msgQueue.Dequeue();
-				tcs.SetResult(messageBytes);
-			}
-			else
-			{
-				this.msgAction = () =>
-				{
-					this.msgAction = () => { };
-					byte[] msg = this.msgQueue.Dequeue();
-					tcs.SetResult(msg);
-				};
-			}
-			return tcs.Task;
-		}
-
-		public void Dispose()
-		{
-			this.isStop = true;
-		}
-	}
-}

+ 0 - 17
CSharp/Game/Model/BehaviorTree/BehaviorTree.cs

@@ -1,17 +0,0 @@
-namespace Model
-{
-	public class BehaviorTree
-	{
-		private readonly Node node;
-		
-		public BehaviorTree(Node node)
-		{
-			this.node = node;
-		}
-
-		public bool Run(Env env)
-		{
-			return this.node.Run(env);
-		}
-	}
-}

+ 0 - 56
CSharp/Game/Model/BehaviorTree/Node.cs

@@ -1,56 +0,0 @@
-using System.Collections.Generic;
-
-namespace Model
-{
-	public abstract class Node
-	{
-		private readonly NodeConfig config;
-
-		protected readonly List<Node> children = new List<Node>();
-
-		protected Node(NodeConfig config)
-		{
-			this.config = config;
-		}
-
-		/// <summary>
-		/// 策划配置的id
-		/// </summary>
-		public int Id
-		{
-			get
-			{
-				return this.config.Id;
-			}
-		}
-
-		/// <summary>
-		/// 节点的类型例如: NodeType.Not
-		/// </summary>
-		public NodeType Type
-		{
-			get
-			{
-				return this.config.Type;
-			}
-		}
-
-		public List<string> Args
-		{
-			get
-			{
-				return this.config.Args;
-			}
-		}
-
-		public void AddChild(Node child)
-		{
-			this.children.Add(child);
-		}
-
-		public virtual bool Run(Env env)
-		{
-			return true;
-		}
-	}
-}

+ 0 - 15
CSharp/Game/Model/BehaviorTree/NodeAttribute.cs

@@ -1,15 +0,0 @@
-using System;
-
-namespace Model
-{
-	[AttributeUsage(AttributeTargets.Class)]
-	public class NodeAttribute: Attribute
-	{
-		public NodeType Type { get; private set; }
-
-		public NodeAttribute(NodeType type)
-		{
-			this.Type = type;
-		}
-	}
-}

+ 0 - 92
CSharp/Game/Model/BehaviorTree/NodeType.cs

@@ -1,92 +0,0 @@
-namespace Model
-{
-	public enum NodeType
-	{
-		Selector = 1,
-		Sequence = 2,
-		Not = 10,
-		Weight = 11,
-		True = 12,
-		MoveToTarget = 100,
-		Desdroy = 101,
-		DistanceWithTarget = 102,
-
-		/// <summary>
-		/// 后退移动
-		/// </summary>
-		BackMove = 103,
-
-		/// <summary>
-		/// 平行移动
-		/// </summary>
-		MoveToTargetParallel = 104,
-
-		PlayMotion = 210,
-
-		/// <summary>
-		/// 隐身
-		/// </summary>
-		ApplyCloak = 211,
-
-		/// <summary>
-		/// 取消隐身
-		/// </summary>
-		CancelCloak = 212,
-
-		/// <summary>
-		/// 改变模型
-		/// </summary>
-		ChangeModel = 213,
-
-		/// <summary>
-		/// 还原模型
-		/// </summary>
-		RevertModel = 214,
-
-		/// <summary>
-		/// 改变材质
-		/// </summary>
-		ChangeMaterial = 215,
-
-		/// <summary>
-		/// 还原材质
-		/// </summary>
-		RevertMaterial = 216,
-
-		/// <summary>
-		/// 飞上天
-		/// </summary>
-		Fly = 217,
-
-		/// <summary>
-		/// 从天上落地
-		/// </summary>
-		FlyFinish = 218,
-
-		CreateEffect = 219,
-
-		CreateBuilding = 220,
-
-		/// <summary>
-		/// 巨型技能指示器
-		/// </summary>
-		RectSkillIndicator = 221,
-
-		/// <summary>
-		/// 圆形技能指示器
-		/// </summary>
-		RoundSkillIndicator = 222,
-		/// <summary>
-		/// 扇形指示器
-		/// </summary>
-		SectorSkillIndicator = 223,
-		/// <summary>
-		/// 连线特效
-		/// </summary>
-		LinkEffect = 224,
-		/// <summary>
-		/// 普通特效
-		/// </summary>
-		EffectCommond = 225,
-	}
-}

+ 0 - 130
CSharp/Game/Model/Buff.cs

@@ -1,130 +0,0 @@
-using System;
-using Common.Base;
-using Common.Helper;
-using MongoDB.Bson;
-using MongoDB.Bson.Serialization.Attributes;
-
-namespace Model
-{
-	public class Buff: Entity<Buff>, IDisposable
-	{
-		[BsonElement]
-		private int configId { get; set; }
-
-		[BsonElement]
-		private ObjectId ownerId;
-
-		[BsonElement]
-		private long expiration;
-
-		[BsonIgnore]
-		private ObjectId timerId;
-
-		[BsonIgnore]
-		public long Expiration
-		{
-			get
-			{
-				return this.expiration;
-			}
-			set
-			{
-				this.expiration = value;
-			}
-		}
-
-		[BsonIgnore]
-		public ObjectId TimerId
-		{
-			get
-			{
-				return this.timerId;
-			}
-			set
-			{
-				this.timerId = value;
-			}
-		}
-
-		public Buff(int configId, ObjectId ownerId)
-		{
-			this.configId = configId;
-			this.ownerId = ownerId;
-			if (this.Config.Duration != 0)
-			{
-				this.Expiration = TimeHelper.Now() + this.Config.Duration;
-			}
-
-			if (this.Expiration != 0)
-			{
-				// 注册Timer回调
-				Env env = new Env();
-				env[EnvKey.OwnerId] = this.OwnerId;
-				env[EnvKey.BuffId] = this.Id;
-				this.TimerId = World.Instance.GetComponent<TimerComponent>()
-						.Add(this.Expiration, EventType.BuffTimeout, env);
-			}
-		}
-
-		protected void Dispose(bool disposing)
-		{
-			if (this.Expiration == 0)
-			{
-				return;
-			}
-
-			// Buff在垃圾回收或者主动Dispose,都需要释放Timer回调.非托管资源
-			World.Instance.GetComponent<TimerComponent>().Remove(this.TimerId);
-
-			this.expiration = 0;
-		}
-
-		~Buff()
-		{
-			this.Dispose(false);
-		}
-
-		public void Dispose()
-		{
-			this.Dispose(true);
-		}
-
-		public override void EndInit()
-		{
-			base.EndInit();
-
-			if (this.Expiration != 0)
-			{
-				// 注册Timer回调
-				Env env = new Env();
-				env[EnvKey.OwnerId] = this.OwnerId;
-				env[EnvKey.BuffId] = this.Id;
-				this.TimerId = World.Instance.GetComponent<TimerComponent>()
-						.Add(this.Expiration, EventType.BuffTimeout, env);
-			}
-		}
-
-		[BsonIgnore]
-		public BuffConfig Config
-		{
-			get
-			{
-				return World.Instance.GetComponent<ConfigComponent>().Get<BuffConfig>(this.configId);
-			}
-		}
-
-		[BsonIgnore]
-		public ObjectId OwnerId
-		{
-			get
-			{
-				return this.ownerId;
-			}
-
-			set
-			{
-				this.ownerId = value;
-			}
-		}
-	}
-}

+ 0 - 8
CSharp/Game/Model/BuffType.cs

@@ -1,8 +0,0 @@
-namespace Model
-{
-	public enum BuffType
-	{
-		// 眩晕
-		Dizziness = 0,
-	}
-}

+ 0 - 28
CSharp/Game/Model/Component/ActorComponent.cs

@@ -1,28 +0,0 @@
-using System.Collections.Generic;
-using Common.Base;
-using MongoDB.Bson;
-
-namespace Model
-{
-	public class ActorComponent : Component<World>
-	{
-		private readonly Dictionary<ObjectId, Actor> actors = new Dictionary<ObjectId, Actor>();
-
-		public Actor Get(ObjectId id)
-		{
-			return this.actors[id];
-		}
-
-		public void Add(Actor actor)
-		{
-			this.actors[actor.Id] = actor;
-		}
-
-		public void Remove(ObjectId id)
-		{
-			Actor actor = this.Get(id);
-			this.actors.Remove(id);
-			actor.Dispose();
-		}
-	}
-}

+ 0 - 92
CSharp/Game/Model/Component/BehaviorTreeComponent.cs

@@ -1,92 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Reflection;
-using Common.Base;
-
-namespace Model
-{
-	public class BehaviorTreeComponent : Component<World>, IAssemblyLoader, IStart
-	{
-		private Dictionary<int, BehaviorTree> behaviorTrees;
-
-		private Dictionary<NodeType, Func<NodeConfig, Node>> dictionary =
-				new Dictionary<NodeType, Func<NodeConfig, Node>>();
-
-		public void Load(Assembly assembly)
-		{
-			this.behaviorTrees = new Dictionary<int, BehaviorTree>();
-			dictionary = new Dictionary<NodeType, Func<NodeConfig, Node>>();
-			Type[] types = assembly.GetTypes();
-			foreach (Type type in types)
-			{
-				object[] attrs = type.GetCustomAttributes(typeof(NodeAttribute), false);
-				if (attrs.Length == 0)
-				{
-					continue;
-				}
-
-				NodeAttribute attribute = attrs[0] as NodeAttribute;
-				Type classType = type;
-				if (this.dictionary.ContainsKey(attribute.Type))
-				{
-					throw new GameException($"已经存在同类节点: {attribute.Type}");
-				}
-				this.dictionary.Add(attribute.Type, config => (Node)Activator.CreateInstance(classType, config));
-			}
-		}
-
-		public void Start()
-		{
-			TreeConfig[] configs = World.Instance.GetComponent<ConfigComponent>().GetAll<TreeConfig>();
-			foreach (TreeConfig proto in configs)
-			{
-				behaviorTrees[proto.Id] = CreateTree(proto);
-			}
-		}
-
-		public BehaviorTree this[int id]
-		{
-			get
-			{
-				BehaviorTree behaviorTree;
-				if (!this.behaviorTrees.TryGetValue(id, out behaviorTree))
-				{
-					throw new GameException($"无法找到行为树: {id}");
-				}
-				return behaviorTree;
-			}
-		}
-
-		private Node CreateOneNode(NodeConfig proto)
-		{
-			NodeType nodeType = proto.Type;
-			if (!this.dictionary.ContainsKey(nodeType))
-			{
-				throw new KeyNotFoundException($"NodeType没有定义该节点: {nodeType}");
-			}
-			return this.dictionary[nodeType](proto);
-		}
-
-		private Node CreateTreeNode(NodeConfig proto)
-		{
-			Node node = this.CreateOneNode(proto);
-			if (proto.Children == null)
-			{
-				return node;
-			}
-
-			foreach (NodeConfig nodeProto in proto.Children)
-			{
-				Node childNode = this.CreateTreeNode(nodeProto);
-				node.AddChild(childNode);
-			}
-			return node;
-		}
-
-		private BehaviorTree CreateTree(TreeConfig treeConfig)
-		{
-			Node node = this.CreateTreeNode(treeConfig.Root);
-			return new BehaviorTree(node);
-		}
-	}
-}

+ 0 - 130
CSharp/Game/Model/Component/BuffComponent.cs

@@ -1,130 +0,0 @@
-using System;
-using System.Collections.Generic;
-using Common.Base;
-using MongoDB.Bson;
-using MongoDB.Bson.Serialization.Attributes;
-#pragma warning disable 4014
-
-namespace Model
-{
-	public class BuffComponent: Component<Unit>
-	{
-		[BsonElement]
-		private HashSet<Buff> buffs;
-
-		[BsonIgnore]
-		private Dictionary<ObjectId, Buff> idBuff;
-
-		[BsonIgnore]
-		private MultiMap<BuffType, Buff> typeBuff;
-
-		public BuffComponent()
-		{
-			this.buffs = new HashSet<Buff>();
-			this.idBuff = new Dictionary<ObjectId, Buff>();
-			this.typeBuff = new MultiMap<BuffType, Buff>();
-		}
-
-		public override void BeginInit()
-		{
-			base.BeginInit();
-
-			this.buffs = new HashSet<Buff>();
-			this.idBuff = new Dictionary<ObjectId, Buff>();
-			this.typeBuff = new MultiMap<BuffType, Buff>();
-		}
-
-		public override void EndInit()
-		{
-			base.EndInit();
-
-			foreach (Buff buff in this.buffs)
-			{
-				this.idBuff.Add(buff.Id, buff);
-				this.typeBuff.Add(buff.Config.Type, buff);
-			}
-		}
-
-		public void Add(Buff buff)
-		{
-			if (this.buffs.Contains(buff))
-			{
-				throw new ArgumentException($"already exist same buff, Id: {buff.Id} ConfigId: {buff.Config.Id}");
-			}
-
-			if (this.idBuff.ContainsKey(buff.Id))
-			{
-				throw new ArgumentException($"already exist same buff, Id: {buff.Id} ConfigId: {buff.Config.Id}");
-			}
-
-			Env env = new Env();
-			env[EnvKey.Owner] = this.Owner;
-			env[EnvKey.Buff] = buff;
-
-			World.Instance.GetComponent<EventComponent<EventAttribute>>().RunAsync(EventType.BeforeAddBuff, env);
-
-			this.buffs.Add(buff);
-			this.idBuff.Add(buff.Id, buff);
-			this.typeBuff.Add(buff.Config.Type, buff);
-
-			World.Instance.GetComponent<EventComponent<EventAttribute>>().RunAsync(EventType.AfterAddBuff, env);
-		}
-
-		public Buff GetById(ObjectId id)
-		{
-			if (!this.idBuff.ContainsKey(id))
-			{
-				return null;
-			}
-
-			return this.idBuff[id];
-		}
-
-		public Buff GetOneByType(BuffType type)
-		{
-			return this.typeBuff.GetOne(type);
-		}
-
-		public Buff[] GetByType(BuffType type)
-		{
-			return this.typeBuff.GetAll(type);
-		}
-
-		private void Remove(Buff buff)
-		{
-			if (buff == null)
-			{
-				return;
-			}
-
-			Env env = new Env();
-			env[EnvKey.Owner] = this.Owner;
-			env[EnvKey.Buff] = buff;
-
-			World.Instance.GetComponent<EventComponent<EventAttribute>>()
-					.RunAsync(EventType.BeforeRemoveBuff, env);
-
-			this.buffs.Remove(buff);
-			this.idBuff.Remove(buff.Id);
-			this.typeBuff.Remove(buff.Config.Type, buff);
-
-			World.Instance.GetComponent<EventComponent<EventAttribute>>().RunAsync(EventType.AfterRemoveBuff, env);
-			buff.Dispose();
-		}
-
-		public void RemoveById(ObjectId id)
-		{
-			Buff buff = this.GetById(id);
-			this.Remove(buff);
-		}
-
-		public void RemoveByType(BuffType type)
-		{
-			Buff[] allbuffs = this.GetByType(type);
-			foreach (Buff buff in allbuffs)
-			{
-				this.Remove(buff);
-			}
-		}
-	}
-}

+ 0 - 16
CSharp/Game/Model/Component/ChannelUnitInfoComponent.cs

@@ -1,16 +0,0 @@
-using Common.Base;
-using Common.Network;
-using MongoDB.Bson;
-
-namespace Model
-{
-	/// <summary>
-	/// channel中保存Unit一些信息,例如帐号
-	/// </summary>
-	public class ChannelUnitInfoComponent: Component<AChannel>
-	{
-		public byte[] Account { get; set; }
-		public ObjectId UnitId { get; set; }
-		public string ServerName { get; set; }
-	}
-}

+ 0 - 77
CSharp/Game/Model/Component/ConfigComponent.cs

@@ -1,77 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Reflection;
-using Common.Base;
-
-namespace Model
-{
-	public class ConfigComponent: Component<World>, IAssemblyLoader
-	{
-		private Dictionary<Type, ICategory> allConfig;
-
-		public void Load(Assembly assembly)
-		{
-			this.allConfig = new Dictionary<Type, ICategory>();
-			Type[] types = assembly.GetTypes();
-
-			ServerType serverType = World.Instance.Options.ServerType;
-
-			foreach (Type type in types)
-			{
-				object[] attrs = type.GetCustomAttributes(typeof (ConfigAttribute), false);
-				if (attrs.Length == 0)
-				{
-					continue;
-				}
-				ConfigAttribute configAttribute = (ConfigAttribute) attrs[0];
-				if (!configAttribute.Contains(serverType))
-				{
-					continue;
-				}
-
-				object obj = (Activator.CreateInstance(type));
-
-				ICategory iCategory = obj as ICategory;
-				if (iCategory == null)
-				{
-					throw new Exception($"class: {type.Name} not inherit from ACategory");
-				}
-				iCategory.BeginInit();
-				iCategory.EndInit();
-
-				this.allConfig[iCategory.ConfigType] = iCategory;
-			}
-		}
-
-		public T Get<T>(int id) where T : AConfig
-		{
-			Type type = typeof (T);
-			ICategory configCategory;
-			if (!this.allConfig.TryGetValue(type, out configCategory))
-			{
-				throw new KeyNotFoundException($"ConfigComponent not found key: {type.FullName}");
-			}
-			return ((ACategory<T>) configCategory)[id];
-		}
-
-		public T[] GetAll<T>() where T : AConfig
-		{
-			Type type = typeof (T);
-			ICategory configCategory;
-			if (!this.allConfig.TryGetValue(type, out configCategory))
-			{
-				throw new KeyNotFoundException($"ConfigComponent not found key: {type.FullName}");
-			}
-			return ((ACategory<T>) configCategory).GetAll();
-		}
-
-		public T GetCategory<T>() where T : class, ICategory, new()
-		{
-			T t = new T();
-			Type type = t.ConfigType;
-			ICategory category;
-			bool ret = this.allConfig.TryGetValue(type, out category);
-			return ret? (T) category : null;
-		}
-	}
-}

+ 0 - 212
CSharp/Game/Model/Component/EventComponent.cs

@@ -1,212 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Reflection;
-using System.Threading.Tasks;
-using Common.Base;
-using Common.Logger;
-
-namespace Model
-{
-	public class EventComponent<AttributeType>: Component<World>, IAssemblyLoader
-			where AttributeType : AEventAttribute
-	{
-		private Dictionary<EventType, List<object>> allEvents;
-
-		public void Load(Assembly assembly)
-		{
-			this.allEvents = new Dictionary<EventType, List<object>>();
-
-			ServerType serverType = World.Instance.Options.ServerType;
-
-			Type[] types = assembly.GetTypes();
-			foreach (Type t in types)
-			{
-				object[] attrs = t.GetCustomAttributes(typeof (AttributeType), false);
-				if (attrs.Length == 0)
-				{
-					continue;
-				}
-
-				AEventAttribute aEventAttribute = (AEventAttribute) attrs[0];
-				if (!aEventAttribute.Contains(serverType))
-				{
-					continue;
-				}
-
-				object obj = Activator.CreateInstance(t);
-				if (obj == null)
-				{
-					throw new Exception($"event not inherit IEvent or IEventAsync interface: {obj.GetType().FullName}");
-				}
-				if (!this.allEvents.ContainsKey(aEventAttribute.Type))
-				{
-					this.allEvents.Add(aEventAttribute.Type, new List<object>());
-				}
-				this.allEvents[aEventAttribute.Type].Add(obj);
-			}
-		}
-
-		public async Task RunAsync(EventType type)
-		{
-			List<object> iEvents = null;
-			if (!this.allEvents.TryGetValue(type, out iEvents))
-			{
-				return;
-			}
-
-			foreach (object obj in iEvents)
-			{
-				try
-				{
-					AEvent iEvent = obj as AEvent;
-					if (iEvent == null)
-					{
-						throw new GameException($"event type: {type} is not IEvent");
-					}
-					iEvent.Run();
-					await iEvent.RunAsync();
-				}
-				catch (Exception err)
-				{
-					Log.Debug(err.ToString());
-				}
-			}
-		}
-
-		public async Task RunAsync<A>(EventType type, A a)
-		{
-			List<object> iEvents = null;
-			if (!this.allEvents.TryGetValue(type, out iEvents))
-			{
-				return;
-			}
-
-			foreach (object obj in iEvents)
-			{
-				try
-				{
-					AEvent<A> iEvent = obj as AEvent<A>;
-					if (iEvent == null)
-					{
-						throw new GameException($"event type: {type} is not IEvent<{typeof (A).Name}>");
-					}
-					iEvent.Run(a);
-					await iEvent.RunAsync(a);
-				}
-				catch (Exception err)
-				{
-					Log.Debug(err.ToString());
-				}
-			}
-		}
-
-		public async Task RunAsync<A, B>(EventType type, A a, B b)
-		{
-			List<object> iEvents = null;
-			if (!this.allEvents.TryGetValue(type, out iEvents))
-			{
-				return;
-			}
-
-			foreach (object obj in iEvents)
-			{
-				try
-				{
-					AEvent<A, B> iEvent = obj as AEvent<A, B>;
-					if (iEvent == null)
-					{
-						throw new GameException($"event type: {type} is not IEvent<{typeof (A).Name}, {typeof (B).Name}>");
-					}
-					iEvent.Run(a, b);
-					await iEvent.RunAsync(a, b);
-				}
-				catch (Exception err)
-				{
-					Log.Debug(err.ToString());
-				}
-			}
-		}
-
-		public async Task RunAsync<A, B, C>(EventType type, A a, B b, C c)
-		{
-			List<object> iEvents = null;
-			if (!this.allEvents.TryGetValue(type, out iEvents))
-			{
-				return;
-			}
-
-			foreach (object obj in iEvents)
-			{
-				try
-				{
-					AEvent<A, B, C> iEvent = obj as AEvent<A, B, C>;
-					if (iEvent == null)
-					{
-						throw new GameException($"event type: {type} is not IEvent<{typeof (A).Name}, {typeof (B).Name}, {typeof (C).Name}>");
-					}
-					iEvent.Run(a, b, c);
-					await iEvent.RunAsync(a, b, c);
-				}
-				catch (Exception err)
-				{
-					Log.Debug(err.ToString());
-				}
-			}
-		}
-
-		public async Task RunAsync<A, B, C, D>(EventType type, A a, B b, C c, D d)
-		{
-			List<object> iEvents = null;
-			if (!this.allEvents.TryGetValue(type, out iEvents))
-			{
-				return;
-			}
-
-			foreach (object obj in iEvents)
-			{
-				try
-				{
-					AEvent<A, B, C, D> iEvent = obj as AEvent<A, B, C, D>;
-					if (iEvent == null)
-					{
-						throw new GameException($"event type: {type} is not IEvent<{typeof (A).Name}, {typeof (B).Name}, {typeof (C).Name}, {typeof (D).Name}>");
-					}
-					iEvent.Run(a, b, c, d);
-					await iEvent.RunAsync(a, b, c, d);
-				}
-				catch (Exception err)
-				{
-					Log.Debug(err.ToString());
-				}
-			}
-		}
-
-		public async Task RunAsync<A, B, C, D, E>(EventType type, A a, B b, C c, D d, E e)
-		{
-			List<object> iEvents = null;
-			if (!this.allEvents.TryGetValue(type, out iEvents))
-			{
-				return;
-			}
-
-			foreach (object obj in iEvents)
-			{
-				try
-				{
-					AEvent<A, B, C, D, E> iEvent = obj as AEvent<A, B, C, D, E>;
-					if (iEvent == null)
-					{
-						throw new GameException(
-								$"event type: {type} is not IEvent<{typeof (A).Name}, {typeof (B).Name}, {typeof (C).Name}, {typeof (D).Name}, {typeof (E).Name}>");
-					}
-					iEvent.Run(a, b, c, d, e);
-					await iEvent.RunAsync(a, b, c, d, e);
-				}
-				catch (Exception err)
-				{
-					Log.Debug(err.ToString());
-				}
-			}
-		}
-	}
-}

+ 0 - 47
CSharp/Game/Model/Component/FactoryComponent.cs

@@ -1,47 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Reflection;
-using Common.Base;
-
-namespace Model
-{
-	public class FactoryComponent<T>: Component<World>, IAssemblyLoader where T : Entity<T>
-	{
-		private Dictionary<int, IFactory<T>> allConfig;
-
-		public void Load(Assembly assembly)
-		{
-			this.allConfig = new Dictionary<int, IFactory<T>>();
-			Type[] types = assembly.GetTypes();
-			foreach (Type type in types)
-			{
-				object[] attrs = type.GetCustomAttributes(typeof (FactoryAttribute), false);
-				if (attrs.Length == 0)
-				{
-					continue;
-				}
-
-				FactoryAttribute attribute = (FactoryAttribute) attrs[0];
-				if (attribute.ClassType != typeof (T))
-				{
-					continue;
-				}
-
-				object obj = (Activator.CreateInstance(type));
-
-				var iFactory = obj as IFactory<T>;
-				if (iFactory == null)
-				{
-					throw new Exception($"class: {type.Name} not inherit from IFactory");
-				}
-
-				this.allConfig[attribute.Type] = iFactory;
-			}
-		}
-
-		public T Create(int type, int configId)
-		{
-			return this.allConfig[type].Create(configId);
-		}
-	}
-}

+ 0 - 111
CSharp/Game/Model/Component/GateNetworkComponent.cs

@@ -1,111 +0,0 @@
-using System;
-using System.Collections.Generic;
-using Common.Base;
-using Common.Network;
-using MongoDB.Bson;
-using TNet;
-using UNet;
-
-namespace Model
-{
-	/// <summary>
-	/// gate对外连接使用
-	/// </summary>
-	public class GateNetworkComponent: Component<World>, IUpdate, IStart
-	{
-		private IService service;
-
-		private readonly Dictionary<ObjectId, AChannel> unitIdChannels =
-				new Dictionary<ObjectId, AChannel>();
-
-		private void Accept(string host, int port, NetworkProtocol protocol = NetworkProtocol.TCP)
-		{
-			switch (protocol)
-			{
-				case NetworkProtocol.TCP:
-					this.service = new TService(host, port);
-					break;
-				case NetworkProtocol.UDP:
-					this.service = new UService(host, port);
-					break;
-				default:
-					throw new ArgumentOutOfRangeException("protocol");
-			}
-
-			this.AcceptChannel();
-		}
-
-		public void Start()
-		{
-			this.Accept(World.Instance.Options.GateHost, World.Instance.Options.GatePort,
-					World.Instance.Options.Protocol);
-		}
-
-		public void Update()
-		{
-			this.service.Update();
-		}
-
-		/// <summary>
-		/// 接收连接
-		/// </summary>
-		private async void AcceptChannel()
-		{
-			while (true)
-			{
-				AChannel channel = await this.service.GetChannel();
-				channel.OnDispose += this.OnChannelDispose;
-				ProcessChannel(channel);
-			}
-		}
-
-		/// <summary>
-		/// 接收分发封包
-		/// </summary>
-		/// <param name="channel"></param>
-		private static async void ProcessChannel(AChannel channel)
-		{
-			while (true)
-			{
-				byte[] messageBytes = await channel.RecvAsync();
-				Opcode opcode = (Opcode)BitConverter.ToUInt16(messageBytes, 0);
-				if (!OpcodeHelper.IsClientMessage(opcode))
-				{
-					continue;
-				}
-
-				ObjectId unitId = channel.GetComponent<ChannelUnitInfoComponent>().UnitId;
-				Actor actor = World.Instance.GetComponent<ActorComponent>().Get(unitId);
-				actor.Add(messageBytes);
-			}
-		}
-
-		// channel删除的时候需要清除与unit id的关联
-		private void OnChannelDispose(AChannel channel)
-		{
-			ChannelUnitInfoComponent channelUnitInfoComponent =
-					channel.GetComponent<ChannelUnitInfoComponent>();
-			if (channelUnitInfoComponent != null)
-			{
-				this.unitIdChannels.Remove(channelUnitInfoComponent.UnitId);
-			}
-		}
-
-		// 将unit id与channel关联起来
-		public void AssociateUnitIdAndChannel(ObjectId id, AChannel channel)
-		{
-			this.unitIdChannels[id] = channel;
-		}
-
-		public void SendAsync(ObjectId id, byte[] buffer)
-		{
-			AChannel channel;
-			if (!this.unitIdChannels.TryGetValue(id, out channel))
-			{
-				return;
-			}
-
-			channel.SendAsync(buffer);
-		}
-	}
-}

+ 0 - 73
CSharp/Game/Model/Component/MessageComponent.cs

@@ -1,73 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Reflection;
-using System.Threading.Tasks;
-using Common.Base;
-using Common.Helper;
-
-namespace Model
-{
-	public class MessageComponent: Component<World>, IAssemblyLoader
-	{
-		private Dictionary<Opcode, Func<byte[], byte[]>> events;
-		private Dictionary<Opcode, Func<byte[], Task<byte[]>>> eventsAsync;
-
-		public void Load(Assembly assembly)
-		{
-			this.events = new Dictionary<Opcode, Func<byte[], byte[]>>();
-			this.eventsAsync = new Dictionary<Opcode, Func<byte[], Task<byte[]>>>();
-
-			ServerType serverType = World.Instance.Options.ServerType;
-
-			Type[] types = assembly.GetTypes();
-			foreach (Type t in types)
-			{
-				object[] attrs = t.GetCustomAttributes(typeof (MessageAttribute), false);
-				if (attrs.Length == 0)
-				{
-					continue;
-				}
-
-				MessageAttribute messageAttribute = (MessageAttribute)attrs[0];
-				if (!messageAttribute.Contains(serverType))
-				{
-					continue;
-				}
-				
-				object obj = Activator.CreateInstance(t);
-
-				IRegister iRegister = obj as IRegister;
-				iRegister?.Register();
-
-				throw new Exception($"message handler not inherit IRegister interface: {obj.GetType().FullName}");
-			}
-		}
-
-		public void Register<T, R>(Func<T, R> func)
-		{
-			Opcode opcode = EnumHelper.FromString<Opcode>(typeof (T).Name);
-			events.Add(opcode, messageBytes =>
-			{
-				T t = MongoHelper.FromBson<T>(messageBytes, 6);
-				R k = func(t);
-				return MongoHelper.ToBson(k);
-			});
-		}
-
-		public async Task<byte[]> RunAsync(Opcode opcode, byte[] messageBytes)
-		{
-			Func<byte[], byte[]> func = null;
-			if (this.events.TryGetValue(opcode, out func))
-			{
-				return func(messageBytes);
-			}
-
-			Func<byte[], Task<byte[]>> funcAsync = null;
-			if (this.eventsAsync.TryGetValue(opcode, out funcAsync))
-			{
-				return await funcAsync(messageBytes);
-			}
-			throw new GameException($"not found opcode handler: {opcode}");
-		}
-	}
-}

+ 0 - 208
CSharp/Game/Model/Component/NetworkComponent.cs

@@ -1,208 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.IO;
-using System.Runtime.Serialization;
-using System.Runtime.Serialization.Formatters.Binary;
-using System.Threading.Tasks;
-using Common.Base;
-using Common.Helper;
-using Common.Network;
-using MongoDB.Bson;
-using TNet;
-using UNet;
-
-namespace Model
-{
-	public enum RpcResponseStatus
-	{
-		Succee,
-		Timeout,
-		Exception,
-	}
-
-	public class RpcExcetionInfo
-	{
-		public int ErrorCode { get; private set; }
-		public string ErrorInfo { get; private set; }
-
-		public RpcExcetionInfo(int errorCode, string errorInfo)
-		{
-			this.ErrorCode = errorCode;
-			this.ErrorInfo = errorInfo;
-		}
-	}
-
-	public class NetworkComponent: Component<World>, IUpdate, IStart
-	{
-		private IService service;
-
-		private int requestId;
-
-		private readonly Dictionary<int, Action<byte[], RpcResponseStatus>> requestCallback =
-				new Dictionary<int, Action<byte[], RpcResponseStatus>>();
-
-		private void Accept(string host, int port, NetworkProtocol protocol = NetworkProtocol.TCP)
-		{
-			switch (protocol)
-			{
-				case NetworkProtocol.TCP:
-					this.service = new TService(host, port);
-					break;
-				case NetworkProtocol.UDP:
-					this.service = new UService(host, port);
-					break;
-				default:
-					throw new ArgumentOutOfRangeException("protocol");
-			}
-
-			this.AcceptChannel();
-		}
-
-		public void Start()
-		{
-			this.Accept(World.Instance.Options.Host, World.Instance.Options.Port,
-					World.Instance.Options.Protocol);
-		}
-
-		public void Update()
-		{
-			this.service.Update();
-		}
-
-		/// <summary>
-		/// 接收连接
-		/// </summary>
-		private async void AcceptChannel()
-		{
-			while (true)
-			{
-				AChannel channel = await this.service.GetChannel();
-				this.ProcessChannel(channel);
-			}
-		}
-
-		/// <summary>
-		/// 接收分发封包
-		/// </summary>
-		/// <param name="channel"></param>
-		private async void ProcessChannel(AChannel channel)
-		{
-			while (true)
-			{
-				byte[] messageBytes = await channel.RecvAsync();
-				Opcode opcode = (Opcode)BitConverter.ToUInt16(messageBytes, 0);
-
-				// rpc异常
-				if (opcode == Opcode.RpcException)
-				{
-					int id = BitConverter.ToInt32(messageBytes, 2);
-					this.RpcCallback(channel, id, messageBytes, RpcResponseStatus.Exception);
-					continue;
-				}
-
-				// 表示消息是rpc响应消息
-				if (opcode == Opcode.RpcResponse)
-				{
-					int id = BitConverter.ToInt32(messageBytes, 2);
-					this.RpcCallback(channel, id, messageBytes, RpcResponseStatus.Succee);
-					continue;
-				}
-
-				// 如果是server message(发给client的消息),说明这是gate server,需要根据unitid查到channel,进行发送
-				if (OpcodeHelper.IsServerMessage(opcode))
-				{
-					byte[] idBuffer = new byte[12];
-					Array.Copy(messageBytes, 2, idBuffer, 0, 12);
-					ObjectId unitId = new ObjectId(idBuffer);
-					byte[] buffer = new byte[messageBytes.Length - 6];
-					Array.Copy(messageBytes, 6, buffer, 0, buffer.Length);
-					World.Instance.GetComponent<GateNetworkComponent>().SendAsync(unitId, buffer);
-					continue;
-				}
-
-				// 处理Rpc请求,并且返回结果
-				RpcDo(channel, opcode, messageBytes);
-			}
-		}
-
-		private async static void RpcDo(AChannel channel, Opcode opcode, byte[] messageBytes)
-		{
-			byte[] opcodeBuffer;
-			int id = BitConverter.ToInt32(messageBytes, 2);
-			byte[] idBuffer = BitConverter.GetBytes(id);
-			try
-			{
-				opcodeBuffer = BitConverter.GetBytes((ushort)Opcode.RpcResponse);
-				byte[] result = await World.Instance.GetComponent<MessageComponent>().RunAsync(opcode, messageBytes);
-				channel.SendAsync(new List<byte[]> { opcodeBuffer, idBuffer, result });
-			}
-			catch (Exception e)
-			{
-				opcodeBuffer = BitConverter.GetBytes((ushort)Opcode.RpcException);
-				BinaryFormatter formatter = new BinaryFormatter(null, new StreamingContext(StreamingContextStates.All));
-				using (MemoryStream stream = new MemoryStream())
-				{
-					formatter.Serialize(stream, e);
-					channel.SendAsync(new List<byte[]> { opcodeBuffer, idBuffer, stream.ToArray() });
-				}
-			}
-		}
-
-		// 消息回调或者超时回调
-		public void RpcCallback(AChannel channel, int id, byte[] buffer, RpcResponseStatus responseStatus)
-		{
-			Action<byte[], RpcResponseStatus> action;
-			if (!this.requestCallback.TryGetValue(id, out action))
-			{
-				return;
-			}
-			this.requestCallback.Remove(id);
-			action(buffer, responseStatus);
-		}
-
-		/// <summary>
-		/// Rpc请求
-		/// </summary>
-		public Task<T> RpcCall<T, K>(string address, K request, int waitTime = 0)
-		{
-			AChannel channel = this.service.GetChannel(address);
-
-			++this.requestId;
-			byte[] requestBuffer = MongoHelper.ToBson(request);
-			Opcode opcode = EnumHelper.FromString<Opcode>(request.GetType().Name);
-			byte[] opcodeBuffer = BitConverter.GetBytes((ushort)opcode);
-			byte[] idBuffer = BitConverter.GetBytes(this.requestId);
-			channel.SendAsync(new List<byte[]> { opcodeBuffer, idBuffer, requestBuffer });
-			var tcs = new TaskCompletionSource<T>();
-			this.requestCallback[this.requestId] = (messageBytes, status) =>
-			{
-				switch (status)
-				{
-					case RpcResponseStatus.Timeout:
-						tcs.SetException(new Exception($"rpc timeout {opcode} {MongoHelper.ToJson(request)}"));
-						return;
-					case RpcResponseStatus.Exception:
-						BinaryFormatter formatter = new BinaryFormatter(null, new StreamingContext(StreamingContextStates.All));
-						Exception exception;
-						using (MemoryStream stream = new MemoryStream(messageBytes, 6, messageBytes.Length - 6))
-						{
-							exception = (Exception)formatter.Deserialize(stream);
-						}
-						tcs.SetException(exception);
-						return;
-				}
-
-				// RpcResponseStatus.Succee
-				T response = MongoHelper.FromBson<T>(messageBytes, 6);
-				tcs.SetResult(response);
-			};
-
-			if (waitTime > 0)
-			{
-				this.service.Timer.Add(TimeHelper.Now() + waitTime,
-						() => { this.RpcCallback(channel, this.requestId, null, RpcResponseStatus.Timeout); });
-			}
-			return tcs.Task;
-		}
-	}
-}

+ 0 - 89
CSharp/Game/Model/Component/TimerComponent.cs

@@ -1,89 +0,0 @@
-using System.Collections.Generic;
-using System.Threading;
-using System.Threading.Tasks;
-using Common.Base;
-using Common.Helper;
-using MongoDB.Bson;
-
-namespace Model
-{
-	public class TimerComponent: Component<World>, IUpdate
-	{
-		private class Timer
-		{
-			public ObjectId Id { get; set; }
-			public long Time { get; set; }
-			public EventType CallbackEvent { get; set; }
-			public Env Env { get; set; }
-		}
-
-		private readonly Dictionary<ObjectId, Timer> timers = new Dictionary<ObjectId, Timer>();
-
-		/// <summary>
-		/// key: time, value: timer id
-		/// </summary>
-		private readonly MultiMap<long, ObjectId> timeId = new MultiMap<long, ObjectId>();
-		
-		public ObjectId Add(long time, EventType callbackEvent, Env env)
-		{
-			Timer timer = new Timer
-			{
-				Id = ObjectId.GenerateNewId(),
-				Time = time,
-				CallbackEvent = callbackEvent,
-				Env = env
-			};
-			this.timers[timer.Id] = timer;
-			this.timeId.Add(timer.Time, timer.Id);
-			return timer.Id;
-		}
-
-		public void Remove(ObjectId id)
-		{
-			Timer timer;
-			if (!this.timers.TryGetValue(id, out timer))
-			{
-				return;
-			}
-			this.timeId.Remove(timer.Time, timer.Id);
-		}
-
-		public Task<bool> Sleep(int time)
-		{
-			TaskCompletionSource<bool> tcs = new TaskCompletionSource<bool>();
-			Env env = new Env();
-			env[EnvKey.SleepTimeout_TaskCompletionSource] = tcs;
-			this.Add(TimeHelper.Now() + time, EventType.SleepTimeout, env);
-			return tcs.Task;
-		}
-
-		public void Update()
-		{
-			long timeNow = TimeHelper.Now();
-
-			while (true)
-			{
-				KeyValuePair<long, List<ObjectId>> first = this.timeId.First;
-				if (first.Key > timeNow)
-				{
-					return;
-				}
-
-				List<ObjectId> timeoutId = first.Value;
-				this.timeId.Remove(first.Key);
-				foreach (ObjectId id in timeoutId)
-				{
-					Timer timer;
-					if (!this.timers.TryGetValue(id, out timer))
-					{
-						continue;
-					}
-					this.timers.Remove(id);
-#pragma warning disable 4014
-					World.Instance.GetComponent<EventComponent<EventAttribute>>().RunAsync(timer.CallbackEvent, timer.Env);
-#pragma warning restore 4014
-				}
-			}
-		}
-	}
-}

+ 0 - 70
CSharp/Game/Model/Component/UnitComponent.cs

@@ -1,70 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using Common.Base;
-using MongoDB.Bson;
-
-namespace Model
-{
-	public class UnitComponent: Component<World>
-	{
-		private readonly Dictionary<ObjectId, Unit> units = new Dictionary<ObjectId, Unit>();
-
-		private readonly Dictionary<int, Dictionary<ObjectId, Unit>> typeUnits =
-				new Dictionary<int, Dictionary<ObjectId, Unit>>();
-
-		public void Add(Unit unit)
-		{
-			this.units.Add(unit.Id, unit);
-			if (!this.typeUnits.ContainsKey(unit.Config.Type))
-			{
-				this.typeUnits.Add(unit.Config.Type, new Dictionary<ObjectId, Unit>());
-			}
-			this.typeUnits[unit.Config.Type].Add(unit.Id, unit);
-		}
-
-		public Unit Get(ObjectId id)
-		{
-			Unit unit = null;
-			this.units.TryGetValue(id, out unit);
-			return unit;
-		}
-
-		public Unit[] GetOneType(int type)
-		{
-			Dictionary<ObjectId, Unit> oneTypeUnits = null;
-			if (!this.typeUnits.TryGetValue(type, out oneTypeUnits))
-			{
-				return new Unit[0];
-			}
-			return oneTypeUnits.Values.ToArray();
-		}
-
-		public bool Remove(Unit unit)
-		{
-			if (unit == null)
-			{
-				throw new ArgumentNullException(nameof(unit));
-			}
-			if (!this.units.Remove(unit.Id))
-			{
-				return false;
-			}
-			if (!this.typeUnits[unit.Config.Type].Remove(unit.Id))
-			{
-				return false;
-			}
-			return true;
-		}
-
-		public bool Remove(ObjectId id)
-		{
-			Unit unit = this.Get(id);
-			if (unit == null)
-			{
-				return false;
-			}
-			return this.Remove(unit);
-		}
-	}
-}

+ 0 - 18
CSharp/Game/Model/Config/BuffConfig.cs

@@ -1,18 +0,0 @@
-using System.Collections.Generic;
-
-namespace Model
-{
-	public class BuffConfig: AConfig
-	{
-		public BuffType Type { get; set; }
-		public string Name { get; set; }
-		public long Duration { get; set; }
-		public int MaxStack { get; set; }
-		public List<int> Effects { get; set; }
-
-		public BuffConfig()
-		{
-			this.Effects = new List<int>();
-		}
-	}
-}

+ 0 - 7
CSharp/Game/Model/Config/GlobalConfig.cs

@@ -1,7 +0,0 @@
-namespace Model
-{
-	public class GlobalConfig: AConfig
-	{
-		public int Type { get; set; }
-	}
-}

+ 0 - 11
CSharp/Game/Model/Config/ServerInfoConfig.cs

@@ -1,11 +0,0 @@
-namespace Model
-{
-	public class ServerInfoConfig: AConfig
-	{
-		public string Zone { get; set; }
-		public string Name { get; set; }
-		public string Host { get; set; }
-		public int Port { get; set; }
-		public ServerType ServerType { get; set; }
-	}
-}

+ 0 - 32
CSharp/Game/Model/Config/TreeConfig.cs

@@ -1,32 +0,0 @@
-using System.Collections.Generic;
-using MongoDB.Bson.Serialization.Attributes;
-
-namespace Model
-{
-	public class NodeConfig
-	{
-		public int Id { get; set; }
-		public NodeType Type { get; set; }
-		public List<string> Args { get; set; }
-		public List<NodeConfig> Children { get; set; }
-	}
-
-	public class TreeConfig : AConfig
-	{
-		[BsonElement, BsonIgnoreIfNull]
-		private NodeConfig root;
-
-		[BsonIgnore]
-		public NodeConfig Root
-		{
-			get
-			{
-				return this.root;
-			}
-			set
-			{
-				this.root = value;
-			}
-		}
-	}
-}

+ 0 - 7
CSharp/Game/Model/Config/UnitConfig.cs

@@ -1,7 +0,0 @@
-namespace Model
-{
-	public class UnitConfig: AConfig
-	{
-		public int Type { get; set; }
-	}
-}

+ 0 - 24
CSharp/Game/Model/ConfigAttribute.cs

@@ -1,24 +0,0 @@
-using System;
-
-namespace Model
-{
-	[AttributeUsage(AttributeTargets.Class)]
-	public class ConfigAttribute: Attribute
-	{
-		private ServerType ServerType { get; set; }
-
-		public ConfigAttribute(ServerType serverType)
-		{
-			this.ServerType = serverType;
-		}
-
-		public bool Contains(ServerType serverType)
-		{
-			if ((this.ServerType & serverType) == 0)
-			{
-				return false;
-			}
-			return true;
-		}
-	}
-}

+ 0 - 8
CSharp/Game/Model/Env.cs

@@ -1,8 +0,0 @@
-using Common.Base;
-
-namespace Model
-{
-	public class Env: Object
-	{
-	}
-}

+ 0 - 18
CSharp/Game/Model/EnvKey.cs

@@ -1,18 +0,0 @@
-namespace Model
-{
-	public static class EnvKey
-	{
-		public const string Owner = "Owner";
-		public const string OwnerId = "OwnerId";
-		public const string Buff = "Buff";
-		public const string BuffId = "BuffId";
-		public const string MessageBytes = "MessageBytes";
-		public const string Message = "Message";
-		public const string Channel = "Channel";
-		public const string Opcode = "Opcode";
-		public const string MessageUnitId = "MessageUnitId";
-		public const string RpcRequestId = "RpcRequestId";
-
-		public const string SleepTimeout_TaskCompletionSource = "SleepTimeout_TaskCompletionSource";
-	}
-}

+ 0 - 10
CSharp/Game/Model/EventAttribute.cs

@@ -1,10 +0,0 @@
-namespace Model
-{
-	public class EventAttribute: AEventAttribute
-	{
-		public EventAttribute(EventType type, ServerType serverType)
-			: base(type, serverType)
-		{
-		}
-	}
-}

+ 0 - 12
CSharp/Game/Model/EventType.cs

@@ -1,12 +0,0 @@
-namespace Model
-{
-	public enum EventType
-	{
-		BeforeAddBuff = 0,
-		AfterAddBuff = 1,
-		BeforeRemoveBuff = 2,
-		AfterRemoveBuff = 3,
-		BuffTimeout = 4,
-		SleepTimeout = 9,
-	}
-}

+ 0 - 17
CSharp/Game/Model/FactoryAttribute.cs

@@ -1,17 +0,0 @@
-using System;
-
-namespace Model
-{
-	[AttributeUsage(AttributeTargets.Class)]
-	public class FactoryAttribute: Attribute
-	{
-		public Type ClassType { get; private set; }
-		public int Type { get; private set; }
-
-		public FactoryAttribute(Type classType, int type)
-		{
-			this.ClassType = classType;
-			this.Type = type;
-		}
-	}
-}

برخی فایل ها در این مقایسه diff نمایش داده نمی شوند زیرا تعداد فایل ها بسیار زیاد است