Browse Source

Remove a bunch of files which are no longer relevant:
1) Project files for different configurations - we're going to look at all this again, ideally to just have a single PCL-compatible build
2) ProtoGen - the C++ generator is now the only one we care about
3) Proto files - these are mostly duplicates (or older versions) of the ones in the common directories

Jon Skeet 10 năm trước cách đây
mục cha
commit
e8310aa259
99 tập tin đã thay đổi với 0 bổ sung15985 xóa
  1. 0 41
      csharp/csproj_templates/CF20.csproj
  2. 0 44
      csharp/csproj_templates/CF35.csproj
  3. 0 17
      csharp/csproj_templates/NET20.csproj
  4. 0 20
      csharp/csproj_templates/NET35.csproj
  5. 0 20
      csharp/csproj_templates/NET40.csproj
  6. 0 51
      csharp/csproj_templates/PL40.csproj
  7. 0 44
      csharp/csproj_templates/SL20.csproj
  8. 0 47
      csharp/csproj_templates/SL30.csproj
  9. 0 48
      csharp/csproj_templates/SL40.csproj
  10. 0 34
      csharp/csproj_templates/SLTest.targets
  11. 0 140
      csharp/protos/benchmarks/google_size.proto
  12. 0 140
      csharp/protos/benchmarks/google_speed.proto
  13. 0 147
      csharp/protos/google/protobuf/compiler/plugin.proto
  14. 0 115
      csharp/protos/google/protobuf/csharp_options.proto
  15. 0 533
      csharp/protos/google/protobuf/descriptor.proto
  16. 0 636
      csharp/protos/google/protobuf/unittest.proto
  17. 0 52
      csharp/protos/google/protobuf/unittest_csharp_options.proto
  18. 0 372
      csharp/protos/google/protobuf/unittest_custom_options.proto
  19. 0 56
      csharp/protos/google/protobuf/unittest_embed_optimize_for.proto
  20. 0 43
      csharp/protos/google/protobuf/unittest_empty.proto
  21. 0 1052
      csharp/protos/google/protobuf/unittest_enormous_descriptor.proto
  22. 0 67
      csharp/protos/google/protobuf/unittest_import.proto
  23. 0 55
      csharp/protos/google/protobuf/unittest_import_lite.proto
  24. 0 318
      csharp/protos/google/protobuf/unittest_lite.proto
  25. 0 49
      csharp/protos/google/protobuf/unittest_lite_imports_nonlite.proto
  26. 0 78
      csharp/protos/google/protobuf/unittest_mset.proto
  27. 0 58
      csharp/protos/google/protobuf/unittest_no_generic_services.proto
  28. 0 67
      csharp/protos/google/protobuf/unittest_optimize_for.proto
  29. 0 140
      csharp/protos/google/test/google_size.proto
  30. 0 140
      csharp/protos/google/test/google_speed.proto
  31. 0 44
      csharp/protos/npp.language.xml
  32. 0 31
      csharp/protos/tutorial/addressbook.proto
  33. 0 150
      csharp/src/ProtoGen.Test/DependencyResolutionTest.cs
  34. 0 30
      csharp/src/ProtoGen.Test/Properties/AssemblyInfo.cs
  35. 0 99
      csharp/src/ProtoGen.Test/ProtoGen.Test.csproj
  36. 0 683
      csharp/src/ProtoGen.Test/ProtocGenCsUnittests.cs
  37. 0 59
      csharp/src/ProtoGen.Test/TempFile.cs
  38. 0 733
      csharp/src/ProtoGen.Test/TestPreprocessing.cs
  39. 0 101
      csharp/src/ProtoGen.Test/protoc-gen-cs.Test.csproj
  40. 0 55
      csharp/src/ProtoGen/DependencyResolutionException.cs
  41. 0 106
      csharp/src/ProtoGen/DescriptorUtil.cs
  42. 0 148
      csharp/src/ProtoGen/EnumFieldGenerator.cs
  43. 0 62
      csharp/src/ProtoGen/EnumGenerator.cs
  44. 0 183
      csharp/src/ProtoGen/ExtensionGenerator.cs
  45. 0 389
      csharp/src/ProtoGen/FieldGeneratorBase.cs
  46. 0 267
      csharp/src/ProtoGen/Generator.cs
  47. 0 330
      csharp/src/ProtoGen/GeneratorOptions.cs
  48. 0 45
      csharp/src/ProtoGen/Helpers.cs
  49. 0 53
      csharp/src/ProtoGen/IFieldSourceGenerator.cs
  50. 0 43
      csharp/src/ProtoGen/ISourceGenerator.cs
  51. 0 77
      csharp/src/ProtoGen/InvalidOptionsException.cs
  52. 0 174
      csharp/src/ProtoGen/MessageFieldGenerator.cs
  53. 0 893
      csharp/src/ProtoGen/MessageGenerator.cs
  54. 0 1187
      csharp/src/ProtoGen/PluginProtoFile.cs
  55. 0 140
      csharp/src/ProtoGen/PrimitiveFieldGenerator.cs
  56. 0 105
      csharp/src/ProtoGen/Program.cs
  57. 0 276
      csharp/src/ProtoGen/ProgramPreprocess.cs
  58. 0 29
      csharp/src/ProtoGen/Properties/AssemblyInfo.cs
  59. 0 98
      csharp/src/ProtoGen/ProtoGen.csproj
  60. 0 76
      csharp/src/ProtoGen/ProtocGenCs.cs
  61. 0 212
      csharp/src/ProtoGen/RepeatedEnumFieldGenerator.cs
  62. 0 184
      csharp/src/ProtoGen/RepeatedMessageFieldGenerator.cs
  63. 0 207
      csharp/src/ProtoGen/RepeatedPrimitiveFieldGenerator.cs
  64. 0 190
      csharp/src/ProtoGen/ServiceGenerator.cs
  65. 0 300
      csharp/src/ProtoGen/ServiceInterfaceGenerator.cs
  66. 0 167
      csharp/src/ProtoGen/SourceGeneratorBase.cs
  67. 0 87
      csharp/src/ProtoGen/SourceGenerators.cs
  68. 0 294
      csharp/src/ProtoGen/UmbrellaClassGenerator.cs
  69. 0 7
      csharp/src/ProtoGen/app.config
  70. 0 101
      csharp/src/ProtoGen/protoc-gen-cs.csproj
  71. 0 166
      csharp/src/ProtocolBuffers/ProtocolBuffers.CF20.csproj
  72. 0 167
      csharp/src/ProtocolBuffers/ProtocolBuffers.CF35.csproj
  73. 0 154
      csharp/src/ProtocolBuffers/ProtocolBuffers.NET20.csproj
  74. 0 155
      csharp/src/ProtocolBuffers/ProtocolBuffers.NET35.csproj
  75. 0 155
      csharp/src/ProtocolBuffers/ProtocolBuffers.NET40.csproj
  76. 0 158
      csharp/src/ProtocolBuffers/ProtocolBuffers.PL40.csproj
  77. 0 169
      csharp/src/ProtocolBuffers/ProtocolBuffers.SL20.csproj
  78. 0 170
      csharp/src/ProtocolBuffers/ProtocolBuffers.SL30.csproj
  79. 0 171
      csharp/src/ProtocolBuffers/ProtocolBuffers.SL40.csproj
  80. 0 111
      csharp/src/ProtocolBuffers/ProtocolBuffersLite.CF20.csproj
  81. 0 112
      csharp/src/ProtocolBuffers/ProtocolBuffersLite.CF35.csproj
  82. 0 99
      csharp/src/ProtocolBuffers/ProtocolBuffersLite.NET20.csproj
  83. 0 100
      csharp/src/ProtocolBuffers/ProtocolBuffersLite.NET35.csproj
  84. 0 100
      csharp/src/ProtocolBuffers/ProtocolBuffersLite.NET40.csproj
  85. 0 103
      csharp/src/ProtocolBuffers/ProtocolBuffersLite.PL40.csproj
  86. 0 114
      csharp/src/ProtocolBuffers/ProtocolBuffersLite.SL20.csproj
  87. 0 115
      csharp/src/ProtocolBuffers/ProtocolBuffersLite.SL30.csproj
  88. 0 116
      csharp/src/ProtocolBuffers/ProtocolBuffersLite.SL40.csproj
  89. 0 55
      csharp/src/ProtocolBuffersLibrary.CF20.sln
  90. 0 55
      csharp/src/ProtocolBuffersLibrary.CF35.sln
  91. 0 55
      csharp/src/ProtocolBuffersLibrary.NET20.sln
  92. 0 55
      csharp/src/ProtocolBuffersLibrary.NET35.sln
  93. 0 55
      csharp/src/ProtocolBuffersLibrary.NET40.sln
  94. 0 55
      csharp/src/ProtocolBuffersLibrary.PL40.sln
  95. 0 55
      csharp/src/ProtocolBuffersLibrary.SL20.sln
  96. 0 55
      csharp/src/ProtocolBuffersLibrary.SL30.sln
  97. 0 55
      csharp/src/ProtocolBuffersLibrary.SL40.sln
  98. 0 8
      csharp/src/UseVS2008.bat
  99. 0 8
      csharp/src/UseVS2010.bat

+ 0 - 41
csharp/csproj_templates/CF20.csproj

@@ -1,41 +0,0 @@
-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5">
-  <PropertyGroup>
-    <EnvironmentFlavor>COMPACT_FRAMEWORK</EnvironmentFlavor>
-    <EnvironmentTemplate>CF20</EnvironmentTemplate>
-    <ProjectTypeGuids>{4D628B5B-2FBC-4AA6-8C16-197242AEB884};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
-    <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
-    <PlatformFamilyName>Smartphone</PlatformFamilyName>
-    <PlatformID>f27da329-3269-4191-98e0-c87d3d7f1db9</PlatformID>
-    <!--<OSVersion>5.2</OSVersion>-->
-    <!--<DeployDirSuffix>CF20</DeployDirSuffix>-->
-    <!--<NativePlatformName>Windows Mobile 6 Standard SDK</NativePlatformName>-->
-    <!--<FormFactorID></FormFactorID>-->
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <OutputPath>bin\CF20\Debug</OutputPath>
-    <IntermediateOutputPath>obj\CF20\Debug\</IntermediateOutputPath>
-    <DefineConstants>$(DefineConstants);NOSERIALIZABLE;NOFILEVERSION;NOEXTENSIONS</DefineConstants>
-    <NoConfig>true</NoConfig>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <OutputPath>bin\CF20\Release</OutputPath>
-    <IntermediateOutputPath>obj\CF20\Release\</IntermediateOutputPath>
-    <DefineConstants>$(DefineConstants);NOSERIALIZABLE;NOFILEVERSION;NOEXTENSIONS</DefineConstants>
-    <NoConfig>true</NoConfig>
-  </PropertyGroup>
-  <Import Project="$(MSBuildBinPath)\Microsoft.CompactFramework.CSharp.targets" />
-  <ProjectExtensions>
-    <VisualStudio>
-      <FlavorProperties GUID="{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}">
-        <HostingProcess disable="1" />
-      </FlavorProperties>
-    </VisualStudio>
-  </ProjectExtensions>
-  <!-- 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 - 44
csharp/csproj_templates/CF35.csproj

@@ -1,44 +0,0 @@
-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5">
-  <PropertyGroup>
-    <EnvironmentFlavor>COMPACT_FRAMEWORK</EnvironmentFlavor>
-    <EnvironmentTemplate>CF35</EnvironmentTemplate>
-    <ProjectTypeGuids>{4D628B5B-2FBC-4AA6-8C16-197242AEB884};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
-    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
-    <PlatformFamilyName>Smartphone</PlatformFamilyName>
-    <PlatformID>f27da329-3269-4191-98e0-c87d3d7f1db9</PlatformID>
-    <!--<OSVersion>5.2</OSVersion>-->
-    <!--<DeployDirSuffix>CF35</DeployDirSuffix>-->
-    <!--<NativePlatformName>Windows Mobile 6 Standard SDK</NativePlatformName>-->
-    <!--<FormFactorID></FormFactorID>-->
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <OutputPath>bin\CF35\Debug</OutputPath>
-    <IntermediateOutputPath>obj\CF35\Debug\</IntermediateOutputPath>
-    <DefineConstants>$(DefineConstants);NOSERIALIZABLE;NOFILEVERSION</DefineConstants>
-    <NoConfig>true</NoConfig>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <OutputPath>bin\CF35\Release</OutputPath>
-    <IntermediateOutputPath>obj\CF35\Release\</IntermediateOutputPath>
-    <DefineConstants>$(DefineConstants);NOSERIALIZABLE;NOFILEVERSION</DefineConstants>
-    <NoConfig>true</NoConfig>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="System.Core" />
-  </ItemGroup>
-  <Import Project="$(MSBuildBinPath)\Microsoft.CompactFramework.CSharp.targets" />
-  <ProjectExtensions>
-    <VisualStudio>
-      <FlavorProperties GUID="{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}">
-        <HostingProcess disable="1" />
-      </FlavorProperties>
-    </VisualStudio>
-  </ProjectExtensions>
-  <!-- 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 - 17
csharp/csproj_templates/NET20.csproj

@@ -1,17 +0,0 @@
-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5">
-  <PropertyGroup>
-    <EnvironmentFlavor>CLIENTPROFILE</EnvironmentFlavor>
-    <EnvironmentTemplate>NET20</EnvironmentTemplate>
-    <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <OutputPath>bin\NET20\Debug</OutputPath>
-    <IntermediateOutputPath>obj\NET20\Debug\</IntermediateOutputPath>
-    <DefineConstants>$(DefineConstants);NOEXTENSIONS</DefineConstants>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <OutputPath>bin\NET20\Release</OutputPath>
-    <IntermediateOutputPath>obj\NET20\Release\</IntermediateOutputPath>
-    <DefineConstants>$(DefineConstants);NOEXTENSIONS</DefineConstants>
-  </PropertyGroup>
-</Project>

+ 0 - 20
csharp/csproj_templates/NET35.csproj

@@ -1,20 +0,0 @@
-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="3.5">
-  <PropertyGroup>
-    <EnvironmentFlavor>CLIENTPROFILE</EnvironmentFlavor>
-    <EnvironmentTemplate>NET35</EnvironmentTemplate>
-    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <OutputPath>bin\NET35\Debug</OutputPath>
-    <IntermediateOutputPath>obj\NET35\Debug\</IntermediateOutputPath>
-    <DefineConstants>$(DefineConstants)</DefineConstants>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <OutputPath>bin\NET35\Release</OutputPath>
-    <IntermediateOutputPath>obj\NET35\Release\</IntermediateOutputPath>
-    <DefineConstants>$(DefineConstants)</DefineConstants>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="System.Core" />
-  </ItemGroup>
-</Project>

+ 0 - 20
csharp/csproj_templates/NET40.csproj

@@ -1,20 +0,0 @@
-<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
-  <PropertyGroup>
-    <EnvironmentFlavor>CLIENTPROFILE</EnvironmentFlavor>
-    <EnvironmentTemplate>NET40</EnvironmentTemplate>
-    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <OutputPath>bin\NET40\Debug</OutputPath>
-    <IntermediateOutputPath>obj\NET40\Debug\</IntermediateOutputPath>
-    <DefineConstants>$(DefineConstants)</DefineConstants>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <OutputPath>bin\NET40\Release</OutputPath>
-    <IntermediateOutputPath>obj\NET40\Release\</IntermediateOutputPath>
-    <DefineConstants>$(DefineConstants)</DefineConstants>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="System.Core" />
-  </ItemGroup>
-</Project>

+ 0 - 51
csharp/csproj_templates/PL40.csproj

@@ -1,51 +0,0 @@
-<Project ToolsVersion="4.0" DefaultTargets="Build" 
-         xmlns="http://schemas.microsoft.com/developer/msbuild/2003"
-         xmlns:cs="urn:schemas-csharp-project:template">
-  <PropertyGroup>
-    <MinimumVisualStudioVersion>10.0</MinimumVisualStudioVersion>
-    <EnvironmentFlavor>PORTABLE_LIBRARY</EnvironmentFlavor>
-    <EnvironmentTemplate>PL40</EnvironmentTemplate>
-    <ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
-    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
-    <TargetFrameworkProfile>Profile1</TargetFrameworkProfile>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <OutputPath>bin\PL40\Debug</OutputPath>
-    <IntermediateOutputPath>obj\PL40\Debug\</IntermediateOutputPath>
-    <DefineConstants>$(DefineConstants);NOSERIALIZABLE;NOSORTEDLIST</DefineConstants>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <OutputPath>bin\PL40\Release</OutputPath>
-    <IntermediateOutputPath>obj\PL40\Release\</IntermediateOutputPath>
-    <DefineConstants>$(DefineConstants);NOSERIALIZABLE;NOSORTEDLIST</DefineConstants>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="System.Core" />
-  </ItemGroup>
-  <Import cs:Precondition=" '$(EnvironmentProjectType)' != 'TEST' "
-          Project="$(MSBuildExtensionsPath32)\Microsoft\Portable\$(TargetFrameworkVersion)\Microsoft.Portable.CSharp.targets" />
-  <!-- Portable Library will be tested as silverlight -->
-  <PropertyGroup cs:Precondition=" '$(EnvironmentProjectType)' == 'TEST' ">
-    <ProjectTypeGuids>{A1591282-1198-4647-A2B1-27E5FF5F6F3B};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
-    <ValidateXaml>false</ValidateXaml>
-    <ThrowErrorsInValidation>false</ThrowErrorsInValidation>
-    <TargetFrameworkProfile />
-  </PropertyGroup>
-  <cs:Import Project="SLTest.targets" cs:Precondition=" '$(EnvironmentProjectType)' == 'TEST' " />
-  <Import cs:Precondition=" '$(EnvironmentProjectType)' == 'TEST' "
-          Project="$(MSBuildExtensionsPath32)\Microsoft\Silverlight\$(SilverlightVersion)\Microsoft.Silverlight.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>
-  -->
-  <ProjectExtensions cs:Precondition=" '$(EnvironmentProjectType)' == 'TEST' ">
-    <VisualStudio>
-      <FlavorProperties GUID="{A1591282-1198-4647-A2B1-27E5FF5F6F3B}">
-        <SilverlightProjectProperties />
-      </FlavorProperties>
-    </VisualStudio>
-  </ProjectExtensions>
-</Project>

+ 0 - 44
csharp/csproj_templates/SL20.csproj

@@ -1,44 +0,0 @@
-<Project ToolsVersion="3.5" DefaultTargets="Build" 
-         xmlns="http://schemas.microsoft.com/developer/msbuild/2003"
-         xmlns:cs="urn:schemas-csharp-project:template">
-  <PropertyGroup>
-    <EnvironmentFlavor>SILVERLIGHT</EnvironmentFlavor>
-    <EnvironmentTemplate>SL20</EnvironmentTemplate>
-    <ProjectTypeGuids>{A1591282-1198-4647-A2B1-27E5FF5F6F3B};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
-    <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
-    <SilverlightApplication>false</SilverlightApplication>
-    <ValidateXaml>false</ValidateXaml>
-    <ThrowErrorsInValidation>false</ThrowErrorsInValidation>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <OutputPath>bin\SL20\Debug</OutputPath>
-    <IntermediateOutputPath>obj\SL20\Debug\</IntermediateOutputPath>
-    <DefineConstants>$(DefineConstants);NOSERIALIZABLE;NOSORTEDLIST;NOEXTENSIONS</DefineConstants>
-    <NoConfig>true</NoConfig>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <OutputPath>bin\SL20\Release</OutputPath>
-    <IntermediateOutputPath>obj\SL20\Release\</IntermediateOutputPath>
-    <DefineConstants>$(DefineConstants);NOSERIALIZABLE;NOSORTEDLIST;NOEXTENSIONS</DefineConstants>
-    <NoConfig>true</NoConfig>
-  </PropertyGroup>
-  <!-- Preprocess include of silverlight testing -->
-  <cs:Import Project="SLTest.targets" cs:Precondition=" '$(EnvironmentProjectType)' == 'TEST' " />
-  <Import Project="$(MSBuildExtensionsPath32)\Microsoft\Silverlight\v2.0\Microsoft.Silverlight.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>
-  -->
-  <ProjectExtensions>
-    <VisualStudio>
-      <FlavorProperties GUID="{A1591282-1198-4647-A2B1-27E5FF5F6F3B}">
-        <SilverlightProjectProperties>
-          <StartAction>OfflineApplication</StartAction>
-        </SilverlightProjectProperties>
-      </FlavorProperties>
-    </VisualStudio>
-  </ProjectExtensions>
-</Project>

+ 0 - 47
csharp/csproj_templates/SL30.csproj

@@ -1,47 +0,0 @@
-<Project ToolsVersion="3.5" DefaultTargets="Build" 
-         xmlns="http://schemas.microsoft.com/developer/msbuild/2003"
-         xmlns:cs="urn:schemas-csharp-project:template">
-  <PropertyGroup>
-    <EnvironmentFlavor>SILVERLIGHT</EnvironmentFlavor>
-    <EnvironmentTemplate>SL30</EnvironmentTemplate>
-    <ProjectTypeGuids>{A1591282-1198-4647-A2B1-27E5FF5F6F3B};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
-    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
-    <SilverlightApplication>false</SilverlightApplication>
-    <ValidateXaml>false</ValidateXaml>
-    <ThrowErrorsInValidation>false</ThrowErrorsInValidation>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <OutputPath>bin\SL30\Debug</OutputPath>
-    <IntermediateOutputPath>obj\SL30\Debug\</IntermediateOutputPath>
-    <DefineConstants>$(DefineConstants);NOSERIALIZABLE;NOSORTEDLIST</DefineConstants>
-    <NoConfig>true</NoConfig>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <OutputPath>bin\SL30\Release</OutputPath>
-    <IntermediateOutputPath>obj\SL30\Release\</IntermediateOutputPath>
-    <DefineConstants>$(DefineConstants);NOSERIALIZABLE;NOSORTEDLIST</DefineConstants>
-    <NoConfig>true</NoConfig>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="System.Core" />
-  </ItemGroup>
-  <!-- Preprocess include of silverlight testing -->
-  <cs:Import Project="SLTest.targets" cs:Precondition=" '$(EnvironmentProjectType)' == 'TEST' " />
-  <Import Project="$(MSBuildExtensionsPath32)\Microsoft\Silverlight\v3.0\Microsoft.Silverlight.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>
-  -->
-  <ProjectExtensions>
-    <VisualStudio>
-      <FlavorProperties GUID="{A1591282-1198-4647-A2B1-27E5FF5F6F3B}">
-        <SilverlightProjectProperties>
-          <StartAction>OfflineApplication</StartAction>
-        </SilverlightProjectProperties>
-      </FlavorProperties>
-    </VisualStudio>
-  </ProjectExtensions>
-</Project>

+ 0 - 48
csharp/csproj_templates/SL40.csproj

@@ -1,48 +0,0 @@
-<Project ToolsVersion="4.0" DefaultTargets="Build" 
-         xmlns="http://schemas.microsoft.com/developer/msbuild/2003"
-         xmlns:cs="urn:schemas-csharp-project:template">
-  <PropertyGroup>
-    <EnvironmentFlavor>SILVERLIGHT</EnvironmentFlavor>
-    <EnvironmentTemplate>SL40</EnvironmentTemplate>
-    <ProjectTypeGuids>{A1591282-1198-4647-A2B1-27E5FF5F6F3B};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
-    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
-    <SilverlightApplication>false</SilverlightApplication>
-    <ValidateXaml>false</ValidateXaml>
-    <ThrowErrorsInValidation>false</ThrowErrorsInValidation>
-    <SilverlightVersion>$(TargetFrameworkVersion)</SilverlightVersion>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <OutputPath>bin\SL40\Debug</OutputPath>
-    <IntermediateOutputPath>obj\SL40\Debug\</IntermediateOutputPath>
-    <DefineConstants>$(DefineConstants);NOSERIALIZABLE;NOSORTEDLIST</DefineConstants>
-    <NoConfig>true</NoConfig>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <OutputPath>bin\SL40\Release</OutputPath>
-    <IntermediateOutputPath>obj\SL40\Release\</IntermediateOutputPath>
-    <DefineConstants>$(DefineConstants);NOSERIALIZABLE;NOSORTEDLIST</DefineConstants>
-    <NoConfig>true</NoConfig>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="System.Core" />
-  </ItemGroup>
-  <!-- Preprocess include of silverlight testing -->
-  <cs:Import Project="SLTest.targets" cs:Precondition=" '$(EnvironmentProjectType)' == 'TEST' " />
-  <Import Project="$(MSBuildExtensionsPath32)\Microsoft\Silverlight\$(SilverlightVersion)\Microsoft.Silverlight.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>
-  -->
-  <ProjectExtensions>
-    <VisualStudio>
-      <FlavorProperties GUID="{A1591282-1198-4647-A2B1-27E5FF5F6F3B}">
-        <SilverlightProjectProperties>
-          <StartAction>OfflineApplication</StartAction>
-        </SilverlightProjectProperties>
-      </FlavorProperties>
-    </VisualStudio>
-  </ProjectExtensions>
-</Project>

+ 0 - 34
csharp/csproj_templates/SLTest.targets

@@ -1,34 +0,0 @@
-<Project ToolsVersion="3.5" DefaultTargets="Build" 
-         xmlns="http://schemas.microsoft.com/developer/msbuild/2003"
-         xmlns:cs="urn:schemas-csharp-project:template">
-
-  <PropertyGroup>
-    <SilverlightApplication>true</SilverlightApplication>
-    <XapOutputs>true</XapOutputs>
-    <GenerateSilverlightManifest>true</GenerateSilverlightManifest>
-    <XapFilename>$(AssemblyName).xap</XapFilename>
-    <SilverlightManifestTemplate>Properties\AppManifest.xml</SilverlightManifestTemplate>
-    <SilverlightAppEntry>$(RootNamespace).App</SilverlightAppEntry>
-    <TestPageFileName>TestPage.html</TestPageFileName>
-    <CreateTestPage>true</CreateTestPage>
-    <SilverlightVersion>$(TargetFrameworkVersion)</SilverlightVersion>
-    <OutOfBrowserSettingsFile>Properties\OutOfBrowserSettings.xml</OutOfBrowserSettingsFile>
-    <EnableOutOfBrowser>true</EnableOutOfBrowser>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="System.Windows" />
-    <Reference Include="System.Windows.Browser" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="App.xaml.cs">
-      <DependentUpon>App.xaml</DependentUpon>
-    </Compile>
-    <None Include="Properties\AppManifest.xml" />
-    <None Include="Properties\OutOfBrowserSettings.xml" />
-    <ApplicationDefinition Include="App.xaml">
-      <Generator>MSBuild:Compile</Generator>
-      <SubType>Designer</SubType>
-    </ApplicationDefinition>
-  </ItemGroup>
-  
-</Project>

+ 0 - 140
csharp/protos/benchmarks/google_size.proto

@@ -1,140 +0,0 @@
-import "google/protobuf/csharp_options.proto";
-option (google.protobuf.csharp_file_options).namespace = "Google.ProtocolBuffers.ProtoBench";
-option (google.protobuf.csharp_file_options).umbrella_classname = "GoogleSizeProtoFile";
-
-package benchmarks;
-
-option java_outer_classname = "GoogleSize";
-option optimize_for = CODE_SIZE;
-
-message SizeMessage1 {
-  required string field1 = 1;
-  optional string field9 = 9;
-  optional string field18 = 18;
-  optional bool field80 = 80 [default=false];
-  optional bool field81 = 81 [default=true];
-  required int32 field2 = 2;
-  required int32 field3 = 3;
-  optional int32 field280 = 280;
-  optional int32 field6 = 6 [default=0];
-  optional int64 field22 = 22;
-  optional string field4 = 4;
-  repeated fixed64 field5 = 5;
-  optional bool field59 = 59 [default=false];
-  optional string field7 = 7;
-  optional int32 field16 = 16;
-  optional int32 field130 = 130 [default=0];
-  optional bool field12 = 12 [default=true];
-  optional bool field17 = 17 [default=true];
-  optional bool field13 = 13 [default=true];
-  optional bool field14 = 14 [default=true];
-  optional int32 field104 = 104 [default=0];
-  optional int32 field100 = 100 [default=0];
-  optional int32 field101 = 101 [default=0];
-  optional string field102 = 102;
-  optional string field103 = 103;
-  optional int32 field29 = 29 [default=0];
-  optional bool field30 = 30 [default=false];
-  optional int32 field60 = 60 [default=-1];
-  optional int32 field271 = 271 [default=-1];
-  optional int32 field272 = 272 [default=-1];
-  optional int32 field150 = 150;
-  optional int32 field23 = 23 [default=0];
-  optional bool field24 = 24 [default=false];
-  optional int32 field25 = 25 [default=0];
-  optional SizeMessage1SubMessage field15 = 15;
-  optional bool field78 = 78;
-  optional int32 field67 = 67 [default=0];
-  optional int32 field68 = 68;
-  optional int32 field128 = 128 [default=0];
-  optional string field129 = 129 [default="xxxxxxxxxxxxxxxxxxxxx"];
-  optional int32 field131 = 131 [default=0];
-}
-
-message SizeMessage1SubMessage {
-  optional int32 field1 = 1 [default=0];
-  optional int32 field2 = 2 [default=0];
-  optional int32 field3 = 3 [default=0];
-  optional string field15 = 15;
-  optional bool field12 = 12 [default=true];
-  optional int64 field13 = 13;
-  optional int64 field14 = 14;
-  optional int32 field16 = 16;
-  optional int32 field19 = 19 [default=2];
-  optional bool field20  = 20 [default=true];
-  optional bool field28 = 28 [default=true];
-  optional fixed64 field21 = 21;
-  optional int32 field22 = 22;
-  optional bool field23 = 23 [ default=false ];
-  optional bool field206 = 206 [default=false];
-  optional fixed32 field203 = 203;
-  optional int32 field204 = 204;
-  optional string field205 = 205;
-  optional uint64 field207 = 207;
-  optional uint64 field300 = 300;
-}
-
-message SizeMessage2 {
-  optional string field1 = 1;
-  optional int64 field3 = 3;
-  optional int64 field4 = 4;
-  optional int64 field30 = 30;
-  optional bool field75  = 75 [default=false];
-  optional string field6 = 6;
-  optional bytes field2 = 2;
-  optional int32 field21 = 21 [default=0];
-  optional int32 field71 = 71;
-  optional float field25 = 25;
-  optional int32 field109 = 109 [default=0];
-  optional int32 field210 = 210 [default=0];
-  optional int32 field211 = 211 [default=0];
-  optional int32 field212 = 212 [default=0];
-  optional int32 field213 = 213 [default=0];
-  optional int32 field216 = 216 [default=0];
-  optional int32 field217 = 217 [default=0];
-  optional int32 field218 = 218 [default=0];
-  optional int32 field220 = 220 [default=0];
-  optional int32 field221 = 221 [default=0];
-  optional float field222 = 222 [default=0.0];
-  optional int32 field63 = 63;
-
-  repeated group Group1 = 10 {
-    required float field11 = 11;
-    optional float field26 = 26;
-    optional string field12 = 12;
-    optional string field13 = 13;
-    repeated string field14 = 14;
-    required uint64 field15 = 15;
-    optional int32 field5 = 5;
-    optional string field27 = 27;
-    optional int32 field28 = 28;
-    optional string field29 = 29;
-    optional string field16 = 16;
-    repeated string field22 = 22;
-    repeated int32 field73 = 73;
-    optional int32 field20 = 20 [default=0];
-    optional string field24 = 24;
-    optional SizeMessage2GroupedMessage field31 = 31;
-  }
-  repeated string field128 = 128;
-  optional int64 field131 = 131;
-  repeated string field127 = 127;
-  optional int32 field129 = 129;
-  repeated int64 field130 = 130;
-  optional bool field205 = 205 [default=false];
-  optional bool field206 = 206 [default=false];
-}
-
-message SizeMessage2GroupedMessage {
-  optional float field1 = 1;
-  optional float field2 = 2;
-  optional float field3 = 3 [default=0.0];
-  optional bool field4 = 4;
-  optional bool field5 = 5;
-  optional bool field6 = 6 [default=true];
-  optional bool field7 = 7 [default=false];
-  optional float field8 = 8;
-  optional bool field9 = 9;
-  optional float field10 = 10;
-  optional int64 field11 = 11;
-}

+ 0 - 140
csharp/protos/benchmarks/google_speed.proto

@@ -1,140 +0,0 @@
-import "google/protobuf/csharp_options.proto";
-option (google.protobuf.csharp_file_options).namespace = "Google.ProtocolBuffers.ProtoBench";
-option (google.protobuf.csharp_file_options).umbrella_classname = "GoogleSpeedProtoFile";
-
-package benchmarks;
-
-option java_outer_classname = "GoogleSpeed";
-option optimize_for = SPEED;
-
-message SpeedMessage1 {
-  required string field1 = 1;
-  optional string field9 = 9;
-  optional string field18 = 18;
-  optional bool field80 = 80 [default=false];
-  optional bool field81 = 81 [default=true];
-  required int32 field2 = 2;
-  required int32 field3 = 3;
-  optional int32 field280 = 280;
-  optional int32 field6 = 6 [default=0];
-  optional int64 field22 = 22;
-  optional string field4 = 4;
-  repeated fixed64 field5 = 5;
-  optional bool field59 = 59 [default=false];
-  optional string field7 = 7;
-  optional int32 field16 = 16;
-  optional int32 field130 = 130 [default=0];
-  optional bool field12 = 12 [default=true];
-  optional bool field17 = 17 [default=true];
-  optional bool field13 = 13 [default=true];
-  optional bool field14 = 14 [default=true];
-  optional int32 field104 = 104 [default=0];
-  optional int32 field100 = 100 [default=0];
-  optional int32 field101 = 101 [default=0];
-  optional string field102 = 102;
-  optional string field103 = 103;
-  optional int32 field29 = 29 [default=0];
-  optional bool field30 = 30 [default=false];
-  optional int32 field60 = 60 [default=-1];
-  optional int32 field271 = 271 [default=-1];
-  optional int32 field272 = 272 [default=-1];
-  optional int32 field150 = 150;
-  optional int32 field23 = 23 [default=0];
-  optional bool field24 = 24 [default=false];
-  optional int32 field25 = 25 [default=0];
-  optional SpeedMessage1SubMessage field15 = 15;
-  optional bool field78 = 78;
-  optional int32 field67 = 67 [default=0];
-  optional int32 field68 = 68;
-  optional int32 field128 = 128 [default=0];
-  optional string field129 = 129 [default="xxxxxxxxxxxxxxxxxxxxx"];
-  optional int32 field131 = 131 [default=0];
-}
-
-message SpeedMessage1SubMessage {
-  optional int32 field1 = 1 [default=0];
-  optional int32 field2 = 2 [default=0];
-  optional int32 field3 = 3 [default=0];
-  optional string field15 = 15;
-  optional bool field12 = 12 [default=true];
-  optional int64 field13 = 13;
-  optional int64 field14 = 14;
-  optional int32 field16 = 16;
-  optional int32 field19 = 19 [default=2];
-  optional bool field20  = 20 [default=true];
-  optional bool field28 = 28 [default=true];
-  optional fixed64 field21 = 21;
-  optional int32 field22 = 22;
-  optional bool field23 = 23 [ default=false ];
-  optional bool field206 = 206 [default=false];
-  optional fixed32 field203 = 203;
-  optional int32 field204 = 204;
-  optional string field205 = 205;
-  optional uint64 field207 = 207;
-  optional uint64 field300 = 300;
-}
-
-message SpeedMessage2 {
-  optional string field1 = 1;
-  optional int64 field3 = 3;
-  optional int64 field4 = 4;
-  optional int64 field30 = 30;
-  optional bool field75  = 75 [default=false];
-  optional string field6 = 6;
-  optional bytes field2 = 2;
-  optional int32 field21 = 21 [default=0];
-  optional int32 field71 = 71;
-  optional float field25 = 25;
-  optional int32 field109 = 109 [default=0];
-  optional int32 field210 = 210 [default=0];
-  optional int32 field211 = 211 [default=0];
-  optional int32 field212 = 212 [default=0];
-  optional int32 field213 = 213 [default=0];
-  optional int32 field216 = 216 [default=0];
-  optional int32 field217 = 217 [default=0];
-  optional int32 field218 = 218 [default=0];
-  optional int32 field220 = 220 [default=0];
-  optional int32 field221 = 221 [default=0];
-  optional float field222 = 222 [default=0.0];
-  optional int32 field63 = 63;
-
-  repeated group Group1 = 10 {
-    required float field11 = 11;
-    optional float field26 = 26;
-    optional string field12 = 12;
-    optional string field13 = 13;
-    repeated string field14 = 14;
-    required uint64 field15 = 15;
-    optional int32 field5 = 5;
-    optional string field27 = 27;
-    optional int32 field28 = 28;
-    optional string field29 = 29;
-    optional string field16 = 16;
-    repeated string field22 = 22;
-    repeated int32 field73 = 73;
-    optional int32 field20 = 20 [default=0];
-    optional string field24 = 24;
-    optional SpeedMessage2GroupedMessage field31 = 31;
-  }
-  repeated string field128 = 128;
-  optional int64 field131 = 131;
-  repeated string field127 = 127;
-  optional int32 field129 = 129;
-  repeated int64 field130 = 130;
-  optional bool field205 = 205 [default=false];
-  optional bool field206 = 206 [default=false];
-}
-
-message SpeedMessage2GroupedMessage {
-  optional float field1 = 1;
-  optional float field2 = 2;
-  optional float field3 = 3 [default=0.0];
-  optional bool field4 = 4;
-  optional bool field5 = 5;
-  optional bool field6 = 6 [default=true];
-  optional bool field7 = 7 [default=false];
-  optional float field8 = 8;
-  optional bool field9 = 9;
-  optional float field10 = 10;
-  optional int64 field11 = 11;
-}

+ 0 - 147
csharp/protos/google/protobuf/compiler/plugin.proto

@@ -1,147 +0,0 @@
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-// Author: kenton@google.com (Kenton Varda)
-//
-// WARNING:  The plugin interface is currently EXPERIMENTAL and is subject to
-//   change.
-//
-// protoc (aka the Protocol Compiler) can be extended via plugins.  A plugin is
-// just a program that reads a CodeGeneratorRequest from stdin and writes a
-// CodeGeneratorResponse to stdout.
-//
-// Plugins written using C++ can use google/protobuf/compiler/plugin.h instead
-// of dealing with the raw protocol defined here.
-//
-// A plugin executable needs only to be placed somewhere in the path.  The
-// plugin should be named "protoc-gen-$NAME", and will then be used when the
-// flag "--${NAME}_out" is passed to protoc.
-
-package google.protobuf.compiler;
-option java_package = "com.google.protobuf.compiler";
-option java_outer_classname = "PluginProtos";
-
-import "google/protobuf/descriptor.proto";
-
-// An encoded CodeGeneratorRequest is written to the plugin's stdin.
-message CodeGeneratorRequest {
-  // The .proto files that were explicitly listed on the command-line.  The
-  // code generator should generate code only for these files.  Each file's
-  // descriptor will be included in proto_file, below.
-  repeated string file_to_generate = 1;
-
-  // The generator parameter passed on the command-line.
-  optional string parameter = 2;
-
-  // FileDescriptorProtos for all files in files_to_generate and everything
-  // they import.  The files will appear in topological order, so each file
-  // appears before any file that imports it.
-  //
-  // protoc guarantees that all proto_files will be written after
-  // the fields above, even though this is not technically guaranteed by the
-  // protobuf wire format.  This theoretically could allow a plugin to stream
-  // in the FileDescriptorProtos and handle them one by one rather than read
-  // the entire set into memory at once.  However, as of this writing, this
-  // is not similarly optimized on protoc's end -- it will store all fields in
-  // memory at once before sending them to the plugin.
-  repeated FileDescriptorProto proto_file = 15;
-}
-
-// The plugin writes an encoded CodeGeneratorResponse to stdout.
-message CodeGeneratorResponse {
-  // Error message.  If non-empty, code generation failed.  The plugin process
-  // should exit with status code zero even if it reports an error in this way.
-  //
-  // This should be used to indicate errors in .proto files which prevent the
-  // code generator from generating correct code.  Errors which indicate a
-  // problem in protoc itself -- such as the input CodeGeneratorRequest being
-  // unparseable -- should be reported by writing a message to stderr and
-  // exiting with a non-zero status code.
-  optional string error = 1;
-
-  // Represents a single generated file.
-  message File {
-    // The file name, relative to the output directory.  The name must not
-    // contain "." or ".." components and must be relative, not be absolute (so,
-    // the file cannot lie outside the output directory).  "/" must be used as
-    // the path separator, not "\".
-    //
-    // If the name is omitted, the content will be appended to the previous
-    // file.  This allows the generator to break large files into small chunks,
-    // and allows the generated text to be streamed back to protoc so that large
-    // files need not reside completely in memory at one time.  Note that as of
-    // this writing protoc does not optimize for this -- it will read the entire
-    // CodeGeneratorResponse before writing files to disk.
-    optional string name = 1;
-
-    // If non-empty, indicates that the named file should already exist, and the
-    // content here is to be inserted into that file at a defined insertion
-    // point.  This feature allows a code generator to extend the output
-    // produced by another code generator.  The original generator may provide
-    // insertion points by placing special annotations in the file that look
-    // like:
-    //   @@protoc_insertion_point(NAME)
-    // The annotation can have arbitrary text before and after it on the line,
-    // which allows it to be placed in a comment.  NAME should be replaced with
-    // an identifier naming the point -- this is what other generators will use
-    // as the insertion_point.  Code inserted at this point will be placed
-    // immediately above the line containing the insertion point (thus multiple
-    // insertions to the same point will come out in the order they were added).
-    // The double-@ is intended to make it unlikely that the generated code
-    // could contain things that look like insertion points by accident.
-    //
-    // For example, the C++ code generator places the following line in the
-    // .pb.h files that it generates:
-    //   // @@protoc_insertion_point(namespace_scope)
-    // This line appears within the scope of the file's package namespace, but
-    // outside of any particular class.  Another plugin can then specify the
-    // insertion_point "namespace_scope" to generate additional classes or
-    // other declarations that should be placed in this scope.
-    //
-    // Note that if the line containing the insertion point begins with
-    // whitespace, the same whitespace will be added to every line of the
-    // inserted text.  This is useful for languages like Python, where
-    // indentation matters.  In these languages, the insertion point comment
-    // should be indented the same amount as any inserted code will need to be
-    // in order to work correctly in that context.
-    //
-    // The code generator that generates the initial file and the one which
-    // inserts into it must both run as part of a single invocation of protoc.
-    // Code generators are executed in the order in which they appear on the
-    // command line.
-    //
-    // If |insertion_point| is present, |name| must also be present.
-    optional string insertion_point = 2;
-
-    // The file contents.
-    optional string content = 15;
-  }
-  repeated File file = 15;
-}

+ 0 - 115
csharp/protos/google/protobuf/csharp_options.proto

@@ -1,115 +0,0 @@
-// Extra options for C# generator
-
-import "google/protobuf/descriptor.proto";
-
-package google.protobuf;
-
-message CSharpFileOptions {
-
-  // Namespace for generated classes; defaults to the package.
-  optional string namespace = 1;
-  
-  // Name of the "umbrella" class used for metadata about all
-  // the messages within this file. Default is based on the name
-  // of the file.
-  optional string umbrella_classname = 2;
-  
-  // Whether classes should be public (true) or internal (false)
-  optional bool public_classes = 3 [default = true];
-
-  // Whether to generate a single file for everything within the
-  // .proto file (false), or one file per message (true).
-  // This option is not currently honored; please log a feature
-  // request if you really want it.
-  optional bool multiple_files = 4;
-
-  // Whether to nest messages within a single umbrella class (true)
-  // or create the umbrella class as a peer, with messages as
-  // top-level classes in the namespace (false)
-  optional bool nest_classes = 5;
-  
-  // Generate appropriate support for Code Contracts
-  // (Ongoing; support should improve over time)
-  optional bool code_contracts = 6;
-  
-  // Create subdirectories for namespaces, e.g. namespace "Foo.Bar"
-  // would generate files within [output directory]/Foo/Bar
-  optional bool expand_namespace_directories = 7;
-
-  // Generate attributes indicating non-CLS-compliance
-  optional bool cls_compliance = 8 [default = true];
-  
-  // Generate messages/builders with the [Serializable] attribute
-  optional bool add_serializable = 9 [default = false];
-  
-  // Generates a private ctor for Message types
-  optional bool generate_private_ctor = 10 [default = true];
-
-  // The extension that should be appended to the umbrella_classname when creating files.
-  optional string file_extension = 221 [default = ".cs"];
-  
-  // A nested namespace for the umbrella class.  Helpful for name collisions caused by 
-  // umbrella_classname conflicting with an existing type.  This will be automatically
-  // set to 'Proto' if a collision is detected with types being generated.  This value
-  // is ignored when nest_classes == true
-  optional string umbrella_namespace = 222;
-  
-  // The output path for the source file(s) generated
-  optional string output_directory = 223 [default = "."];
-
-  // Will ignore the type generations and remove dependencies for the descriptor proto
-  // files that declare their package to be "google.protobuf"
-  optional bool ignore_google_protobuf = 224 [default = false];
-
-  // Controls how services are generated, GENERIC is the deprecated original implementation
-  // INTERFACE generates service interfaces only, RPCINTEROP generates interfaces and 
-  // implementations using the included Windows RPC interop libarary.
-  optional CSharpServiceType service_generator_type = 225 [default = NONE];
-  
-  // Used to add the System.Runtime.CompilerServices.CompilerGeneratedAttribute and 
-  // System.CodeDom.Compiler.GeneratedCodeAttribute attributes to generated code.
-  optional bool generated_code_attributes = 226 [default = false];
-}
-
-enum CSharpServiceType {
-  // Services are ignored by the generator
-  NONE = 0;
-  // Generates the original Java generic service implementations
-  GENERIC = 1;
-  // Generates an interface for the service and nothing else
-  INTERFACE = 2;
-  // Generates an interface for the service and client/server wrappers for the interface
-  IRPCDISPATCH = 3;
-}
-
-extend FileOptions {
-  optional CSharpFileOptions csharp_file_options = 1000;
-}
-
-extend FieldOptions {
-  optional CSharpFieldOptions csharp_field_options = 1000;
-}
-
-message CSharpFieldOptions {
-  // Provides the ability to override the name of the property
-  // generated for this field. This is applied to all properties
-  // and methods to do with this field, including HasFoo, FooCount,
-  // FooList etc.
-  optional string property_name = 1;
-}
-
-message CSharpServiceOptions {
-  optional string interface_id = 1;
-}
-
-extend ServiceOptions {
-  optional CSharpServiceOptions csharp_service_options = 1000;
-}
-
-message CSharpMethodOptions {
-  optional int32 dispatch_id = 1;
-}
-
-extend MethodOptions {
-  optional CSharpMethodOptions csharp_method_options = 1000;
-}

+ 0 - 533
csharp/protos/google/protobuf/descriptor.proto

@@ -1,533 +0,0 @@
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-// Author: kenton@google.com (Kenton Varda)
-//  Based on original Protocol Buffers design by
-//  Sanjay Ghemawat, Jeff Dean, and others.
-//
-// The messages in this file describe the definitions found in .proto files.
-// A valid .proto file can be translated directly to a FileDescriptorProto
-// without any other information (e.g. without reading its imports).
-
-
-
-package google.protobuf;
-option java_package = "com.google.protobuf";
-option java_outer_classname = "DescriptorProtos";
-
-// descriptor.proto must be optimized for speed because reflection-based
-// algorithms don't work during bootstrapping.
-option optimize_for = SPEED;
-
-// The protocol compiler can output a FileDescriptorSet containing the .proto
-// files it parses.
-message FileDescriptorSet {
-  repeated FileDescriptorProto file = 1;
-}
-
-// Describes a complete .proto file.
-message FileDescriptorProto {
-  optional string name = 1;       // file name, relative to root of source tree
-  optional string package = 2;    // e.g. "foo", "foo.bar", etc.
-
-  // Names of files imported by this file.
-  repeated string dependency = 3;
-
-  // All top-level definitions in this file.
-  repeated DescriptorProto message_type = 4;
-  repeated EnumDescriptorProto enum_type = 5;
-  repeated ServiceDescriptorProto service = 6;
-  repeated FieldDescriptorProto extension = 7;
-
-  optional FileOptions options = 8;
-
-  // This field contains optional information about the original source code.
-  // You may safely remove this entire field whithout harming runtime
-  // functionality of the descriptors -- the information is needed only by
-  // development tools.
-  optional SourceCodeInfo source_code_info = 9;
-}
-
-// Describes a message type.
-message DescriptorProto {
-  optional string name = 1;
-
-  repeated FieldDescriptorProto field = 2;
-  repeated FieldDescriptorProto extension = 6;
-
-  repeated DescriptorProto nested_type = 3;
-  repeated EnumDescriptorProto enum_type = 4;
-
-  message ExtensionRange {
-    optional int32 start = 1;
-    optional int32 end = 2;
-  }
-  repeated ExtensionRange extension_range = 5;
-
-  optional MessageOptions options = 7;
-}
-
-// Describes a field within a message.
-message FieldDescriptorProto {
-  enum Type {
-    // 0 is reserved for errors.
-    // Order is weird for historical reasons.
-    TYPE_DOUBLE         = 1;
-    TYPE_FLOAT          = 2;
-    TYPE_INT64          = 3;   // Not ZigZag encoded.  Negative numbers
-                               // take 10 bytes.  Use TYPE_SINT64 if negative
-                               // values are likely.
-    TYPE_UINT64         = 4;
-    TYPE_INT32          = 5;   // Not ZigZag encoded.  Negative numbers
-                               // take 10 bytes.  Use TYPE_SINT32 if negative
-                               // values are likely.
-    TYPE_FIXED64        = 6;
-    TYPE_FIXED32        = 7;
-    TYPE_BOOL           = 8;
-    TYPE_STRING         = 9;
-    TYPE_GROUP          = 10;  // Tag-delimited aggregate.
-    TYPE_MESSAGE        = 11;  // Length-delimited aggregate.
-
-    // New in version 2.
-    TYPE_BYTES          = 12;
-    TYPE_UINT32         = 13;
-    TYPE_ENUM           = 14;
-    TYPE_SFIXED32       = 15;
-    TYPE_SFIXED64       = 16;
-    TYPE_SINT32         = 17;  // Uses ZigZag encoding.
-    TYPE_SINT64         = 18;  // Uses ZigZag encoding.
-  };
-
-  enum Label {
-    // 0 is reserved for errors
-    LABEL_OPTIONAL      = 1;
-    LABEL_REQUIRED      = 2;
-    LABEL_REPEATED      = 3;
-    // TODO(sanjay): Should we add LABEL_MAP?
-  };
-
-  optional string name = 1;
-  optional int32 number = 3;
-  optional Label label = 4;
-
-  // If type_name is set, this need not be set.  If both this and type_name
-  // are set, this must be either TYPE_ENUM or TYPE_MESSAGE.
-  optional Type type = 5;
-
-  // For message and enum types, this is the name of the type.  If the name
-  // starts with a '.', it is fully-qualified.  Otherwise, C++-like scoping
-  // rules are used to find the type (i.e. first the nested types within this
-  // message are searched, then within the parent, on up to the root
-  // namespace).
-  optional string type_name = 6;
-
-  // For extensions, this is the name of the type being extended.  It is
-  // resolved in the same manner as type_name.
-  optional string extendee = 2;
-
-  // For numeric types, contains the original text representation of the value.
-  // For booleans, "true" or "false".
-  // For strings, contains the default text contents (not escaped in any way).
-  // For bytes, contains the C escaped value.  All bytes >= 128 are escaped.
-  // TODO(kenton):  Base-64 encode?
-  optional string default_value = 7;
-
-  optional FieldOptions options = 8;
-}
-
-// Describes an enum type.
-message EnumDescriptorProto {
-  optional string name = 1;
-
-  repeated EnumValueDescriptorProto value = 2;
-
-  optional EnumOptions options = 3;
-}
-
-// Describes a value within an enum.
-message EnumValueDescriptorProto {
-  optional string name = 1;
-  optional int32 number = 2;
-
-  optional EnumValueOptions options = 3;
-}
-
-// Describes a service.
-message ServiceDescriptorProto {
-  optional string name = 1;
-  repeated MethodDescriptorProto method = 2;
-
-  optional ServiceOptions options = 3;
-}
-
-// Describes a method of a service.
-message MethodDescriptorProto {
-  optional string name = 1;
-
-  // Input and output type names.  These are resolved in the same way as
-  // FieldDescriptorProto.type_name, but must refer to a message type.
-  optional string input_type = 2;
-  optional string output_type = 3;
-
-  optional MethodOptions options = 4;
-}
-
-// ===================================================================
-// Options
-
-// Each of the definitions above may have "options" attached.  These are
-// just annotations which may cause code to be generated slightly differently
-// or may contain hints for code that manipulates protocol messages.
-//
-// Clients may define custom options as extensions of the *Options messages.
-// These extensions may not yet be known at parsing time, so the parser cannot
-// store the values in them.  Instead it stores them in a field in the *Options
-// message called uninterpreted_option. This field must have the same name
-// across all *Options messages. We then use this field to populate the
-// extensions when we build a descriptor, at which point all protos have been
-// parsed and so all extensions are known.
-//
-// Extension numbers for custom options may be chosen as follows:
-// * For options which will only be used within a single application or
-//   organization, or for experimental options, use field numbers 50000
-//   through 99999.  It is up to you to ensure that you do not use the
-//   same number for multiple options.
-// * For options which will be published and used publicly by multiple
-//   independent entities, e-mail kenton@google.com to reserve extension
-//   numbers.  Simply tell me how many you need and I'll send you back a
-//   set of numbers to use -- there's no need to explain how you intend to
-//   use them.  If this turns out to be popular, a web service will be set up
-//   to automatically assign option numbers.
-
-
-message FileOptions {
-
-  // Sets the Java package where classes generated from this .proto will be
-  // placed.  By default, the proto package is used, but this is often
-  // inappropriate because proto packages do not normally start with backwards
-  // domain names.
-  optional string java_package = 1;
-
-
-  // If set, all the classes from the .proto file are wrapped in a single
-  // outer class with the given name.  This applies to both Proto1
-  // (equivalent to the old "--one_java_file" option) and Proto2 (where
-  // a .proto always translates to a single class, but you may want to
-  // explicitly choose the class name).
-  optional string java_outer_classname = 8;
-
-  // If set true, then the Java code generator will generate a separate .java
-  // file for each top-level message, enum, and service defined in the .proto
-  // file.  Thus, these types will *not* be nested inside the outer class
-  // named by java_outer_classname.  However, the outer class will still be
-  // generated to contain the file's getDescriptor() method as well as any
-  // top-level extensions defined in the file.
-  optional bool java_multiple_files = 10 [default=false];
-
-  // If set true, then the Java code generator will generate equals() and
-  // hashCode() methods for all messages defined in the .proto file. This is
-  // purely a speed optimization, as the AbstractMessage base class includes
-  // reflection-based implementations of these methods.
-  optional bool java_generate_equals_and_hash = 20 [default=false];
-
-  // Generated classes can be optimized for speed or code size.
-  enum OptimizeMode {
-    SPEED = 1;        // Generate complete code for parsing, serialization,
-                      // etc.
-    CODE_SIZE = 2;    // Use ReflectionOps to implement these methods.
-    LITE_RUNTIME = 3; // Generate code using MessageLite and the lite runtime.
-  }
-  optional OptimizeMode optimize_for = 9 [default=SPEED];
-
-
-
-
-  // Should generic services be generated in each language?  "Generic" services
-  // are not specific to any particular RPC system.  They are generated by the
-  // main code generators in each language (without additional plugins).
-  // Generic services were the only kind of service generation supported by
-  // early versions of proto2.
-  //
-  // Generic services are now considered deprecated in favor of using plugins
-  // that generate code specific to your particular RPC system.  Therefore,
-  // these default to false.  Old code which depends on generic services should
-  // explicitly set them to true.
-  optional bool cc_generic_services = 16 [default=false];
-  optional bool java_generic_services = 17 [default=false];
-  optional bool py_generic_services = 18 [default=false];
-
-  // The parser stores options it doesn't recognize here. See above.
-  repeated UninterpretedOption uninterpreted_option = 999;
-
-  // Clients can define custom options in extensions of this message. See above.
-  extensions 1000 to max;
-}
-
-message MessageOptions {
-  // Set true to use the old proto1 MessageSet wire format for extensions.
-  // This is provided for backwards-compatibility with the MessageSet wire
-  // format.  You should not use this for any other reason:  It's less
-  // efficient, has fewer features, and is more complicated.
-  //
-  // The message must be defined exactly as follows:
-  //   message Foo {
-  //     option message_set_wire_format = true;
-  //     extensions 4 to max;
-  //   }
-  // Note that the message cannot have any defined fields; MessageSets only
-  // have extensions.
-  //
-  // All extensions of your type must be singular messages; e.g. they cannot
-  // be int32s, enums, or repeated messages.
-  //
-  // Because this is an option, the above two restrictions are not enforced by
-  // the protocol compiler.
-  optional bool message_set_wire_format = 1 [default=false];
-
-  // Disables the generation of the standard "descriptor()" accessor, which can
-  // conflict with a field of the same name.  This is meant to make migration
-  // from proto1 easier; new code should avoid fields named "descriptor".
-  optional bool no_standard_descriptor_accessor = 2 [default=false];
-
-  // The parser stores options it doesn't recognize here. See above.
-  repeated UninterpretedOption uninterpreted_option = 999;
-
-  // Clients can define custom options in extensions of this message. See above.
-  extensions 1000 to max;
-}
-
-message FieldOptions {
-  // The ctype option instructs the C++ code generator to use a different
-  // representation of the field than it normally would.  See the specific
-  // options below.  This option is not yet implemented in the open source
-  // release -- sorry, we'll try to include it in a future version!
-  optional CType ctype = 1 [default = STRING];
-  enum CType {
-    // Default mode.
-    STRING = 0;
-
-    CORD = 1;
-
-    STRING_PIECE = 2;
-  }
-  // The packed option can be enabled for repeated primitive fields to enable
-  // a more efficient representation on the wire. Rather than repeatedly
-  // writing the tag and type for each element, the entire array is encoded as
-  // a single length-delimited blob.
-  optional bool packed = 2;
-
-
-  // Is this field deprecated?
-  // Depending on the target platform, this can emit Deprecated annotations
-  // for accessors, or it will be completely ignored; in the very least, this
-  // is a formalization for deprecating fields.
-  optional bool deprecated = 3 [default=false];
-
-  // EXPERIMENTAL.  DO NOT USE.
-  // For "map" fields, the name of the field in the enclosed type that
-  // is the key for this map.  For example, suppose we have:
-  //   message Item {
-  //     required string name = 1;
-  //     required string value = 2;
-  //   }
-  //   message Config {
-  //     repeated Item items = 1 [experimental_map_key="name"];
-  //   }
-  // In this situation, the map key for Item will be set to "name".
-  // TODO: Fully-implement this, then remove the "experimental_" prefix.
-  optional string experimental_map_key = 9;
-
-  // The parser stores options it doesn't recognize here. See above.
-  repeated UninterpretedOption uninterpreted_option = 999;
-
-  // Clients can define custom options in extensions of this message. See above.
-  extensions 1000 to max;
-}
-
-message EnumOptions {
-
-  // The parser stores options it doesn't recognize here. See above.
-  repeated UninterpretedOption uninterpreted_option = 999;
-
-  // Clients can define custom options in extensions of this message. See above.
-  extensions 1000 to max;
-}
-
-message EnumValueOptions {
-  // The parser stores options it doesn't recognize here. See above.
-  repeated UninterpretedOption uninterpreted_option = 999;
-
-  // Clients can define custom options in extensions of this message. See above.
-  extensions 1000 to max;
-}
-
-message ServiceOptions {
-
-  // Note:  Field numbers 1 through 32 are reserved for Google's internal RPC
-  //   framework.  We apologize for hoarding these numbers to ourselves, but
-  //   we were already using them long before we decided to release Protocol
-  //   Buffers.
-
-  // The parser stores options it doesn't recognize here. See above.
-  repeated UninterpretedOption uninterpreted_option = 999;
-
-  // Clients can define custom options in extensions of this message. See above.
-  extensions 1000 to max;
-}
-
-message MethodOptions {
-
-  // Note:  Field numbers 1 through 32 are reserved for Google's internal RPC
-  //   framework.  We apologize for hoarding these numbers to ourselves, but
-  //   we were already using them long before we decided to release Protocol
-  //   Buffers.
-
-  // The parser stores options it doesn't recognize here. See above.
-  repeated UninterpretedOption uninterpreted_option = 999;
-
-  // Clients can define custom options in extensions of this message. See above.
-  extensions 1000 to max;
-}
-
-// A message representing a option the parser does not recognize. This only
-// appears in options protos created by the compiler::Parser class.
-// DescriptorPool resolves these when building Descriptor objects. Therefore,
-// options protos in descriptor objects (e.g. returned by Descriptor::options(),
-// or produced by Descriptor::CopyTo()) will never have UninterpretedOptions
-// in them.
-message UninterpretedOption {
-  // The name of the uninterpreted option.  Each string represents a segment in
-  // a dot-separated name.  is_extension is true iff a segment represents an
-  // extension (denoted with parentheses in options specs in .proto files).
-  // E.g.,{ ["foo", false], ["bar.baz", true], ["qux", false] } represents
-  // "foo.(bar.baz).qux".
-  message NamePart {
-    required string name_part = 1;
-    required bool is_extension = 2;
-  }
-  repeated NamePart name = 2;
-
-  // The value of the uninterpreted option, in whatever type the tokenizer
-  // identified it as during parsing. Exactly one of these should be set.
-  optional string identifier_value = 3;
-  optional uint64 positive_int_value = 4;
-  optional int64 negative_int_value = 5;
-  optional double double_value = 6;
-  optional bytes string_value = 7;
-  optional string aggregate_value = 8;
-}
-
-// ===================================================================
-// Optional source code info
-
-// Encapsulates information about the original source file from which a
-// FileDescriptorProto was generated.
-message SourceCodeInfo {
-  // A Location identifies a piece of source code in a .proto file which
-  // corresponds to a particular definition.  This information is intended
-  // to be useful to IDEs, code indexers, documentation generators, and similar
-  // tools.
-  //
-  // For example, say we have a file like:
-  //   message Foo {
-  //     optional string foo = 1;
-  //   }
-  // Let's look at just the field definition:
-  //   optional string foo = 1;
-  //   ^       ^^     ^^  ^  ^^^
-  //   a       bc     de  f  ghi
-  // We have the following locations:
-  //   span   path               represents
-  //   [a,i)  [ 4, 0, 2, 0 ]     The whole field definition.
-  //   [a,b)  [ 4, 0, 2, 0, 4 ]  The label (optional).
-  //   [c,d)  [ 4, 0, 2, 0, 5 ]  The type (string).
-  //   [e,f)  [ 4, 0, 2, 0, 1 ]  The name (foo).
-  //   [g,h)  [ 4, 0, 2, 0, 3 ]  The number (1).
-  //
-  // Notes:
-  // - A location may refer to a repeated field itself (i.e. not to any
-  //   particular index within it).  This is used whenever a set of elements are
-  //   logically enclosed in a single code segment.  For example, an entire
-  //   extend block (possibly containing multiple extension definitions) will
-  //   have an outer location whose path refers to the "extensions" repeated
-  //   field without an index.
-  // - Multiple locations may have the same path.  This happens when a single
-  //   logical declaration is spread out across multiple places.  The most
-  //   obvious example is the "extend" block again -- there may be multiple
-  //   extend blocks in the same scope, each of which will have the same path.
-  // - A location's span is not always a subset of its parent's span.  For
-  //   example, the "extendee" of an extension declaration appears at the
-  //   beginning of the "extend" block and is shared by all extensions within
-  //   the block.
-  // - Just because a location's span is a subset of some other location's span
-  //   does not mean that it is a descendent.  For example, a "group" defines
-  //   both a type and a field in a single declaration.  Thus, the locations
-  //   corresponding to the type and field and their components will overlap.
-  // - Code which tries to interpret locations should probably be designed to
-  //   ignore those that it doesn't understand, as more types of locations could
-  //   be recorded in the future.
-  repeated Location location = 1;
-  message Location {
-    // Identifies which part of the FileDescriptorProto was defined at this
-    // location.
-    //
-    // Each element is a field number or an index.  They form a path from
-    // the root FileDescriptorProto to the place where the definition.  For
-    // example, this path:
-    //   [ 4, 3, 2, 7, 1 ]
-    // refers to:
-    //   file.message_type(3)  // 4, 3
-    //       .field(7)         // 2, 7
-    //       .name()           // 1
-    // This is because FileDescriptorProto.message_type has field number 4:
-    //   repeated DescriptorProto message_type = 4;
-    // and DescriptorProto.field has field number 2:
-    //   repeated FieldDescriptorProto field = 2;
-    // and FieldDescriptorProto.name has field number 1:
-    //   optional string name = 1;
-    //
-    // Thus, the above path gives the location of a field name.  If we removed
-    // the last element:
-    //   [ 4, 3, 2, 7 ]
-    // this path refers to the whole field declaration (from the beginning
-    // of the label to the terminating semicolon).
-    repeated int32 path = 1 [packed=true];
-
-    // Always has exactly three or four elements: start line, start column,
-    // end line (optional, otherwise assumed same as start line), end column.
-    // These are packed into a single field for efficiency.  Note that line
-    // and column numbers are zero-based -- typically you will want to add
-    // 1 to each before displaying to a user.
-    repeated int32 span = 2 [packed=true];
-
-    // TODO(kenton):  Record comments appearing before and after the
-    // declaration.
-  }
-}

+ 0 - 636
csharp/protos/google/protobuf/unittest.proto

@@ -1,636 +0,0 @@
-// Additional options required for C# generation. File from copyright
-// line onwards is as per original distribution.
-import "google/protobuf/csharp_options.proto";
-option (google.protobuf.csharp_file_options).namespace = "Google.ProtocolBuffers.TestProtos";
-option (google.protobuf.csharp_file_options).umbrella_classname = "UnitTestProtoFile";
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-// Author: kenton@google.com (Kenton Varda)
-//  Based on original Protocol Buffers design by
-//  Sanjay Ghemawat, Jeff Dean, and others.
-//
-// A proto file we will use for unit testing.
-
-
-// Some generic_services option(s) added automatically.
-// See:  http://go/proto2-generic-services-default
-option cc_generic_services = true;     // auto-added
-option java_generic_services = true;   // auto-added
-option py_generic_services = true;     // auto-added
-
-import "google/protobuf/unittest_import.proto";
-
-// We don't put this in a package within proto2 because we need to make sure
-// that the generated code doesn't depend on being in the proto2 namespace.
-// In test_util.h we do "using namespace unittest = protobuf_unittest".
-package protobuf_unittest;
-
-// Protos optimized for SPEED use a strict superset of the generated code
-// of equivalent ones optimized for CODE_SIZE, so we should optimize all our
-// tests for speed unless explicitly testing code size optimization.
-option optimize_for = SPEED;
-
-option java_outer_classname = "UnittestProto";
-
-// This proto includes every type of field in both singular and repeated
-// forms.
-message TestAllTypes {
-  message NestedMessage {
-    // The field name "b" fails to compile in proto1 because it conflicts with
-    // a local variable named "b" in one of the generated methods.  Doh.
-    // This file needs to compile in proto1 to test backwards-compatibility.
-    optional int32 bb = 1;
-  }
-
-  enum NestedEnum {
-    FOO = 1;
-    BAR = 2;
-    BAZ = 3;
-  }
-
-  // Singular
-  optional    int32 optional_int32    =  1;
-  optional    int64 optional_int64    =  2;
-  optional   uint32 optional_uint32   =  3;
-  optional   uint64 optional_uint64   =  4;
-  optional   sint32 optional_sint32   =  5;
-  optional   sint64 optional_sint64   =  6;
-  optional  fixed32 optional_fixed32  =  7;
-  optional  fixed64 optional_fixed64  =  8;
-  optional sfixed32 optional_sfixed32 =  9;
-  optional sfixed64 optional_sfixed64 = 10;
-  optional    float optional_float    = 11;
-  optional   double optional_double   = 12;
-  optional     bool optional_bool     = 13;
-  optional   string optional_string   = 14;
-  optional    bytes optional_bytes    = 15;
-
-  optional group OptionalGroup = 16 {
-    optional int32 a = 17;
-  }
-
-  optional NestedMessage                        optional_nested_message  = 18;
-  optional ForeignMessage                       optional_foreign_message = 19;
-  optional protobuf_unittest_import.ImportMessage optional_import_message  = 20;
-
-  optional NestedEnum                           optional_nested_enum     = 21;
-  optional ForeignEnum                          optional_foreign_enum    = 22;
-  optional protobuf_unittest_import.ImportEnum    optional_import_enum     = 23;
-
-  optional string optional_string_piece = 24 [ctype=STRING_PIECE];
-  optional string optional_cord = 25 [ctype=CORD];
-
-  // Repeated
-  repeated    int32 repeated_int32    = 31;
-  repeated    int64 repeated_int64    = 32;
-  repeated   uint32 repeated_uint32   = 33;
-  repeated   uint64 repeated_uint64   = 34;
-  repeated   sint32 repeated_sint32   = 35;
-  repeated   sint64 repeated_sint64   = 36;
-  repeated  fixed32 repeated_fixed32  = 37;
-  repeated  fixed64 repeated_fixed64  = 38;
-  repeated sfixed32 repeated_sfixed32 = 39;
-  repeated sfixed64 repeated_sfixed64 = 40;
-  repeated    float repeated_float    = 41;
-  repeated   double repeated_double   = 42;
-  repeated     bool repeated_bool     = 43;
-  repeated   string repeated_string   = 44;
-  repeated    bytes repeated_bytes    = 45;
-
-  repeated group RepeatedGroup = 46 {
-    optional int32 a = 47;
-  }
-
-  repeated NestedMessage                        repeated_nested_message  = 48;
-  repeated ForeignMessage                       repeated_foreign_message = 49;
-  repeated protobuf_unittest_import.ImportMessage repeated_import_message  = 50;
-
-  repeated NestedEnum                           repeated_nested_enum     = 51;
-  repeated ForeignEnum                          repeated_foreign_enum    = 52;
-  repeated protobuf_unittest_import.ImportEnum    repeated_import_enum     = 53;
-
-  repeated string repeated_string_piece = 54 [ctype=STRING_PIECE];
-  repeated string repeated_cord = 55 [ctype=CORD];
-
-  // Singular with defaults
-  optional    int32 default_int32    = 61 [default =  41    ];
-  optional    int64 default_int64    = 62 [default =  42    ];
-  optional   uint32 default_uint32   = 63 [default =  43    ];
-  optional   uint64 default_uint64   = 64 [default =  44    ];
-  optional   sint32 default_sint32   = 65 [default = -45    ];
-  optional   sint64 default_sint64   = 66 [default =  46    ];
-  optional  fixed32 default_fixed32  = 67 [default =  47    ];
-  optional  fixed64 default_fixed64  = 68 [default =  48    ];
-  optional sfixed32 default_sfixed32 = 69 [default =  49    ];
-  optional sfixed64 default_sfixed64 = 70 [default = -50    ];
-  optional    float default_float    = 71 [default =  51.5  ];
-  optional   double default_double   = 72 [default =  52e3  ];
-  optional     bool default_bool     = 73 [default = true   ];
-  optional   string default_string   = 74 [default = "hello"];
-  optional    bytes default_bytes    = 75 [default = "world"];
-
-  optional NestedEnum  default_nested_enum  = 81 [default = BAR        ];
-  optional ForeignEnum default_foreign_enum = 82 [default = FOREIGN_BAR];
-  optional protobuf_unittest_import.ImportEnum
-      default_import_enum = 83 [default = IMPORT_BAR];
-
-  optional string default_string_piece = 84 [ctype=STRING_PIECE,default="abc"];
-  optional string default_cord = 85 [ctype=CORD,default="123"];
-}
-
-message TestDeprecatedFields {
-  optional int32 deprecated_int32 = 1 [deprecated=true];
-}
-
-// Define these after TestAllTypes to make sure the compiler can handle
-// that.
-message ForeignMessage {
-  optional int32 c = 1;
-}
-
-enum ForeignEnum {
-  FOREIGN_FOO = 4;
-  FOREIGN_BAR = 5;
-  FOREIGN_BAZ = 6;
-}
-
-message TestAllExtensions {
-  extensions 1 to max;
-}
-
-extend TestAllExtensions {
-  // Singular
-  optional    int32 optional_int32_extension    =  1;
-  optional    int64 optional_int64_extension    =  2;
-  optional   uint32 optional_uint32_extension   =  3;
-  optional   uint64 optional_uint64_extension   =  4;
-  optional   sint32 optional_sint32_extension   =  5;
-  optional   sint64 optional_sint64_extension   =  6;
-  optional  fixed32 optional_fixed32_extension  =  7;
-  optional  fixed64 optional_fixed64_extension  =  8;
-  optional sfixed32 optional_sfixed32_extension =  9;
-  optional sfixed64 optional_sfixed64_extension = 10;
-  optional    float optional_float_extension    = 11;
-  optional   double optional_double_extension   = 12;
-  optional     bool optional_bool_extension     = 13;
-  optional   string optional_string_extension   = 14;
-  optional    bytes optional_bytes_extension    = 15;
-
-  optional group OptionalGroup_extension = 16 {
-    optional int32 a = 17;
-  }
-
-  optional TestAllTypes.NestedMessage optional_nested_message_extension = 18;
-  optional ForeignMessage optional_foreign_message_extension = 19;
-  optional protobuf_unittest_import.ImportMessage
-    optional_import_message_extension = 20;
-
-  optional TestAllTypes.NestedEnum optional_nested_enum_extension = 21;
-  optional ForeignEnum optional_foreign_enum_extension = 22;
-  optional protobuf_unittest_import.ImportEnum
-    optional_import_enum_extension = 23;
-
-  optional string optional_string_piece_extension = 24 [ctype=STRING_PIECE];
-  optional string optional_cord_extension = 25 [ctype=CORD];
-
-  // Repeated
-  repeated    int32 repeated_int32_extension    = 31;
-  repeated    int64 repeated_int64_extension    = 32;
-  repeated   uint32 repeated_uint32_extension   = 33;
-  repeated   uint64 repeated_uint64_extension   = 34;
-  repeated   sint32 repeated_sint32_extension   = 35;
-  repeated   sint64 repeated_sint64_extension   = 36;
-  repeated  fixed32 repeated_fixed32_extension  = 37;
-  repeated  fixed64 repeated_fixed64_extension  = 38;
-  repeated sfixed32 repeated_sfixed32_extension = 39;
-  repeated sfixed64 repeated_sfixed64_extension = 40;
-  repeated    float repeated_float_extension    = 41;
-  repeated   double repeated_double_extension   = 42;
-  repeated     bool repeated_bool_extension     = 43;
-  repeated   string repeated_string_extension   = 44;
-  repeated    bytes repeated_bytes_extension    = 45;
-
-  repeated group RepeatedGroup_extension = 46 {
-    optional int32 a = 47;
-  }
-
-  repeated TestAllTypes.NestedMessage repeated_nested_message_extension = 48;
-  repeated ForeignMessage repeated_foreign_message_extension = 49;
-  repeated protobuf_unittest_import.ImportMessage
-    repeated_import_message_extension = 50;
-
-  repeated TestAllTypes.NestedEnum repeated_nested_enum_extension = 51;
-  repeated ForeignEnum repeated_foreign_enum_extension = 52;
-  repeated protobuf_unittest_import.ImportEnum
-    repeated_import_enum_extension = 53;
-
-  repeated string repeated_string_piece_extension = 54 [ctype=STRING_PIECE];
-  repeated string repeated_cord_extension = 55 [ctype=CORD];
-
-  // Singular with defaults
-  optional    int32 default_int32_extension    = 61 [default =  41    ];
-  optional    int64 default_int64_extension    = 62 [default =  42    ];
-  optional   uint32 default_uint32_extension   = 63 [default =  43    ];
-  optional   uint64 default_uint64_extension   = 64 [default =  44    ];
-  optional   sint32 default_sint32_extension   = 65 [default = -45    ];
-  optional   sint64 default_sint64_extension   = 66 [default =  46    ];
-  optional  fixed32 default_fixed32_extension  = 67 [default =  47    ];
-  optional  fixed64 default_fixed64_extension  = 68 [default =  48    ];
-  optional sfixed32 default_sfixed32_extension = 69 [default =  49    ];
-  optional sfixed64 default_sfixed64_extension = 70 [default = -50    ];
-  optional    float default_float_extension    = 71 [default =  51.5  ];
-  optional   double default_double_extension   = 72 [default =  52e3  ];
-  optional     bool default_bool_extension     = 73 [default = true   ];
-  optional   string default_string_extension   = 74 [default = "hello"];
-  optional    bytes default_bytes_extension    = 75 [default = "world"];
-
-  optional TestAllTypes.NestedEnum
-    default_nested_enum_extension = 81 [default = BAR];
-  optional ForeignEnum
-    default_foreign_enum_extension = 82 [default = FOREIGN_BAR];
-  optional protobuf_unittest_import.ImportEnum
-    default_import_enum_extension = 83 [default = IMPORT_BAR];
-
-  optional string default_string_piece_extension = 84 [ctype=STRING_PIECE,
-                                                       default="abc"];
-  optional string default_cord_extension = 85 [ctype=CORD, default="123"];
-}
-
-message TestNestedExtension {
-  extend TestAllExtensions {
-    // Check for bug where string extensions declared in tested scope did not
-    // compile.
-    optional string test = 1002 [default="test"];
-  }
-}
-
-// We have separate messages for testing required fields because it's
-// annoying to have to fill in required fields in TestProto in order to
-// do anything with it.  Note that we don't need to test every type of
-// required filed because the code output is basically identical to
-// optional fields for all types.
-message TestRequired {
-  required int32 a = 1;
-  optional int32 dummy2 = 2;
-  required int32 b = 3;
-
-  extend TestAllExtensions {
-    optional TestRequired single = 1000;
-    repeated TestRequired multi  = 1001;
-  }
-
-  // Pad the field count to 32 so that we can test that IsInitialized()
-  // properly checks multiple elements of has_bits_.
-  optional int32 dummy4  =  4;
-  optional int32 dummy5  =  5;
-  optional int32 dummy6  =  6;
-  optional int32 dummy7  =  7;
-  optional int32 dummy8  =  8;
-  optional int32 dummy9  =  9;
-  optional int32 dummy10 = 10;
-  optional int32 dummy11 = 11;
-  optional int32 dummy12 = 12;
-  optional int32 dummy13 = 13;
-  optional int32 dummy14 = 14;
-  optional int32 dummy15 = 15;
-  optional int32 dummy16 = 16;
-  optional int32 dummy17 = 17;
-  optional int32 dummy18 = 18;
-  optional int32 dummy19 = 19;
-  optional int32 dummy20 = 20;
-  optional int32 dummy21 = 21;
-  optional int32 dummy22 = 22;
-  optional int32 dummy23 = 23;
-  optional int32 dummy24 = 24;
-  optional int32 dummy25 = 25;
-  optional int32 dummy26 = 26;
-  optional int32 dummy27 = 27;
-  optional int32 dummy28 = 28;
-  optional int32 dummy29 = 29;
-  optional int32 dummy30 = 30;
-  optional int32 dummy31 = 31;
-  optional int32 dummy32 = 32;
-
-  required int32 c = 33;
-}
-
-message TestRequiredForeign {
-  optional TestRequired optional_message = 1;
-  repeated TestRequired repeated_message = 2;
-  optional int32 dummy = 3;
-}
-
-// Test that we can use NestedMessage from outside TestAllTypes.
-message TestForeignNested {
-  optional TestAllTypes.NestedMessage foreign_nested = 1;
-}
-
-// TestEmptyMessage is used to test unknown field support.
-message TestEmptyMessage {
-}
-
-// Like above, but declare all field numbers as potential extensions.  No
-// actual extensions should ever be defined for this type.
-message TestEmptyMessageWithExtensions {
-  extensions 1 to max;
-}
-
-message TestMultipleExtensionRanges {
-  extensions 42;
-  extensions 4143 to 4243;
-  extensions 65536 to max;
-}
-
-// Test that really large tag numbers don't break anything.
-message TestReallyLargeTagNumber {
-  // The largest possible tag number is 2^28 - 1, since the wire format uses
-  // three bits to communicate wire type.
-  optional int32 a = 1;
-  optional int32 bb = 268435455;
-}
-
-message TestRecursiveMessage {
-  optional TestRecursiveMessage a = 1;
-  optional int32 i = 2;
-}
-
-// Test that mutual recursion works.
-message TestMutualRecursionA {
-  optional TestMutualRecursionB bb = 1;
-}
-
-message TestMutualRecursionB {
-  optional TestMutualRecursionA a = 1;
-  optional int32 optional_int32 = 2;
-}
-
-// Test that groups have disjoint field numbers from their siblings and
-// parents.  This is NOT possible in proto1; only proto2.  When attempting
-// to compile with proto1, this will emit an error; so we only include it
-// in protobuf_unittest_proto.
-message TestDupFieldNumber {                        // NO_PROTO1
-  optional int32 a = 1;                             // NO_PROTO1
-  optional group Foo = 2 { optional int32 a = 1; }  // NO_PROTO1
-  optional group Bar = 3 { optional int32 a = 1; }  // NO_PROTO1
-}                                                   // NO_PROTO1
-
-
-// Needed for a Python test.
-message TestNestedMessageHasBits {
-  message NestedMessage {
-    repeated int32 nestedmessage_repeated_int32 = 1;
-    repeated ForeignMessage nestedmessage_repeated_foreignmessage = 2;
-  }
-  optional NestedMessage optional_nested_message = 1;
-}
-
-
-// Test an enum that has multiple values with the same number.
-enum TestEnumWithDupValue {
-  FOO1 = 1;
-  BAR1 = 2;
-  BAZ = 3;
-  FOO2 = 1;
-  BAR2 = 2;
-}
-
-// Test an enum with large, unordered values.
-enum TestSparseEnum {
-  SPARSE_A = 123;
-  SPARSE_B = 62374;
-  SPARSE_C = 12589234;
-  SPARSE_D = -15;
-  SPARSE_E = -53452;
-  SPARSE_F = 0;
-  SPARSE_G = 2;
-}
-
-// Test message with CamelCase field names.  This violates Protocol Buffer
-// standard style.
-message TestCamelCaseFieldNames {
-  optional int32 PrimitiveField = 1;
-  optional string StringField = 2;
-  optional ForeignEnum EnumField = 3;
-  optional ForeignMessage MessageField = 4;
-  optional string StringPieceField = 5 [ctype=STRING_PIECE];
-  optional string CordField = 6 [ctype=CORD];
-
-  repeated int32 RepeatedPrimitiveField = 7;
-  repeated string RepeatedStringField = 8;
-  repeated ForeignEnum RepeatedEnumField = 9;
-  repeated ForeignMessage RepeatedMessageField = 10;
-  repeated string RepeatedStringPieceField = 11 [ctype=STRING_PIECE];
-  repeated string RepeatedCordField = 12 [ctype=CORD];
-}
-
-
-// We list fields out of order, to ensure that we're using field number and not
-// field index to determine serialization order.
-message TestFieldOrderings {
-  optional string my_string = 11;
-  extensions 2 to 10;
-  optional int64 my_int = 1;
-  extensions 12 to 100;
-  optional float my_float = 101;
-}
-
-
-extend TestFieldOrderings {
-  optional string my_extension_string = 50;
-  optional int32 my_extension_int = 5;
-}
-
-
-message TestExtremeDefaultValues {
-  optional bytes escaped_bytes = 1 [default = "\0\001\a\b\f\n\r\t\v\\\'\"\xfe"];
-  optional uint32 large_uint32 = 2 [default = 0xFFFFFFFF];
-  optional uint64 large_uint64 = 3 [default = 0xFFFFFFFFFFFFFFFF];
-  optional  int32 small_int32  = 4 [default = -0x7FFFFFFF];
-  optional  int64 small_int64  = 5 [default = -0x7FFFFFFFFFFFFFFF];
-
-  // The default value here is UTF-8 for "\u1234".  (We could also just type
-  // the UTF-8 text directly into this text file rather than escape it, but
-  // lots of people use editors that would be confused by this.)
-  optional string utf8_string = 6 [default = "\341\210\264"];
-
-  // Tests for single-precision floating-point values.
-  optional float zero_float = 7 [default = 0];
-  optional float one_float = 8 [default = 1];
-  optional float small_float = 9 [default = 1.5];
-  optional float negative_one_float = 10 [default = -1];
-  optional float negative_float = 11 [default = -1.5];
-  // Using exponents
-  optional float large_float = 12 [default = 2E8];
-  optional float small_negative_float = 13 [default = -8e-28];
-
-  // Text for nonfinite floating-point values.
-  optional double inf_double = 14 [default = inf];
-  optional double neg_inf_double = 15 [default = -inf];
-  optional double nan_double = 16 [default = nan];
-  optional float inf_float = 17 [default = inf];
-  optional float neg_inf_float = 18 [default = -inf];
-  optional float nan_float = 19 [default = nan];
-
-  // Tests for C++ trigraphs.
-  // Trigraphs should be escaped in C++ generated files, but they should not be
-  // escaped for other languages.
-  // Note that in .proto file, "\?" is a valid way to escape ? in string
-  // literals.
-  optional string cpp_trigraph = 20 [default = "? \? ?? \?? \??? ??/ ?\?-"];
-}
-
-message SparseEnumMessage {
-  optional TestSparseEnum sparse_enum = 1;
-}
-
-// Test String and Bytes: string is for valid UTF-8 strings
-message OneString {
-  optional string data = 1;
-}
-
-message OneBytes {
-  optional bytes data = 1;
-}
-
-// Test messages for packed fields
-
-message TestPackedTypes {
-  repeated    int32 packed_int32    =  90 [packed = true];
-  repeated    int64 packed_int64    =  91 [packed = true];
-  repeated   uint32 packed_uint32   =  92 [packed = true];
-  repeated   uint64 packed_uint64   =  93 [packed = true];
-  repeated   sint32 packed_sint32   =  94 [packed = true];
-  repeated   sint64 packed_sint64   =  95 [packed = true];
-  repeated  fixed32 packed_fixed32  =  96 [packed = true];
-  repeated  fixed64 packed_fixed64  =  97 [packed = true];
-  repeated sfixed32 packed_sfixed32 =  98 [packed = true];
-  repeated sfixed64 packed_sfixed64 =  99 [packed = true];
-  repeated    float packed_float    = 100 [packed = true];
-  repeated   double packed_double   = 101 [packed = true];
-  repeated     bool packed_bool     = 102 [packed = true];
-  repeated ForeignEnum packed_enum  = 103 [packed = true];
-}
-
-// A message with the same fields as TestPackedTypes, but without packing. Used
-// to test packed <-> unpacked wire compatibility.
-message TestUnpackedTypes {
-  repeated    int32 unpacked_int32    =  90 [packed = false];
-  repeated    int64 unpacked_int64    =  91 [packed = false];
-  repeated   uint32 unpacked_uint32   =  92 [packed = false];
-  repeated   uint64 unpacked_uint64   =  93 [packed = false];
-  repeated   sint32 unpacked_sint32   =  94 [packed = false];
-  repeated   sint64 unpacked_sint64   =  95 [packed = false];
-  repeated  fixed32 unpacked_fixed32  =  96 [packed = false];
-  repeated  fixed64 unpacked_fixed64  =  97 [packed = false];
-  repeated sfixed32 unpacked_sfixed32 =  98 [packed = false];
-  repeated sfixed64 unpacked_sfixed64 =  99 [packed = false];
-  repeated    float unpacked_float    = 100 [packed = false];
-  repeated   double unpacked_double   = 101 [packed = false];
-  repeated     bool unpacked_bool     = 102 [packed = false];
-  repeated ForeignEnum unpacked_enum  = 103 [packed = false];
-}
-
-message TestPackedExtensions {
-  extensions 1 to max;
-}
-
-extend TestPackedExtensions {
-  repeated    int32 packed_int32_extension    =  90 [packed = true];
-  repeated    int64 packed_int64_extension    =  91 [packed = true];
-  repeated   uint32 packed_uint32_extension   =  92 [packed = true];
-  repeated   uint64 packed_uint64_extension   =  93 [packed = true];
-  repeated   sint32 packed_sint32_extension   =  94 [packed = true];
-  repeated   sint64 packed_sint64_extension   =  95 [packed = true];
-  repeated  fixed32 packed_fixed32_extension  =  96 [packed = true];
-  repeated  fixed64 packed_fixed64_extension  =  97 [packed = true];
-  repeated sfixed32 packed_sfixed32_extension =  98 [packed = true];
-  repeated sfixed64 packed_sfixed64_extension =  99 [packed = true];
-  repeated    float packed_float_extension    = 100 [packed = true];
-  repeated   double packed_double_extension   = 101 [packed = true];
-  repeated     bool packed_bool_extension     = 102 [packed = true];
-  repeated ForeignEnum packed_enum_extension  = 103 [packed = true];
-}
-
-// Used by ExtensionSetTest/DynamicExtensions.  The test actually builds
-// a set of extensions to TestAllExtensions dynamically, based on the fields
-// of this message type.
-message TestDynamicExtensions {
-  enum DynamicEnumType {
-    DYNAMIC_FOO = 2200;
-    DYNAMIC_BAR = 2201;
-    DYNAMIC_BAZ = 2202;
-  }
-  message DynamicMessageType {
-    optional int32 dynamic_field = 2100;
-  }
-
-  optional fixed32 scalar_extension = 2000;
-  optional ForeignEnum enum_extension = 2001;
-  optional DynamicEnumType dynamic_enum_extension = 2002;
-
-  optional ForeignMessage message_extension = 2003;
-  optional DynamicMessageType dynamic_message_extension = 2004;
-
-  repeated string repeated_extension = 2005;
-  repeated sint32 packed_extension = 2006 [packed = true];
-}
-
-message TestRepeatedScalarDifferentTagSizes {
-  // Parsing repeated fixed size values used to fail. This message needs to be
-  // used in order to get a tag of the right size; all of the repeated fields
-  // in TestAllTypes didn't trigger the check.
-  repeated fixed32 repeated_fixed32 = 12;
-  // Check for a varint type, just for good measure.
-  repeated int32   repeated_int32   = 13;
-
-  // These have two-byte tags.
-  repeated fixed64 repeated_fixed64 = 2046;
-  repeated int64   repeated_int64   = 2047;
-
-  // Three byte tags.
-  repeated float   repeated_float   = 262142;
-  repeated uint64  repeated_uint64  = 262143;
-}
-
-
-// Test that RPC services work.
-message FooRequest  {}
-message FooResponse {}
-
-service TestService {
-  rpc Foo(FooRequest) returns (FooResponse);
-  rpc Bar(BarRequest) returns (BarResponse);
-}
-
-
-message BarRequest  {}
-message BarResponse {}

+ 0 - 52
csharp/protos/google/protobuf/unittest_csharp_options.proto

@@ -1,52 +0,0 @@
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-// Author: jonskeet@google.com (Jon Skeet)
-//
-// A proto file for unit testing the custom C# options
-
-import "google/protobuf/csharp_options.proto";
-option (google.protobuf.csharp_file_options).namespace = "Google.ProtocolBuffers.TestProtos";
-option (google.protobuf.csharp_file_options).umbrella_classname = "UnitTestCSharpOptionsProtoFile";
-//option (google.protobuf.csharp_file_options).nest_classes = true;
-
-package protobuf_unittest;
-
-message OptionsMessage {
-
-  // Will be left as Normal
-  optional string normal = 1;
-
-  // Will be converted to OptionsMessage_
-  optional string options_message = 2;
-  
-  // Will be converted to CustomName
-  optional string customized = 3 [(google.protobuf.csharp_field_options).property_name = "CustomName"];
-}

+ 0 - 372
csharp/protos/google/protobuf/unittest_custom_options.proto

@@ -1,372 +0,0 @@
-// Additional options required for C# generation. File from copyright
-// line onwards is as per original distribution.
-import "google/protobuf/csharp_options.proto";
-option (google.protobuf.csharp_file_options).namespace = "Google.ProtocolBuffers.TestProtos";
-option (google.protobuf.csharp_file_options).umbrella_classname = "UnitTestCustomOptionsProtoFile";
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-// Author: benjy@google.com (Benjy Weinberger)
-//  Based on original Protocol Buffers design by
-//  Sanjay Ghemawat, Jeff Dean, and others.
-//
-// A proto file used to test the "custom options" feature of proto2.
-
-
-// Some generic_services option(s) added automatically.
-// See:  http://go/proto2-generic-services-default
-option cc_generic_services = true;     // auto-added
-option java_generic_services = true;   // auto-added
-option py_generic_services = true;
-
-// A custom file option (defined below).
-option (file_opt1) = 9876543210;
-
-import "google/protobuf/descriptor.proto";
-
-// We don't put this in a package within proto2 because we need to make sure
-// that the generated code doesn't depend on being in the proto2 namespace.
-package protobuf_unittest;
-
-
-// Some simple test custom options of various types.
-
-extend google.protobuf.FileOptions {
-  optional uint64 file_opt1 = 7736974;
-}
-
-extend google.protobuf.MessageOptions {
-  optional int32 message_opt1 = 7739036;
-}
-
-extend google.protobuf.FieldOptions {
-  optional fixed64 field_opt1 = 7740936;
-  // This is useful for testing that we correctly register default values for
-  // extension options.
-  optional int32 field_opt2 = 7753913 [default=42];
-}
-
-extend google.protobuf.EnumOptions {
-  optional sfixed32 enum_opt1 = 7753576;
-}
-
-extend google.protobuf.EnumValueOptions {
-  optional int32 enum_value_opt1 = 1560678;
-}
-
-extend google.protobuf.ServiceOptions {
-  optional sint64 service_opt1 = 7887650;
-}
-
-enum MethodOpt1 {
-  METHODOPT1_VAL1 = 1;
-  METHODOPT1_VAL2 = 2;
-}
-
-extend google.protobuf.MethodOptions {
-  optional MethodOpt1 method_opt1 = 7890860;
-}
-
-// A test message with custom options at all possible locations (and also some
-// regular options, to make sure they interact nicely).
-message TestMessageWithCustomOptions {
-  option message_set_wire_format = false;
-
-  option (message_opt1) = -56;
-
-  optional string field1 = 1 [ctype=CORD,
-                              (field_opt1)=8765432109];
-
-  enum AnEnum {
-    option (enum_opt1) = -789;
-
-    ANENUM_VAL1 = 1;
-    ANENUM_VAL2 = 2 [(enum_value_opt1) = 123];
-  }
-}
-
-
-// A test RPC service with custom options at all possible locations (and also
-// some regular options, to make sure they interact nicely).
-message CustomOptionFooRequest {
-}
-
-message CustomOptionFooResponse {
-}
-
-service TestServiceWithCustomOptions {
-  option (service_opt1) = -9876543210;
-
-  rpc Foo(CustomOptionFooRequest) returns (CustomOptionFooResponse) {
-    option (method_opt1) = METHODOPT1_VAL2;
-  }
-}
-
-
-
-// Options of every possible field type, so we can test them all exhaustively.
-
-message DummyMessageContainingEnum {
-  enum TestEnumType {
-    TEST_OPTION_ENUM_TYPE1 = 22;
-    TEST_OPTION_ENUM_TYPE2 = -23;
-  }
-}
-
-message DummyMessageInvalidAsOptionType {
-}
-
-extend google.protobuf.MessageOptions {
-  optional         bool     bool_opt = 7706090;
-  optional        int32    int32_opt = 7705709;
-  optional        int64    int64_opt = 7705542;
-  optional       uint32   uint32_opt = 7704880;
-  optional       uint64   uint64_opt = 7702367;
-  optional       sint32   sint32_opt = 7701568;
-  optional       sint64   sint64_opt = 7700863;
-  optional      fixed32  fixed32_opt = 7700307;
-  optional      fixed64  fixed64_opt = 7700194;
-  optional     sfixed32 sfixed32_opt = 7698645;
-  optional     sfixed64 sfixed64_opt = 7685475;
-  optional        float    float_opt = 7675390;
-  optional       double   double_opt = 7673293;
-  optional       string   string_opt = 7673285;
-  optional        bytes    bytes_opt = 7673238;
-  optional DummyMessageContainingEnum.TestEnumType enum_opt = 7673233;
-  optional DummyMessageInvalidAsOptionType message_type_opt = 7665967;
-}
-
-message CustomOptionMinIntegerValues {
-  option     (bool_opt) = false;
-  option    (int32_opt) = -0x80000000;
-  option    (int64_opt) = -0x8000000000000000;
-  option   (uint32_opt) = 0;
-  option   (uint64_opt) = 0;
-  option   (sint32_opt) = -0x80000000;
-  option   (sint64_opt) = -0x8000000000000000;
-  option  (fixed32_opt) = 0;
-  option  (fixed64_opt) = 0;
-  option (sfixed32_opt) = -0x80000000;
-  option (sfixed64_opt) = -0x8000000000000000;
-}
-
-message CustomOptionMaxIntegerValues {
-  option     (bool_opt) = true;
-  option    (int32_opt) = 0x7FFFFFFF;
-  option    (int64_opt) = 0x7FFFFFFFFFFFFFFF;
-  option   (uint32_opt) = 0xFFFFFFFF;
-  option   (uint64_opt) = 0xFFFFFFFFFFFFFFFF;
-  option   (sint32_opt) = 0x7FFFFFFF;
-  option   (sint64_opt) = 0x7FFFFFFFFFFFFFFF;
-  option  (fixed32_opt) = 0xFFFFFFFF;
-  option  (fixed64_opt) = 0xFFFFFFFFFFFFFFFF;
-  option (sfixed32_opt) = 0x7FFFFFFF;
-  option (sfixed64_opt) = 0x7FFFFFFFFFFFFFFF;
-}
-
-message CustomOptionOtherValues {
-  option  (int32_opt) = -100;  // To test sign-extension.
-  option  (float_opt) = 12.3456789;
-  option (double_opt) = 1.234567890123456789;
-  option (string_opt) = "Hello, \"World\"";
-  option  (bytes_opt) = "Hello\0World";
-  option   (enum_opt) = TEST_OPTION_ENUM_TYPE2;
-}
-
-message SettingRealsFromPositiveInts {
-  option  (float_opt) = 12;
-  option (double_opt) = 154;
-}
-
-message SettingRealsFromNegativeInts {
-  option  (float_opt) = -12;
-  option  (double_opt) = -154;
-}
-
-// Options of complex message types, themselves combined and extended in
-// various ways.
-
-message ComplexOptionType1 {
-  optional int32 foo = 1;
-  optional int32 foo2 = 2;
-  optional int32 foo3 = 3;
-
-  extensions 100 to max;
-}
-
-message ComplexOptionType2 {
-  optional ComplexOptionType1 bar = 1;
-  optional int32 baz = 2;
-
-  message ComplexOptionType4 {
-    optional int32 waldo = 1;
-
-    extend google.protobuf.MessageOptions {
-      optional ComplexOptionType4 complex_opt4 = 7633546;
-    }
-  }
-
-  optional ComplexOptionType4 fred = 3;
-
-  extensions 100 to max;
-}
-
-message ComplexOptionType3 {
-  optional int32 qux = 1;
-
-  optional group ComplexOptionType5 = 2 {
-    optional int32 plugh = 3;
-  }
-}
-
-extend ComplexOptionType1 {
-  optional int32 quux = 7663707;
-  optional ComplexOptionType3 corge = 7663442;
-}
-
-extend ComplexOptionType2 {
-  optional int32 grault = 7650927;
-  optional ComplexOptionType1 garply = 7649992;
-}
-
-extend google.protobuf.MessageOptions {
-  optional protobuf_unittest.ComplexOptionType1 complex_opt1 = 7646756;
-  optional ComplexOptionType2 complex_opt2 = 7636949;
-  optional ComplexOptionType3 complex_opt3 = 7636463;
-  optional group ComplexOpt6 = 7595468 {
-    optional int32 xyzzy = 7593951;
-  }
-}
-
-// Note that we try various different ways of naming the same extension.
-message VariousComplexOptions {
-  option (.protobuf_unittest.complex_opt1).foo = 42;
-  option (protobuf_unittest.complex_opt1).(.protobuf_unittest.quux) = 324;
-  option (.protobuf_unittest.complex_opt1).(protobuf_unittest.corge).qux = 876;
-  option (complex_opt2).baz = 987;
-  option (complex_opt2).(grault) = 654;
-  option (complex_opt2).bar.foo = 743;
-  option (complex_opt2).bar.(quux) = 1999;
-  option (complex_opt2).bar.(protobuf_unittest.corge).qux = 2008;
-  option (complex_opt2).(garply).foo = 741;
-  option (complex_opt2).(garply).(.protobuf_unittest.quux) = 1998;
-  option (complex_opt2).(protobuf_unittest.garply).(corge).qux = 2121;
-  option (ComplexOptionType2.ComplexOptionType4.complex_opt4).waldo = 1971;
-  option (complex_opt2).fred.waldo = 321;
-  option (protobuf_unittest.complex_opt3).qux = 9;
-  option (complex_opt3).complexoptiontype5.plugh = 22;
-  option (complexopt6).xyzzy = 24;
-}
-
-// ------------------------------------------------------
-// Definitions for testing aggregate option parsing.
-// See descriptor_unittest.cc.
-
-message AggregateMessageSet {
-  option message_set_wire_format = true;
-  extensions 4 to max;
-}
-
-message AggregateMessageSetElement {
-  extend AggregateMessageSet {
-    optional AggregateMessageSetElement message_set_extension = 15447542;
-  }
-  optional string s = 1;
-}
-
-// A helper type used to test aggregate option parsing
-message Aggregate {
-  optional int32 i = 1;
-  optional string s = 2;
-
-  // A nested object
-  optional Aggregate sub = 3;
-
-  // To test the parsing of extensions inside aggregate values
-  optional google.protobuf.FileOptions file = 4;
-  extend google.protobuf.FileOptions {
-    optional Aggregate nested = 15476903;
-  }
-
-  // An embedded message set
-  optional AggregateMessageSet mset = 5;
-}
-
-// Allow Aggregate to be used as an option at all possible locations
-// in the .proto grammer.
-extend google.protobuf.FileOptions      { optional Aggregate fileopt    = 15478479; }
-extend google.protobuf.MessageOptions   { optional Aggregate msgopt     = 15480088; }
-extend google.protobuf.FieldOptions     { optional Aggregate fieldopt   = 15481374; }
-extend google.protobuf.EnumOptions      { optional Aggregate enumopt_renamed    = 15483218; }
-extend google.protobuf.EnumValueOptions { optional Aggregate enumvalopt = 15486921; }
-extend google.protobuf.ServiceOptions   { optional Aggregate serviceopt = 15497145; }
-extend google.protobuf.MethodOptions    { optional Aggregate methodopt  = 15512713; }
-
-// Try using AggregateOption at different points in the proto grammar
-option (fileopt) = {
-  s: 'FileAnnotation'
-  // Also test the handling of comments
-  /* of both types */ i: 100
-
-  sub { s: 'NestedFileAnnotation' }
-
-  // Include a google.protobuf.FileOptions and recursively extend it with
-  // another fileopt.
-  file {
-    [protobuf_unittest.fileopt] {
-      s:'FileExtensionAnnotation'
-    }
-  }
-
-  // A message set inside an option value
-  mset {
-    [protobuf_unittest.AggregateMessageSetElement.message_set_extension] {
-      s: 'EmbeddedMessageSetElement'
-    }
-  }
-};
-
-message AggregateMessage {
-  option (msgopt) = { i:101 s:'MessageAnnotation' };
-  optional int32 fieldname = 1 [(fieldopt) = { s:'FieldAnnotation' }];
-}
-
-service AggregateService {
-  option (serviceopt) = { s:'ServiceAnnotation' };
-  rpc Method (AggregateMessage) returns (AggregateMessage) {
-    option (methodopt) = { s:'MethodAnnotation' };
-  }
-}
-
-enum AggregateEnum {
-  option (enumopt_renamed) = { s:'EnumAnnotation' };
-  VALUE = 1 [(enumvalopt) = { s:'EnumValueAnnotation' }];
-}

+ 0 - 56
csharp/protos/google/protobuf/unittest_embed_optimize_for.proto

@@ -1,56 +0,0 @@
-// Additional options required for C# generation. File from copyright
-// line onwards is as per original distribution.
-import "google/protobuf/csharp_options.proto";
-option (google.protobuf.csharp_file_options).namespace = "Google.ProtocolBuffers.TestProtos";
-option (google.protobuf.csharp_file_options).umbrella_classname = "UnitTestEmbedOptimizeForProtoFile";
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-// Author: kenton@google.com (Kenton Varda)
-//  Based on original Protocol Buffers design by
-//  Sanjay Ghemawat, Jeff Dean, and others.
-//
-// A proto file which imports a proto file that uses optimize_for = CODE_SIZE.
-
-import "google/protobuf/unittest_optimize_for.proto";
-
-package protobuf_unittest;
-
-// We optimize for speed here, but we are importing a proto that is optimized
-// for code size.
-option optimize_for = SPEED;
-
-message TestEmbedOptimizedForSize {
-  // Test that embedding a message which has optimize_for = CODE_SIZE into
-  // one optimized for speed works.
-  optional TestOptimizedForSize optional_message = 1;
-  repeated TestOptimizedForSize repeated_message = 2;
-}

+ 0 - 43
csharp/protos/google/protobuf/unittest_empty.proto

@@ -1,43 +0,0 @@
-// Additional options required for C# generation. File from copyright
-// line onwards is as per original distribution.
-import "google/protobuf/csharp_options.proto";
-option (google.protobuf.csharp_file_options).namespace = "Google.ProtocolBuffers.TestProtos";
-option (google.protobuf.csharp_file_options).umbrella_classname = "UnitTestEmptyProtoFile";
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-// Author: kenton@google.com (Kenton Varda)
-//  Based on original Protocol Buffers design by
-//  Sanjay Ghemawat, Jeff Dean, and others.
-//
-// This file intentionally left blank.  (At one point this wouldn't compile
-// correctly.)
-

+ 0 - 1052
csharp/protos/google/protobuf/unittest_enormous_descriptor.proto

@@ -1,1052 +0,0 @@
-// Additional options required for C# generation. File from copyright
-// line onwards is as per original distribution.
-import "google/protobuf/csharp_options.proto";
-option (google.protobuf.csharp_file_options).namespace = "Google.ProtocolBuffers.TestProtos";
-option (google.protobuf.csharp_file_options).umbrella_classname = "UnitTestEnormousDescriptorProtoFile";
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-// Author: kenton@google.com (Kenton Varda)
-//  Based on original Protocol Buffers design by
-//  Sanjay Ghemawat, Jeff Dean, and others.
-//
-// A proto file that has an extremely large descriptor.  Used to test that
-// descriptors over 64k don't break the string literal length limit in Java.
-
-
-package google.protobuf;
-option java_package = "com.google.protobuf";
-
-// Avoid generating insanely long methods.
-option optimize_for = CODE_SIZE;
-
-message TestEnormousDescriptor {
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_1 = 1 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_2 = 2 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_3 = 3 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_4 = 4 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_5 = 5 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_6 = 6 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_7 = 7 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_8 = 8 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_9 = 9 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_10 = 10 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_11 = 11 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_12 = 12 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_13 = 13 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_14 = 14 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_15 = 15 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_16 = 16 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_17 = 17 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_18 = 18 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_19 = 19 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_20 = 20 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_21 = 21 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_22 = 22 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_23 = 23 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_24 = 24 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_25 = 25 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_26 = 26 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_27 = 27 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_28 = 28 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_29 = 29 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_30 = 30 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_31 = 31 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_32 = 32 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_33 = 33 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_34 = 34 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_35 = 35 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_36 = 36 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_37 = 37 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_38 = 38 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_39 = 39 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_40 = 40 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_41 = 41 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_42 = 42 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_43 = 43 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_44 = 44 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_45 = 45 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_46 = 46 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_47 = 47 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_48 = 48 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_49 = 49 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_50 = 50 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_51 = 51 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_52 = 52 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_53 = 53 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_54 = 54 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_55 = 55 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_56 = 56 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_57 = 57 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_58 = 58 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_59 = 59 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_60 = 60 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_61 = 61 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_62 = 62 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_63 = 63 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_64 = 64 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_65 = 65 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_66 = 66 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_67 = 67 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_68 = 68 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_69 = 69 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_70 = 70 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_71 = 71 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_72 = 72 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_73 = 73 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_74 = 74 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_75 = 75 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_76 = 76 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_77 = 77 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_78 = 78 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_79 = 79 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_80 = 80 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_81 = 81 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_82 = 82 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_83 = 83 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_84 = 84 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_85 = 85 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_86 = 86 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_87 = 87 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_88 = 88 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_89 = 89 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_90 = 90 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_91 = 91 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_92 = 92 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_93 = 93 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_94 = 94 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_95 = 95 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_96 = 96 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_97 = 97 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_98 = 98 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_99 = 99 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_100 = 100 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_101 = 101 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_102 = 102 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_103 = 103 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_104 = 104 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_105 = 105 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_106 = 106 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_107 = 107 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_108 = 108 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_109 = 109 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_110 = 110 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_111 = 111 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_112 = 112 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_113 = 113 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_114 = 114 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_115 = 115 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_116 = 116 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_117 = 117 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_118 = 118 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_119 = 119 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_120 = 120 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_121 = 121 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_122 = 122 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_123 = 123 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_124 = 124 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_125 = 125 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_126 = 126 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_127 = 127 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_128 = 128 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_129 = 129 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_130 = 130 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_131 = 131 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_132 = 132 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_133 = 133 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_134 = 134 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_135 = 135 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_136 = 136 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_137 = 137 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_138 = 138 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_139 = 139 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_140 = 140 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_141 = 141 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_142 = 142 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_143 = 143 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_144 = 144 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_145 = 145 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_146 = 146 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_147 = 147 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_148 = 148 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_149 = 149 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_150 = 150 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_151 = 151 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_152 = 152 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_153 = 153 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_154 = 154 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_155 = 155 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_156 = 156 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_157 = 157 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_158 = 158 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_159 = 159 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_160 = 160 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_161 = 161 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_162 = 162 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_163 = 163 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_164 = 164 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_165 = 165 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_166 = 166 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_167 = 167 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_168 = 168 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_169 = 169 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_170 = 170 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_171 = 171 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_172 = 172 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_173 = 173 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_174 = 174 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_175 = 175 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_176 = 176 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_177 = 177 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_178 = 178 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_179 = 179 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_180 = 180 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_181 = 181 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_182 = 182 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_183 = 183 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_184 = 184 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_185 = 185 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_186 = 186 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_187 = 187 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_188 = 188 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_189 = 189 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_190 = 190 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_191 = 191 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_192 = 192 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_193 = 193 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_194 = 194 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_195 = 195 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_196 = 196 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_197 = 197 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_198 = 198 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_199 = 199 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_200 = 200 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_201 = 201 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_202 = 202 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_203 = 203 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_204 = 204 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_205 = 205 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_206 = 206 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_207 = 207 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_208 = 208 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_209 = 209 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_210 = 210 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_211 = 211 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_212 = 212 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_213 = 213 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_214 = 214 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_215 = 215 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_216 = 216 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_217 = 217 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_218 = 218 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_219 = 219 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_220 = 220 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_221 = 221 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_222 = 222 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_223 = 223 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_224 = 224 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_225 = 225 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_226 = 226 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_227 = 227 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_228 = 228 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_229 = 229 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_230 = 230 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_231 = 231 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_232 = 232 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_233 = 233 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_234 = 234 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_235 = 235 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_236 = 236 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_237 = 237 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_238 = 238 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_239 = 239 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_240 = 240 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_241 = 241 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_242 = 242 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_243 = 243 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_244 = 244 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_245 = 245 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_246 = 246 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_247 = 247 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_248 = 248 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_249 = 249 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_250 = 250 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_251 = 251 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_252 = 252 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_253 = 253 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_254 = 254 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_255 = 255 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_256 = 256 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_257 = 257 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_258 = 258 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_259 = 259 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_260 = 260 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_261 = 261 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_262 = 262 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_263 = 263 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_264 = 264 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_265 = 265 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_266 = 266 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_267 = 267 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_268 = 268 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_269 = 269 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_270 = 270 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_271 = 271 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_272 = 272 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_273 = 273 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_274 = 274 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_275 = 275 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_276 = 276 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_277 = 277 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_278 = 278 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_279 = 279 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_280 = 280 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_281 = 281 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_282 = 282 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_283 = 283 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_284 = 284 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_285 = 285 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_286 = 286 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_287 = 287 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_288 = 288 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_289 = 289 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_290 = 290 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_291 = 291 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_292 = 292 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_293 = 293 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_294 = 294 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_295 = 295 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_296 = 296 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_297 = 297 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_298 = 298 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_299 = 299 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_300 = 300 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_301 = 301 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_302 = 302 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_303 = 303 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_304 = 304 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_305 = 305 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_306 = 306 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_307 = 307 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_308 = 308 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_309 = 309 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_310 = 310 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_311 = 311 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_312 = 312 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_313 = 313 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_314 = 314 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_315 = 315 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_316 = 316 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_317 = 317 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_318 = 318 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_319 = 319 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_320 = 320 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_321 = 321 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_322 = 322 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_323 = 323 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_324 = 324 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_325 = 325 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_326 = 326 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_327 = 327 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_328 = 328 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_329 = 329 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_330 = 330 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_331 = 331 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_332 = 332 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_333 = 333 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_334 = 334 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_335 = 335 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_336 = 336 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_337 = 337 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_338 = 338 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_339 = 339 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_340 = 340 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_341 = 341 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_342 = 342 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_343 = 343 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_344 = 344 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_345 = 345 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_346 = 346 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_347 = 347 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_348 = 348 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_349 = 349 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_350 = 350 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_351 = 351 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_352 = 352 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_353 = 353 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_354 = 354 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_355 = 355 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_356 = 356 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_357 = 357 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_358 = 358 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_359 = 359 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_360 = 360 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_361 = 361 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_362 = 362 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_363 = 363 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_364 = 364 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_365 = 365 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_366 = 366 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_367 = 367 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_368 = 368 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_369 = 369 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_370 = 370 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_371 = 371 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_372 = 372 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_373 = 373 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_374 = 374 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_375 = 375 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_376 = 376 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_377 = 377 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_378 = 378 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_379 = 379 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_380 = 380 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_381 = 381 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_382 = 382 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_383 = 383 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_384 = 384 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_385 = 385 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_386 = 386 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_387 = 387 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_388 = 388 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_389 = 389 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_390 = 390 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_391 = 391 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_392 = 392 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_393 = 393 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_394 = 394 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_395 = 395 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_396 = 396 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_397 = 397 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_398 = 398 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_399 = 399 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_400 = 400 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_401 = 401 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_402 = 402 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_403 = 403 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_404 = 404 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_405 = 405 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_406 = 406 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_407 = 407 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_408 = 408 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_409 = 409 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_410 = 410 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_411 = 411 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_412 = 412 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_413 = 413 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_414 = 414 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_415 = 415 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_416 = 416 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_417 = 417 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_418 = 418 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_419 = 419 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_420 = 420 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_421 = 421 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_422 = 422 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_423 = 423 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_424 = 424 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_425 = 425 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_426 = 426 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_427 = 427 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_428 = 428 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_429 = 429 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_430 = 430 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_431 = 431 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_432 = 432 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_433 = 433 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_434 = 434 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_435 = 435 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_436 = 436 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_437 = 437 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_438 = 438 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_439 = 439 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_440 = 440 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_441 = 441 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_442 = 442 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_443 = 443 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_444 = 444 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_445 = 445 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_446 = 446 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_447 = 447 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_448 = 448 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_449 = 449 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_450 = 450 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_451 = 451 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_452 = 452 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_453 = 453 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_454 = 454 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_455 = 455 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_456 = 456 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_457 = 457 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_458 = 458 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_459 = 459 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_460 = 460 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_461 = 461 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_462 = 462 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_463 = 463 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_464 = 464 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_465 = 465 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_466 = 466 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_467 = 467 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_468 = 468 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_469 = 469 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_470 = 470 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_471 = 471 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_472 = 472 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_473 = 473 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_474 = 474 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_475 = 475 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_476 = 476 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_477 = 477 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_478 = 478 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_479 = 479 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_480 = 480 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_481 = 481 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_482 = 482 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_483 = 483 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_484 = 484 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_485 = 485 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_486 = 486 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_487 = 487 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_488 = 488 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_489 = 489 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_490 = 490 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_491 = 491 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_492 = 492 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_493 = 493 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_494 = 494 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_495 = 495 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_496 = 496 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_497 = 497 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_498 = 498 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_499 = 499 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_500 = 500 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_501 = 501 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_502 = 502 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_503 = 503 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_504 = 504 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_505 = 505 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_506 = 506 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_507 = 507 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_508 = 508 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_509 = 509 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_510 = 510 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_511 = 511 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_512 = 512 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_513 = 513 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_514 = 514 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_515 = 515 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_516 = 516 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_517 = 517 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_518 = 518 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_519 = 519 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_520 = 520 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_521 = 521 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_522 = 522 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_523 = 523 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_524 = 524 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_525 = 525 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_526 = 526 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_527 = 527 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_528 = 528 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_529 = 529 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_530 = 530 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_531 = 531 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_532 = 532 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_533 = 533 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_534 = 534 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_535 = 535 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_536 = 536 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_537 = 537 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_538 = 538 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_539 = 539 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_540 = 540 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_541 = 541 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_542 = 542 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_543 = 543 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_544 = 544 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_545 = 545 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_546 = 546 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_547 = 547 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_548 = 548 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_549 = 549 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_550 = 550 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_551 = 551 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_552 = 552 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_553 = 553 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_554 = 554 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_555 = 555 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_556 = 556 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_557 = 557 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_558 = 558 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_559 = 559 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_560 = 560 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_561 = 561 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_562 = 562 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_563 = 563 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_564 = 564 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_565 = 565 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_566 = 566 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_567 = 567 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_568 = 568 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_569 = 569 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_570 = 570 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_571 = 571 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_572 = 572 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_573 = 573 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_574 = 574 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_575 = 575 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_576 = 576 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_577 = 577 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_578 = 578 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_579 = 579 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_580 = 580 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_581 = 581 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_582 = 582 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_583 = 583 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_584 = 584 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_585 = 585 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_586 = 586 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_587 = 587 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_588 = 588 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_589 = 589 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_590 = 590 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_591 = 591 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_592 = 592 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_593 = 593 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_594 = 594 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_595 = 595 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_596 = 596 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_597 = 597 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_598 = 598 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_599 = 599 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_600 = 600 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_601 = 601 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_602 = 602 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_603 = 603 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_604 = 604 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_605 = 605 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_606 = 606 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_607 = 607 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_608 = 608 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_609 = 609 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_610 = 610 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_611 = 611 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_612 = 612 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_613 = 613 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_614 = 614 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_615 = 615 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_616 = 616 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_617 = 617 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_618 = 618 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_619 = 619 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_620 = 620 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_621 = 621 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_622 = 622 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_623 = 623 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_624 = 624 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_625 = 625 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_626 = 626 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_627 = 627 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_628 = 628 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_629 = 629 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_630 = 630 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_631 = 631 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_632 = 632 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_633 = 633 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_634 = 634 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_635 = 635 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_636 = 636 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_637 = 637 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_638 = 638 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_639 = 639 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_640 = 640 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_641 = 641 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_642 = 642 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_643 = 643 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_644 = 644 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_645 = 645 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_646 = 646 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_647 = 647 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_648 = 648 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_649 = 649 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_650 = 650 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_651 = 651 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_652 = 652 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_653 = 653 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_654 = 654 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_655 = 655 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_656 = 656 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_657 = 657 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_658 = 658 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_659 = 659 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_660 = 660 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_661 = 661 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_662 = 662 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_663 = 663 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_664 = 664 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_665 = 665 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_666 = 666 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_667 = 667 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_668 = 668 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_669 = 669 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_670 = 670 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_671 = 671 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_672 = 672 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_673 = 673 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_674 = 674 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_675 = 675 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_676 = 676 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_677 = 677 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_678 = 678 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_679 = 679 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_680 = 680 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_681 = 681 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_682 = 682 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_683 = 683 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_684 = 684 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_685 = 685 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_686 = 686 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_687 = 687 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_688 = 688 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_689 = 689 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_690 = 690 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_691 = 691 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_692 = 692 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_693 = 693 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_694 = 694 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_695 = 695 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_696 = 696 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_697 = 697 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_698 = 698 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_699 = 699 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_700 = 700 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_701 = 701 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_702 = 702 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_703 = 703 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_704 = 704 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_705 = 705 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_706 = 706 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_707 = 707 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_708 = 708 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_709 = 709 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_710 = 710 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_711 = 711 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_712 = 712 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_713 = 713 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_714 = 714 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_715 = 715 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_716 = 716 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_717 = 717 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_718 = 718 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_719 = 719 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_720 = 720 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_721 = 721 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_722 = 722 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_723 = 723 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_724 = 724 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_725 = 725 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_726 = 726 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_727 = 727 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_728 = 728 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_729 = 729 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_730 = 730 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_731 = 731 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_732 = 732 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_733 = 733 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_734 = 734 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_735 = 735 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_736 = 736 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_737 = 737 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_738 = 738 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_739 = 739 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_740 = 740 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_741 = 741 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_742 = 742 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_743 = 743 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_744 = 744 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_745 = 745 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_746 = 746 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_747 = 747 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_748 = 748 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_749 = 749 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_750 = 750 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_751 = 751 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_752 = 752 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_753 = 753 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_754 = 754 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_755 = 755 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_756 = 756 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_757 = 757 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_758 = 758 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_759 = 759 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_760 = 760 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_761 = 761 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_762 = 762 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_763 = 763 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_764 = 764 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_765 = 765 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_766 = 766 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_767 = 767 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_768 = 768 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_769 = 769 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_770 = 770 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_771 = 771 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_772 = 772 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_773 = 773 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_774 = 774 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_775 = 775 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_776 = 776 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_777 = 777 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_778 = 778 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_779 = 779 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_780 = 780 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_781 = 781 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_782 = 782 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_783 = 783 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_784 = 784 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_785 = 785 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_786 = 786 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_787 = 787 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_788 = 788 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_789 = 789 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_790 = 790 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_791 = 791 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_792 = 792 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_793 = 793 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_794 = 794 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_795 = 795 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_796 = 796 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_797 = 797 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_798 = 798 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_799 = 799 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_800 = 800 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_801 = 801 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_802 = 802 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_803 = 803 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_804 = 804 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_805 = 805 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_806 = 806 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_807 = 807 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_808 = 808 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_809 = 809 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_810 = 810 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_811 = 811 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_812 = 812 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_813 = 813 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_814 = 814 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_815 = 815 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_816 = 816 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_817 = 817 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_818 = 818 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_819 = 819 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_820 = 820 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_821 = 821 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_822 = 822 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_823 = 823 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_824 = 824 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_825 = 825 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_826 = 826 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_827 = 827 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_828 = 828 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_829 = 829 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_830 = 830 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_831 = 831 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_832 = 832 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_833 = 833 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_834 = 834 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_835 = 835 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_836 = 836 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_837 = 837 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_838 = 838 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_839 = 839 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_840 = 840 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_841 = 841 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_842 = 842 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_843 = 843 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_844 = 844 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_845 = 845 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_846 = 846 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_847 = 847 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_848 = 848 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_849 = 849 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_850 = 850 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_851 = 851 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_852 = 852 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_853 = 853 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_854 = 854 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_855 = 855 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_856 = 856 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_857 = 857 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_858 = 858 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_859 = 859 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_860 = 860 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_861 = 861 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_862 = 862 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_863 = 863 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_864 = 864 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_865 = 865 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_866 = 866 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_867 = 867 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_868 = 868 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_869 = 869 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_870 = 870 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_871 = 871 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_872 = 872 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_873 = 873 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_874 = 874 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_875 = 875 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_876 = 876 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_877 = 877 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_878 = 878 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_879 = 879 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_880 = 880 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_881 = 881 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_882 = 882 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_883 = 883 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_884 = 884 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_885 = 885 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_886 = 886 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_887 = 887 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_888 = 888 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_889 = 889 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_890 = 890 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_891 = 891 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_892 = 892 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_893 = 893 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_894 = 894 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_895 = 895 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_896 = 896 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_897 = 897 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_898 = 898 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_899 = 899 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_900 = 900 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_901 = 901 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_902 = 902 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_903 = 903 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_904 = 904 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_905 = 905 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_906 = 906 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_907 = 907 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_908 = 908 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_909 = 909 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_910 = 910 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_911 = 911 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_912 = 912 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_913 = 913 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_914 = 914 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_915 = 915 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_916 = 916 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_917 = 917 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_918 = 918 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_919 = 919 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_920 = 920 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_921 = 921 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_922 = 922 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_923 = 923 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_924 = 924 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_925 = 925 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_926 = 926 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_927 = 927 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_928 = 928 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_929 = 929 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_930 = 930 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_931 = 931 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_932 = 932 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_933 = 933 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_934 = 934 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_935 = 935 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_936 = 936 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_937 = 937 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_938 = 938 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_939 = 939 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_940 = 940 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_941 = 941 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_942 = 942 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_943 = 943 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_944 = 944 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_945 = 945 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_946 = 946 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_947 = 947 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_948 = 948 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_949 = 949 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_950 = 950 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_951 = 951 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_952 = 952 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_953 = 953 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_954 = 954 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_955 = 955 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_956 = 956 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_957 = 957 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_958 = 958 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_959 = 959 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_960 = 960 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_961 = 961 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_962 = 962 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_963 = 963 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_964 = 964 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_965 = 965 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_966 = 966 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_967 = 967 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_968 = 968 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_969 = 969 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_970 = 970 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_971 = 971 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_972 = 972 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_973 = 973 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_974 = 974 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_975 = 975 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_976 = 976 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_977 = 977 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_978 = 978 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_979 = 979 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_980 = 980 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_981 = 981 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_982 = 982 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_983 = 983 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_984 = 984 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_985 = 985 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_986 = 986 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_987 = 987 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_988 = 988 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_989 = 989 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_990 = 990 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_991 = 991 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_992 = 992 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_993 = 993 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_994 = 994 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_995 = 995 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_996 = 996 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_997 = 997 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_998 = 998 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_999 = 999 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-  optional string long_field_name_is_looooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong_1000 = 1000 [default="long default value is also loooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooooong"];
-}

+ 0 - 67
csharp/protos/google/protobuf/unittest_import.proto

@@ -1,67 +0,0 @@
-// Additional options required for C# generation. File from copyright
-// line onwards is as per original distribution.
-import "google/protobuf/csharp_options.proto";
-option (google.protobuf.csharp_file_options).namespace = "Google.ProtocolBuffers.TestProtos";
-option (google.protobuf.csharp_file_options).umbrella_classname = "UnitTestImportProtoFile";
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-// Author: kenton@google.com (Kenton Varda)
-//  Based on original Protocol Buffers design by
-//  Sanjay Ghemawat, Jeff Dean, and others.
-//
-// A proto file which is imported by unittest.proto to test importing.
-
-
-// We don't put this in a package within proto2 because we need to make sure
-// that the generated code doesn't depend on being in the proto2 namespace.
-// In test_util.h we do
-// "using namespace unittest_import = protobuf_unittest_import".
-package protobuf_unittest_import;
-
-option optimize_for = SPEED;
-
-// Excercise the java_package option.
-option java_package = "com.google.protobuf.test";
-
-// Do not set a java_outer_classname here to verify that Proto2 works without
-// one.
-
-message ImportMessage {
-  optional int32 d = 1;
-}
-
-enum ImportEnum {
-  IMPORT_FOO = 7;
-  IMPORT_BAR = 8;
-  IMPORT_BAZ = 9;
-}
-

+ 0 - 55
csharp/protos/google/protobuf/unittest_import_lite.proto

@@ -1,55 +0,0 @@
-// Additional options required for C# generation. File from copyright
-// line onwards is as per original distribution.
-import "google/protobuf/csharp_options.proto";
-option (google.protobuf.csharp_file_options).namespace = "Google.ProtocolBuffers.TestProtos";
-option (google.protobuf.csharp_file_options).umbrella_classname = "UnitTestImportLiteProtoFile";
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-// Author: kenton@google.com (Kenton Varda)
-//
-// This is like unittest_import.proto but with optimize_for = LITE_RUNTIME.
-
-package protobuf_unittest_import;
-
-option optimize_for = LITE_RUNTIME;
-
-option java_package = "com.google.protobuf";
-
-message ImportMessageLite {
-  optional int32 d = 1;
-}
-
-enum ImportEnumLite {
-  IMPORT_LITE_FOO = 7;
-  IMPORT_LITE_BAR = 8;
-  IMPORT_LITE_BAZ = 9;
-}

+ 0 - 318
csharp/protos/google/protobuf/unittest_lite.proto

@@ -1,318 +0,0 @@
-// Additional options required for C# generation. File from copyright
-// line onwards is as per original distribution.
-import "google/protobuf/csharp_options.proto";
-option (google.protobuf.csharp_file_options).namespace = "Google.ProtocolBuffers.TestProtos";
-option (google.protobuf.csharp_file_options).umbrella_classname = "UnitTestLiteProtoFile";
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-// Author: kenton@google.com (Kenton Varda)
-//
-// This is like unittest.proto but with optimize_for = LITE_RUNTIME.
-
-package protobuf_unittest;
-
-import "google/protobuf/unittest_import_lite.proto";
-
-option optimize_for = LITE_RUNTIME;
-
-option java_package = "com.google.protobuf";
-
-// Same as TestAllTypes but with the lite runtime.
-message TestAllTypesLite {
-  message NestedMessage {
-    optional int32 bb = 1;
-  }
-
-  enum NestedEnum {
-    FOO = 1;
-    BAR = 2;
-    BAZ = 3;
-  }
-
-  // Singular
-  optional    int32 optional_int32    =  1;
-  optional    int64 optional_int64    =  2;
-  optional   uint32 optional_uint32   =  3;
-  optional   uint64 optional_uint64   =  4;
-  optional   sint32 optional_sint32   =  5;
-  optional   sint64 optional_sint64   =  6;
-  optional  fixed32 optional_fixed32  =  7;
-  optional  fixed64 optional_fixed64  =  8;
-  optional sfixed32 optional_sfixed32 =  9;
-  optional sfixed64 optional_sfixed64 = 10;
-  optional    float optional_float    = 11;
-  optional   double optional_double   = 12;
-  optional     bool optional_bool     = 13;
-  optional   string optional_string   = 14;
-  optional    bytes optional_bytes    = 15;
-
-  optional group OptionalGroup = 16 {
-    optional int32 a = 17;
-  }
-
-  optional NestedMessage      optional_nested_message  = 18;
-  optional ForeignMessageLite optional_foreign_message = 19;
-  optional protobuf_unittest_import.ImportMessageLite
-    optional_import_message = 20;
-
-  optional NestedEnum      optional_nested_enum     = 21;
-  optional ForeignEnumLite optional_foreign_enum    = 22;
-  optional protobuf_unittest_import.ImportEnumLite optional_import_enum = 23;
-
-  optional string optional_string_piece = 24 [ctype=STRING_PIECE];
-  optional string optional_cord = 25 [ctype=CORD];
-
-  // Repeated
-  repeated    int32 repeated_int32    = 31;
-  repeated    int64 repeated_int64    = 32;
-  repeated   uint32 repeated_uint32   = 33;
-  repeated   uint64 repeated_uint64   = 34;
-  repeated   sint32 repeated_sint32   = 35;
-  repeated   sint64 repeated_sint64   = 36;
-  repeated  fixed32 repeated_fixed32  = 37;
-  repeated  fixed64 repeated_fixed64  = 38;
-  repeated sfixed32 repeated_sfixed32 = 39;
-  repeated sfixed64 repeated_sfixed64 = 40;
-  repeated    float repeated_float    = 41;
-  repeated   double repeated_double   = 42;
-  repeated     bool repeated_bool     = 43;
-  repeated   string repeated_string   = 44;
-  repeated    bytes repeated_bytes    = 45;
-
-  repeated group RepeatedGroup = 46 {
-    optional int32 a = 47;
-  }
-
-  repeated NestedMessage      repeated_nested_message  = 48;
-  repeated ForeignMessageLite repeated_foreign_message = 49;
-  repeated protobuf_unittest_import.ImportMessageLite
-    repeated_import_message = 50;
-
-  repeated NestedEnum      repeated_nested_enum  = 51;
-  repeated ForeignEnumLite repeated_foreign_enum = 52;
-  repeated protobuf_unittest_import.ImportEnumLite repeated_import_enum = 53;
-
-  repeated string repeated_string_piece = 54 [ctype=STRING_PIECE];
-  repeated string repeated_cord = 55 [ctype=CORD];
-
-  // Singular with defaults
-  optional    int32 default_int32    = 61 [default =  41    ];
-  optional    int64 default_int64    = 62 [default =  42    ];
-  optional   uint32 default_uint32   = 63 [default =  43    ];
-  optional   uint64 default_uint64   = 64 [default =  44    ];
-  optional   sint32 default_sint32   = 65 [default = -45    ];
-  optional   sint64 default_sint64   = 66 [default =  46    ];
-  optional  fixed32 default_fixed32  = 67 [default =  47    ];
-  optional  fixed64 default_fixed64  = 68 [default =  48    ];
-  optional sfixed32 default_sfixed32 = 69 [default =  49    ];
-  optional sfixed64 default_sfixed64 = 70 [default = -50    ];
-  optional    float default_float    = 71 [default =  51.5  ];
-  optional   double default_double   = 72 [default =  52e3  ];
-  optional     bool default_bool     = 73 [default = true   ];
-  optional   string default_string   = 74 [default = "hello"];
-  optional    bytes default_bytes    = 75 [default = "world"];
-
-  optional NestedEnum default_nested_enum = 81 [default = BAR];
-  optional ForeignEnumLite default_foreign_enum = 82
-      [default = FOREIGN_LITE_BAR];
-  optional protobuf_unittest_import.ImportEnumLite
-      default_import_enum = 83 [default = IMPORT_LITE_BAR];
-
-  optional string default_string_piece = 84 [ctype=STRING_PIECE,default="abc"];
-  optional string default_cord = 85 [ctype=CORD,default="123"];
-}
-
-message ForeignMessageLite {
-  optional int32 c = 1;
-}
-
-enum ForeignEnumLite {
-  FOREIGN_LITE_FOO = 4;
-  FOREIGN_LITE_BAR = 5;
-  FOREIGN_LITE_BAZ = 6;
-}
-
-message TestPackedTypesLite {
-  repeated    int32 packed_int32    =  90 [packed = true];
-  repeated    int64 packed_int64    =  91 [packed = true];
-  repeated   uint32 packed_uint32   =  92 [packed = true];
-  repeated   uint64 packed_uint64   =  93 [packed = true];
-  repeated   sint32 packed_sint32   =  94 [packed = true];
-  repeated   sint64 packed_sint64   =  95 [packed = true];
-  repeated  fixed32 packed_fixed32  =  96 [packed = true];
-  repeated  fixed64 packed_fixed64  =  97 [packed = true];
-  repeated sfixed32 packed_sfixed32 =  98 [packed = true];
-  repeated sfixed64 packed_sfixed64 =  99 [packed = true];
-  repeated    float packed_float    = 100 [packed = true];
-  repeated   double packed_double   = 101 [packed = true];
-  repeated     bool packed_bool     = 102 [packed = true];
-  repeated ForeignEnumLite packed_enum  = 103 [packed = true];
-}
-
-message TestAllExtensionsLite {
-  extensions 1 to max;
-}
-
-extend TestAllExtensionsLite {
-  // Singular
-  optional    int32 optional_int32_extension_lite    =  1;
-  optional    int64 optional_int64_extension_lite    =  2;
-  optional   uint32 optional_uint32_extension_lite   =  3;
-  optional   uint64 optional_uint64_extension_lite   =  4;
-  optional   sint32 optional_sint32_extension_lite   =  5;
-  optional   sint64 optional_sint64_extension_lite   =  6;
-  optional  fixed32 optional_fixed32_extension_lite  =  7;
-  optional  fixed64 optional_fixed64_extension_lite  =  8;
-  optional sfixed32 optional_sfixed32_extension_lite =  9;
-  optional sfixed64 optional_sfixed64_extension_lite = 10;
-  optional    float optional_float_extension_lite    = 11;
-  optional   double optional_double_extension_lite   = 12;
-  optional     bool optional_bool_extension_lite     = 13;
-  optional   string optional_string_extension_lite   = 14;
-  optional    bytes optional_bytes_extension_lite    = 15;
-
-  optional group OptionalGroup_extension_lite = 16 {
-    optional int32 a = 17;
-  }
-
-  optional TestAllTypesLite.NestedMessage optional_nested_message_extension_lite
-      = 18;
-  optional ForeignMessageLite optional_foreign_message_extension_lite = 19;
-  optional protobuf_unittest_import.ImportMessageLite
-    optional_import_message_extension_lite = 20;
-
-  optional TestAllTypesLite.NestedEnum optional_nested_enum_extension_lite = 21;
-  optional ForeignEnumLite optional_foreign_enum_extension_lite = 22;
-  optional protobuf_unittest_import.ImportEnumLite
-    optional_import_enum_extension_lite = 23;
-
-  optional string optional_string_piece_extension_lite = 24
-      [ctype=STRING_PIECE];
-  optional string optional_cord_extension_lite = 25 [ctype=CORD];
-
-  // Repeated
-  repeated    int32 repeated_int32_extension_lite    = 31;
-  repeated    int64 repeated_int64_extension_lite    = 32;
-  repeated   uint32 repeated_uint32_extension_lite   = 33;
-  repeated   uint64 repeated_uint64_extension_lite   = 34;
-  repeated   sint32 repeated_sint32_extension_lite   = 35;
-  repeated   sint64 repeated_sint64_extension_lite   = 36;
-  repeated  fixed32 repeated_fixed32_extension_lite  = 37;
-  repeated  fixed64 repeated_fixed64_extension_lite  = 38;
-  repeated sfixed32 repeated_sfixed32_extension_lite = 39;
-  repeated sfixed64 repeated_sfixed64_extension_lite = 40;
-  repeated    float repeated_float_extension_lite    = 41;
-  repeated   double repeated_double_extension_lite   = 42;
-  repeated     bool repeated_bool_extension_lite     = 43;
-  repeated   string repeated_string_extension_lite   = 44;
-  repeated    bytes repeated_bytes_extension_lite    = 45;
-
-  repeated group RepeatedGroup_extension_lite = 46 {
-    optional int32 a = 47;
-  }
-
-  repeated TestAllTypesLite.NestedMessage repeated_nested_message_extension_lite
-      = 48;
-  repeated ForeignMessageLite repeated_foreign_message_extension_lite = 49;
-  repeated protobuf_unittest_import.ImportMessageLite
-    repeated_import_message_extension_lite = 50;
-
-  repeated TestAllTypesLite.NestedEnum repeated_nested_enum_extension_lite = 51;
-  repeated ForeignEnumLite repeated_foreign_enum_extension_lite = 52;
-  repeated protobuf_unittest_import.ImportEnumLite
-    repeated_import_enum_extension_lite = 53;
-
-  repeated string repeated_string_piece_extension_lite = 54
-      [ctype=STRING_PIECE];
-  repeated string repeated_cord_extension_lite = 55 [ctype=CORD];
-
-  // Singular with defaults
-  optional    int32 default_int32_extension_lite    = 61 [default =  41    ];
-  optional    int64 default_int64_extension_lite    = 62 [default =  42    ];
-  optional   uint32 default_uint32_extension_lite   = 63 [default =  43    ];
-  optional   uint64 default_uint64_extension_lite   = 64 [default =  44    ];
-  optional   sint32 default_sint32_extension_lite   = 65 [default = -45    ];
-  optional   sint64 default_sint64_extension_lite   = 66 [default =  46    ];
-  optional  fixed32 default_fixed32_extension_lite  = 67 [default =  47    ];
-  optional  fixed64 default_fixed64_extension_lite  = 68 [default =  48    ];
-  optional sfixed32 default_sfixed32_extension_lite = 69 [default =  49    ];
-  optional sfixed64 default_sfixed64_extension_lite = 70 [default = -50    ];
-  optional    float default_float_extension_lite    = 71 [default =  51.5  ];
-  optional   double default_double_extension_lite   = 72 [default =  52e3  ];
-  optional     bool default_bool_extension_lite     = 73 [default = true   ];
-  optional   string default_string_extension_lite   = 74 [default = "hello"];
-  optional    bytes default_bytes_extension_lite    = 75 [default = "world"];
-
-  optional TestAllTypesLite.NestedEnum
-    default_nested_enum_extension_lite = 81 [default = BAR];
-  optional ForeignEnumLite
-    default_foreign_enum_extension_lite = 82 [default = FOREIGN_LITE_BAR];
-  optional protobuf_unittest_import.ImportEnumLite
-    default_import_enum_extension_lite = 83 [default = IMPORT_LITE_BAR];
-
-  optional string default_string_piece_extension_lite = 84 [ctype=STRING_PIECE,
-                                                            default="abc"];
-  optional string default_cord_extension_lite = 85 [ctype=CORD, default="123"];
-}
-
-message TestPackedExtensionsLite {
-  extensions 1 to max;
-}
-
-extend TestPackedExtensionsLite {
-  repeated    int32 packed_int32_extension_lite    =  90 [packed = true];
-  repeated    int64 packed_int64_extension_lite    =  91 [packed = true];
-  repeated   uint32 packed_uint32_extension_lite   =  92 [packed = true];
-  repeated   uint64 packed_uint64_extension_lite   =  93 [packed = true];
-  repeated   sint32 packed_sint32_extension_lite   =  94 [packed = true];
-  repeated   sint64 packed_sint64_extension_lite   =  95 [packed = true];
-  repeated  fixed32 packed_fixed32_extension_lite  =  96 [packed = true];
-  repeated  fixed64 packed_fixed64_extension_lite  =  97 [packed = true];
-  repeated sfixed32 packed_sfixed32_extension_lite =  98 [packed = true];
-  repeated sfixed64 packed_sfixed64_extension_lite =  99 [packed = true];
-  repeated    float packed_float_extension_lite    = 100 [packed = true];
-  repeated   double packed_double_extension_lite   = 101 [packed = true];
-  repeated     bool packed_bool_extension_lite     = 102 [packed = true];
-  repeated ForeignEnumLite packed_enum_extension_lite = 103 [packed = true];
-}
-
-message TestNestedExtensionLite {
-  extend TestAllExtensionsLite {
-    optional int32 nested_extension = 12345;
-  }
-}
-
-// Test that deprecated fields work.  We only verify that they compile (at one
-// point this failed).
-message TestDeprecatedLite {
-  optional int32 deprecated_field = 1 [deprecated = true];
-}

+ 0 - 49
csharp/protos/google/protobuf/unittest_lite_imports_nonlite.proto

@@ -1,49 +0,0 @@
-// Additional options required for C# generation. File from copyright
-// line onwards is as per original distribution.
-import "google/protobuf/csharp_options.proto";
-option (google.protobuf.csharp_file_options).namespace = "Google.ProtocolBuffers.TestProtos";
-option (google.protobuf.csharp_file_options).umbrella_classname = "UnitTestLiteImportNonLiteProtoFile";
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-// Author: kenton@google.com (Kenton Varda)
-//
-// Tests that a "lite" message can import a regular message.
-
-package protobuf_unittest;
-
-import "google/protobuf/unittest.proto";
-
-option optimize_for = LITE_RUNTIME;
-
-message TestLiteImportsNonlite {
-  optional TestAllTypes message = 1;
-}

+ 0 - 78
csharp/protos/google/protobuf/unittest_mset.proto

@@ -1,78 +0,0 @@
-// Additional options required for C# generation. File from copyright
-// line onwards is as per original distribution.
-import "google/protobuf/csharp_options.proto";
-option (google.protobuf.csharp_file_options).namespace = "Google.ProtocolBuffers.TestProtos";
-option (google.protobuf.csharp_file_options).umbrella_classname = "UnitTestMessageSetProtoFile";
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-// Author: kenton@google.com (Kenton Varda)
-//  Based on original Protocol Buffers design by
-//  Sanjay Ghemawat, Jeff Dean, and others.
-//
-// This file contains messages for testing message_set_wire_format.
-
-package protobuf_unittest;
-
-option optimize_for = SPEED;
-
-// A message with message_set_wire_format.
-message TestMessageSet {
-  option message_set_wire_format = true;
-  extensions 4 to max;
-}
-
-message TestMessageSetContainer {
-  optional TestMessageSet message_set = 1;
-}
-
-message TestMessageSetExtension1 {
-  extend TestMessageSet {
-    optional TestMessageSetExtension1 message_set_extension = 1545008;
-  }
-  optional int32 i = 15;
-}
-
-message TestMessageSetExtension2 {
-  extend TestMessageSet {
-    optional TestMessageSetExtension2 message_set_extension = 1547769;
-  }
-  optional string str = 25;
-}
-
-// MessageSet wire format is equivalent to this.
-message RawMessageSet {
-  repeated group Item = 1 {
-    required int32 type_id = 2;
-    required bytes message = 3;
-  }
-}
-

+ 0 - 58
csharp/protos/google/protobuf/unittest_no_generic_services.proto

@@ -1,58 +0,0 @@
-// Additional options required for C# generation. File from copyright
-// line onwards is as per original distribution.
-import "google/protobuf/csharp_options.proto";
-option (google.protobuf.csharp_file_options).namespace = "Google.ProtocolBuffers.TestProtos.NoGenericService";
-option (google.protobuf.csharp_file_options).umbrella_classname = "UnitTestNoGenericServicesProtoFile";
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-// Author: kenton@google.com (Kenton Varda)
-
-package google.protobuf.no_generic_services_test;
-
-// *_generic_services are false by default.
-
-message TestMessage {
-  optional int32 a = 1;
-  extensions 1000 to max;
-}
-
-enum TestEnum {
-  FOO = 1;
-}
-
-extend TestMessage {
-  optional int32 test_extension = 1000;
-}
-
-service TestService {
-  rpc Foo(TestMessage) returns(TestMessage);
-}

+ 0 - 67
csharp/protos/google/protobuf/unittest_optimize_for.proto

@@ -1,67 +0,0 @@
-// Additional options required for C# generation. File from copyright
-// line onwards is as per original distribution.
-import "google/protobuf/csharp_options.proto";
-option (google.protobuf.csharp_file_options).namespace = "Google.ProtocolBuffers.TestProtos";
-option (google.protobuf.csharp_file_options).umbrella_classname = "UnitTestOptimizeForProtoFile";
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-// Author: kenton@google.com (Kenton Varda)
-//  Based on original Protocol Buffers design by
-//  Sanjay Ghemawat, Jeff Dean, and others.
-//
-// A proto file which uses optimize_for = CODE_SIZE.
-
-import "google/protobuf/unittest.proto";
-
-package protobuf_unittest;
-
-option optimize_for = CODE_SIZE;
-
-message TestOptimizedForSize {
-  optional int32 i = 1;
-  optional ForeignMessage msg = 19;
-
-  extensions 1000 to max;
-
-  extend TestOptimizedForSize {
-    optional int32 test_extension = 1234;
-    optional TestRequiredOptimizedForSize test_extension2 = 1235;
-  }
-}
-
-message TestRequiredOptimizedForSize {
-  required int32 x = 1;
-}
- 
-message TestOptionalOptimizedForSize {
-  optional TestRequiredOptimizedForSize o = 1;
-}

+ 0 - 140
csharp/protos/google/test/google_size.proto

@@ -1,140 +0,0 @@
-package unittest_google_size;
-
-import "google/protobuf/csharp_options.proto";
-option (google.protobuf.csharp_file_options).namespace = "Google.ProtocolBuffers.TestProtos";
-option (google.protobuf.csharp_file_options).umbrella_classname = "UnitTestGoogleSizeProtoFile";
-
-option java_outer_classname = "GoogleSize";
-option optimize_for = CODE_SIZE;
-
-message SizeMessage1 {
-  required string field1 = 1;
-  optional string field9 = 9;
-  optional string field18 = 18;
-  optional bool field80 = 80 [default=false];
-  optional bool field81 = 81 [default=true];
-  required int32 field2 = 2;
-  required int32 field3 = 3;
-  optional int32 field280 = 280;
-  optional int32 field6 = 6 [default=0];
-  optional int64 field22 = 22;
-  optional string field4 = 4;
-  repeated fixed64 field5 = 5;
-  optional bool field59 = 59 [default=false];
-  optional string field7 = 7;
-  optional int32 field16 = 16;
-  optional int32 field130 = 130 [default=0];
-  optional bool field12 = 12 [default=true];
-  optional bool field17 = 17 [default=true];
-  optional bool field13 = 13 [default=true];
-  optional bool field14 = 14 [default=true];
-  optional int32 field104 = 104 [default=0];
-  optional int32 field100 = 100 [default=0];
-  optional int32 field101 = 101 [default=0];
-  optional string field102 = 102;
-  optional string field103 = 103;
-  optional int32 field29 = 29 [default=0];
-  optional bool field30 = 30 [default=false];
-  optional int32 field60 = 60 [default=-1];
-  optional int32 field271 = 271 [default=-1];
-  optional int32 field272 = 272 [default=-1];
-  optional int32 field150 = 150;
-  optional int32 field23 = 23 [default=0];
-  optional bool field24 = 24 [default=false];
-  optional int32 field25 = 25 [default=0];
-  optional SizeMessage1SubMessage field15 = 15;
-  optional bool field78 = 78;
-  optional int32 field67 = 67 [default=0];
-  optional int32 field68 = 68;
-  optional int32 field128 = 128 [default=0];
-  optional string field129 = 129 [default="xxxxxxxxxxxxxxxxxxxxx"];
-  optional int32 field131 = 131 [default=0];
-}
-
-message SizeMessage1SubMessage {
-  optional int32 field1 = 1 [default=0];
-  optional int32 field2 = 2 [default=0];
-  optional int32 field3 = 3 [default=0];
-  optional string field15 = 15;
-  optional bool field12 = 12 [default=true];
-  optional int64 field13 = 13;
-  optional int64 field14 = 14;
-  optional int32 field16 = 16;
-  optional int32 field19 = 19 [default=2];
-  optional bool field20  = 20 [default=true];
-  optional bool field28 = 28 [default=true];
-  optional fixed64 field21 = 21;
-  optional int32 field22 = 22;
-  optional bool field23 = 23 [ default=false ];
-  optional bool field206 = 206 [default=false];
-  optional fixed32 field203 = 203;
-  optional int32 field204 = 204;
-  optional string field205 = 205;
-  optional uint64 field207 = 207;
-  optional uint64 field300 = 300;
-}
-
-message SizeMessage2 {
-  optional string field1 = 1;
-  optional int64 field3 = 3;
-  optional int64 field4 = 4;
-  optional int64 field30 = 30;
-  optional bool field75  = 75 [default=false];
-  optional string field6 = 6;
-  optional bytes field2 = 2;
-  optional int32 field21 = 21 [default=0];
-  optional int32 field71 = 71;
-  optional float field25 = 25;
-  optional int32 field109 = 109 [default=0];
-  optional int32 field210 = 210 [default=0];
-  optional int32 field211 = 211 [default=0];
-  optional int32 field212 = 212 [default=0];
-  optional int32 field213 = 213 [default=0];
-  optional int32 field216 = 216 [default=0];
-  optional int32 field217 = 217 [default=0];
-  optional int32 field218 = 218 [default=0];
-  optional int32 field220 = 220 [default=0];
-  optional int32 field221 = 221 [default=0];
-  optional float field222 = 222 [default=0.0];
-  optional int32 field63 = 63;
-
-  repeated group Group1 = 10 {
-    required float field11 = 11;
-    optional float field26 = 26;
-    optional string field12 = 12;
-    optional string field13 = 13;
-    repeated string field14 = 14;
-    required uint64 field15 = 15;
-    optional int32 field5 = 5;
-    optional string field27 = 27;
-    optional int32 field28 = 28;
-    optional string field29 = 29;
-    optional string field16 = 16;
-    repeated string field22 = 22;
-    repeated int32 field73 = 73;
-    optional int32 field20 = 20 [default=0];
-    optional string field24 = 24;
-    optional SizeMessage2GroupedMessage field31 = 31;
-  }
-  repeated string field128 = 128;
-  optional int64 field131 = 131;
-  repeated string field127 = 127;
-  optional int32 field129 = 129;
-  repeated int64 field130 = 130;
-  optional bool field205 = 205 [default=false];
-  optional bool field206 = 206 [default=false];
-}
-
-message SizeMessage2GroupedMessage {
-  optional float field1 = 1;
-  optional float field2 = 2;
-  optional float field3 = 3 [default=0.0];
-  optional bool field4 = 4;
-  optional bool field5 = 5;
-  optional bool field6 = 6 [default=true];
-  optional bool field7 = 7 [default=false];
-  optional float field8 = 8;
-  optional bool field9 = 9;
-  optional float field10 = 10;
-  optional int64 field11 = 11;
-}

+ 0 - 140
csharp/protos/google/test/google_speed.proto

@@ -1,140 +0,0 @@
-package unittest_google_speed;
-
-import "google/protobuf/csharp_options.proto";
-option (google.protobuf.csharp_file_options).namespace = "Google.ProtocolBuffers.TestProtos";
-option (google.protobuf.csharp_file_options).umbrella_classname = "UnitTestGoogleSpeedProtoFile";
-
-option java_outer_classname = "GoogleSpeed";
-option optimize_for = SPEED;
-
-message SpeedMessage1 {
-  required string field1 = 1;
-  optional string field9 = 9;
-  optional string field18 = 18;
-  optional bool field80 = 80 [default=false];
-  optional bool field81 = 81 [default=true];
-  required int32 field2 = 2;
-  required int32 field3 = 3;
-  optional int32 field280 = 280;
-  optional int32 field6 = 6 [default=0];
-  optional int64 field22 = 22;
-  optional string field4 = 4;
-  repeated fixed64 field5 = 5;
-  optional bool field59 = 59 [default=false];
-  optional string field7 = 7;
-  optional int32 field16 = 16;
-  optional int32 field130 = 130 [default=0];
-  optional bool field12 = 12 [default=true];
-  optional bool field17 = 17 [default=true];
-  optional bool field13 = 13 [default=true];
-  optional bool field14 = 14 [default=true];
-  optional int32 field104 = 104 [default=0];
-  optional int32 field100 = 100 [default=0];
-  optional int32 field101 = 101 [default=0];
-  optional string field102 = 102;
-  optional string field103 = 103;
-  optional int32 field29 = 29 [default=0];
-  optional bool field30 = 30 [default=false];
-  optional int32 field60 = 60 [default=-1];
-  optional int32 field271 = 271 [default=-1];
-  optional int32 field272 = 272 [default=-1];
-  optional int32 field150 = 150;
-  optional int32 field23 = 23 [default=0];
-  optional bool field24 = 24 [default=false];
-  optional int32 field25 = 25 [default=0];
-  optional SpeedMessage1SubMessage field15 = 15;
-  optional bool field78 = 78;
-  optional int32 field67 = 67 [default=0];
-  optional int32 field68 = 68;
-  optional int32 field128 = 128 [default=0];
-  optional string field129 = 129 [default="xxxxxxxxxxxxxxxxxxxxx"];
-  optional int32 field131 = 131 [default=0];
-}
-
-message SpeedMessage1SubMessage {
-  optional int32 field1 = 1 [default=0];
-  optional int32 field2 = 2 [default=0];
-  optional int32 field3 = 3 [default=0];
-  optional string field15 = 15;
-  optional bool field12 = 12 [default=true];
-  optional int64 field13 = 13;
-  optional int64 field14 = 14;
-  optional int32 field16 = 16;
-  optional int32 field19 = 19 [default=2];
-  optional bool field20  = 20 [default=true];
-  optional bool field28 = 28 [default=true];
-  optional fixed64 field21 = 21;
-  optional int32 field22 = 22;
-  optional bool field23 = 23 [ default=false ];
-  optional bool field206 = 206 [default=false];
-  optional fixed32 field203 = 203;
-  optional int32 field204 = 204;
-  optional string field205 = 205;
-  optional uint64 field207 = 207;
-  optional uint64 field300 = 300;
-}
-
-message SpeedMessage2 {
-  optional string field1 = 1;
-  optional int64 field3 = 3;
-  optional int64 field4 = 4;
-  optional int64 field30 = 30;
-  optional bool field75  = 75 [default=false];
-  optional string field6 = 6;
-  optional bytes field2 = 2;
-  optional int32 field21 = 21 [default=0];
-  optional int32 field71 = 71;
-  optional float field25 = 25;
-  optional int32 field109 = 109 [default=0];
-  optional int32 field210 = 210 [default=0];
-  optional int32 field211 = 211 [default=0];
-  optional int32 field212 = 212 [default=0];
-  optional int32 field213 = 213 [default=0];
-  optional int32 field216 = 216 [default=0];
-  optional int32 field217 = 217 [default=0];
-  optional int32 field218 = 218 [default=0];
-  optional int32 field220 = 220 [default=0];
-  optional int32 field221 = 221 [default=0];
-  optional float field222 = 222 [default=0.0];
-  optional int32 field63 = 63;
-
-  repeated group Group1 = 10 {
-    required float field11 = 11;
-    optional float field26 = 26;
-    optional string field12 = 12;
-    optional string field13 = 13;
-    repeated string field14 = 14;
-    required uint64 field15 = 15;
-    optional int32 field5 = 5;
-    optional string field27 = 27;
-    optional int32 field28 = 28;
-    optional string field29 = 29;
-    optional string field16 = 16;
-    repeated string field22 = 22;
-    repeated int32 field73 = 73;
-    optional int32 field20 = 20 [default=0];
-    optional string field24 = 24;
-    optional SpeedMessage2GroupedMessage field31 = 31;
-  }
-  repeated string field128 = 128;
-  optional int64 field131 = 131;
-  repeated string field127 = 127;
-  optional int32 field129 = 129;
-  repeated int64 field130 = 130;
-  optional bool field205 = 205 [default=false];
-  optional bool field206 = 206 [default=false];
-}
-
-message SpeedMessage2GroupedMessage {
-  optional float field1 = 1;
-  optional float field2 = 2;
-  optional float field3 = 3 [default=0.0];
-  optional bool field4 = 4;
-  optional bool field5 = 5;
-  optional bool field6 = 6 [default=true];
-  optional bool field7 = 7 [default=false];
-  optional float field8 = 8;
-  optional bool field9 = 9;
-  optional float field10 = 10;
-  optional int64 field11 = 11;
-}

+ 0 - 44
csharp/protos/npp.language.xml

@@ -1,44 +0,0 @@
-<NotepadPlus>
-<!--
-Defines syntax highlighting for Notepad++.
-1. Install Notepad++ from http://notepad-plus-plus.org
-2. Open Notepad++, from the View menu, select "User-Defined Dialog..."
-3. Click the "Import..." button and select this file
-4. Restart Notepad++
-5. Open and edit any *.proto file
--->
-    <UserLang name="Proto Buffer" ext="proto">
-        <Settings>
-            <Global caseIgnored="no" />
-            <TreatAsSymbol comment="no" commentLine="yes" />
-            <Prefix words1="no" words2="no" words3="no" words4="yes" />
-        </Settings>
-        <KeywordLists>
-            <Keywords name="Delimiters">[00]00</Keywords>
-            <Keywords name="Folder+">{</Keywords>
-            <Keywords name="Folder-">}</Keywords>
-            <Keywords name="Operators">=</Keywords>
-            <Keywords name="Comment"> 1option 1package 1import 2; 0//</Keywords>
-            <Keywords name="Words1">message enum service extend</Keywords>
-            <Keywords name="Words2">required optional repeated extensions to rpc returns</Keywords>
-            <Keywords name="Words3">double float int32 int64 uint32 uint64 sint32 sint64 fixed32 fixed64 sfixed32 sfixed64 bool string bytes</Keywords>
-            <Keywords name="Words4"></Keywords>
-        </KeywordLists>
-        <Styles>
-            <WordsStyle name="DEFAULT" styleID="11" fgColor="000000" bgColor="FFFFFF" fontStyle="0" />
-            <WordsStyle name="FOLDEROPEN" styleID="12" fgColor="000000" bgColor="FFFFFF" fontStyle="1" />
-            <WordsStyle name="FOLDERCLOSE" styleID="13" fgColor="000000" bgColor="FFFFFF" fontStyle="1" />
-            <WordsStyle name="KEYWORD1" styleID="5" fgColor="0000FF" bgColor="FFFFFF" fontStyle="0" />
-            <WordsStyle name="KEYWORD2" styleID="6" fgColor="0080C0" bgColor="FFFFFF" fontStyle="0" />
-            <WordsStyle name="KEYWORD3" styleID="7" fgColor="0000FF" bgColor="FFFFFF" fontStyle="0" />
-            <WordsStyle name="KEYWORD4" styleID="8" fgColor="008040" bgColor="FFFFFF" fontStyle="0" />
-            <WordsStyle name="COMMENT" styleID="1" fgColor="008000" bgColor="FFFFFF" fontStyle="0" />
-            <WordsStyle name="COMMENT LINE" styleID="2" fgColor="949494" bgColor="FFFFFF" fontStyle="0" />
-            <WordsStyle name="NUMBER" styleID="4" fgColor="FF0000" bgColor="FFFFFF" fontStyle="0" />
-            <WordsStyle name="OPERATOR" styleID="10" fgColor="000000" bgColor="FFFFFF" fontStyle="0" />
-            <WordsStyle name="DELIMINER1" styleID="14" fgColor="800080" bgColor="FFFFFF" fontStyle="0" />
-            <WordsStyle name="DELIMINER2" styleID="15" fgColor="808080" bgColor="FFFFFF" fontStyle="0" />
-            <WordsStyle name="DELIMINER3" styleID="16" fgColor="000000" bgColor="FFFFFF" fontStyle="0" />
-        </Styles>
-    </UserLang>
-</NotepadPlus>

+ 0 - 31
csharp/protos/tutorial/addressbook.proto

@@ -1,31 +0,0 @@
-package tutorial;
- 
-import "google/protobuf/csharp_options.proto";
-option (google.protobuf.csharp_file_options).namespace = "Google.ProtocolBuffers.Examples.AddressBook";
-option (google.protobuf.csharp_file_options).umbrella_classname = "AddressBookProtos";
-
-option optimize_for = SPEED;
-
-message Person {
-  required string name = 1;
-  required int32 id = 2;        // Unique ID number for this person.
-  optional string email = 3;
- 
-  enum PhoneType {
-    MOBILE = 0;
-    HOME = 1;
-    WORK = 2;
-  }
- 
-  message PhoneNumber {
-    required string number = 1;
-    optional PhoneType type = 2 [default = HOME];
-  }
- 
-  repeated PhoneNumber phone = 4;
-}
- 
-// Our address book file is just one of these.
-message AddressBook {
-  repeated Person person = 1;
-}

+ 0 - 150
csharp/src/ProtoGen.Test/DependencyResolutionTest.cs

@@ -1,150 +0,0 @@
-#region Copyright notice and license
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://github.com/jskeet/dotnet-protobufs/
-// Original C++/Java/Python code:
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-#endregion
-
-using System.Collections.Generic;
-using Google.ProtocolBuffers.DescriptorProtos;
-using Google.ProtocolBuffers.Descriptors;
-using NUnit.Framework;
-
-namespace Google.ProtocolBuffers.ProtoGen
-{
-    /// <summary>
-    /// Tests for the dependency resolution in Generator.
-    /// </summary>
-    [TestFixture]
-    public class DependencyResolutionTest
-    {
-        [Test]
-        public void TwoDistinctFiles()
-        {
-            FileDescriptorProto first = new FileDescriptorProto.Builder {Name = "First"}.Build();
-            FileDescriptorProto second = new FileDescriptorProto.Builder {Name = "Second"}.Build();
-            var set = new List<FileDescriptorProto> { first, second };
-
-            IList<FileDescriptor> converted = Generator.ConvertDescriptors(CSharpFileOptions.DefaultInstance, set);
-            Assert.AreEqual(2, converted.Count);
-            Assert.AreEqual("First", converted[0].Name);
-            Assert.AreEqual(0, converted[0].Dependencies.Count);
-            Assert.AreEqual("Second", converted[1].Name);
-            Assert.AreEqual(0, converted[1].Dependencies.Count);
-        }
-
-        [Test]
-        public void FirstDependsOnSecond()
-        {
-            FileDescriptorProto first =
-                new FileDescriptorProto.Builder {Name = "First", DependencyList = {"Second"}}.Build();
-            FileDescriptorProto second = new FileDescriptorProto.Builder {Name = "Second"}.Build();
-            var set = new List<FileDescriptorProto> { first, second };
-            IList<FileDescriptor> converted = Generator.ConvertDescriptors(CSharpFileOptions.DefaultInstance, set);
-            Assert.AreEqual(2, converted.Count);
-            Assert.AreEqual("First", converted[0].Name);
-            Assert.AreEqual(1, converted[0].Dependencies.Count);
-            Assert.AreEqual(converted[1], converted[0].Dependencies[0]);
-            Assert.AreEqual("Second", converted[1].Name);
-            Assert.AreEqual(0, converted[1].Dependencies.Count);
-        }
-
-        [Test]
-        public void SecondDependsOnFirst()
-        {
-            FileDescriptorProto first = new FileDescriptorProto.Builder {Name = "First"}.Build();
-            FileDescriptorProto second =
-                new FileDescriptorProto.Builder {Name = "Second", DependencyList = {"First"}}.Build();
-            var set = new List<FileDescriptorProto> { first, second };
-            IList<FileDescriptor> converted = Generator.ConvertDescriptors(CSharpFileOptions.DefaultInstance, set);
-            Assert.AreEqual(2, converted.Count);
-            Assert.AreEqual("First", converted[0].Name);
-            Assert.AreEqual(0, converted[0].Dependencies.Count);
-            Assert.AreEqual("Second", converted[1].Name);
-            Assert.AreEqual(1, converted[1].Dependencies.Count);
-            Assert.AreEqual(converted[0], converted[1].Dependencies[0]);
-        }
-
-        [Test]
-        public void CircularDependency()
-        {
-            FileDescriptorProto first =
-                new FileDescriptorProto.Builder {Name = "First", DependencyList = {"Second"}}.Build();
-            FileDescriptorProto second =
-                new FileDescriptorProto.Builder {Name = "Second", DependencyList = {"First"}}.Build();
-            var set = new List<FileDescriptorProto> { first, second };
-            try
-            {
-                Generator.ConvertDescriptors(CSharpFileOptions.DefaultInstance, set);
-                Assert.Fail("Expected exception");
-            }
-            catch (DependencyResolutionException)
-            {
-                // Expected
-            }
-        }
-
-        [Test]
-        public void MissingDependency()
-        {
-            FileDescriptorProto first =
-                new FileDescriptorProto.Builder {Name = "First", DependencyList = {"Second"}}.Build();
-            var set = new List<FileDescriptorProto> { first };
-            try
-            {
-                Generator.ConvertDescriptors(CSharpFileOptions.DefaultInstance, set);
-                Assert.Fail("Expected exception");
-            }
-            catch (DependencyResolutionException)
-            {
-                // Expected
-            }
-        }
-
-        [Test]
-        public void SelfDependency()
-        {
-            FileDescriptorProto first =
-                new FileDescriptorProto.Builder {Name = "First", DependencyList = {"First"}}.Build();
-            var set = new List<FileDescriptorProto> { first };
-            try
-            {
-                Generator.ConvertDescriptors(CSharpFileOptions.DefaultInstance, set);
-                Assert.Fail("Expected exception");
-            }
-            catch (DependencyResolutionException)
-            {
-                // Expected
-            }
-        }
-    }
-}

+ 0 - 30
csharp/src/ProtoGen.Test/Properties/AssemblyInfo.cs

@@ -1,30 +0,0 @@
-using System.Reflection;
-using System.Runtime.CompilerServices;
-using System.Runtime.InteropServices;
-
-// General Information about an assembly is controlled through the following 
-// set of attributes. Change these attribute values to modify the information
-// associated with an assembly.
-
-[assembly: AssemblyTitle("ProtoGen.Test")]
-[assembly: AssemblyDescription("")]
-[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("ProtoGen.Test")]
-[assembly: AssemblyCopyright("Copyright ©  2008")]
-[assembly: AssemblyTrademark("")]
-[assembly: AssemblyCulture("")]
-
-// Version information for an assembly consists of the following four values:
-//
-//      Major Version
-//      Minor Version 
-//      Build Number
-//      Revision
-//
-// You can specify all the values or you can default the Build and Revision Numbers 
-// by using the '*' as shown below:
-// [assembly: AssemblyVersion("2.4.1.555")]
-
-[assembly: AssemblyVersion("2.4.1.555")]
-[assembly: AssemblyFileVersion("2.4.1.555")]

+ 0 - 99
csharp/src/ProtoGen.Test/ProtoGen.Test.csproj

@@ -1,99 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup>
-    <EnvironmentFlavor>CLIENTPROFILE</EnvironmentFlavor>
-    <EnvironmentTemplate>NET35</EnvironmentTemplate>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.30729</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{C268DA4C-4004-47DA-AF23-44C983281A68}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <AppDesignerFolder>Properties</AppDesignerFolder>
-    <RootNamespace>Google.ProtocolBuffers.ProtoGen</RootNamespace>
-    <AssemblyName>Google.ProtocolBuffers.ProtoGen.Test</AssemblyName>
-    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
-    <FileAlignment>512</FileAlignment>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>bin\NET35\Debug</OutputPath>
-    <IntermediateOutputPath>obj\NET35\Debug\</IntermediateOutputPath>
-    <DefineConstants>DEBUG;TRACE;$(EnvironmentFlavor);$(EnvironmentTemplate)</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>pdbonly</DebugType>
-    <Optimize>true</Optimize>
-    <OutputPath>bin\NET35\Release</OutputPath>
-    <IntermediateOutputPath>obj\NET35\Release\</IntermediateOutputPath>
-    <DefineConstants>TRACE;$(EnvironmentFlavor);$(EnvironmentTemplate)</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="nunit.framework">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>..\..\lib\NUnit\lib\nunit.framework.dll</HintPath>
-    </Reference>
-    <Reference Include="mscorlib" />
-    <Reference Include="System" />
-    <Reference Include="System.Data" />
-    <Reference Include="System.Xml" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="DependencyResolutionTest.cs" />
-    <Compile Include="Properties\AssemblyInfo.cs" />
-    <Compile Include="TempFile.cs" />
-    <Compile Include="TestPreprocessing.cs" />
-  </ItemGroup>
-  <ItemGroup>
-    <ProjectReference Include="..\ProtocolBuffers\ProtocolBuffers.csproj">
-      <Project>{6908BDCE-D925-43F3-94AC-A531E6DF2591}</Project>
-      <Name>ProtocolBuffers</Name>
-    </ProjectReference>
-    <ProjectReference Include="..\ProtoGen\ProtoGen.csproj">
-      <Project>{250ADE34-82FD-4BAE-86D5-985FBE589C4A}</Project>
-      <Name>ProtoGen</Name>
-    </ProjectReference>
-  </ItemGroup>
-  <ItemGroup>
-    <Content Include="..\..\lib\protoc.exe">
-      <Link>protoc.exe</Link>
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </Content>
-  </ItemGroup>
-  <ItemGroup>
-    <None Include="..\..\protos\google\protobuf\csharp_options.proto">
-      <Link>google\protobuf\csharp_options.proto</Link>
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </None>
-    <None Include="..\..\protos\google\protobuf\descriptor.proto">
-      <Link>google\protobuf\descriptor.proto</Link>
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </None>
-  </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>
-  -->
-  <PropertyGroup>
-    <StartAction>Program</StartAction>
-    <StartProgram>$(ProjectDir)..\..\lib\NUnit\tools\nunit-console.exe</StartProgram>
-    <StartArguments>/nologo /noshadow /labels /wait $(AssemblyName).dll</StartArguments>
-    <StartWorkingDirectory>$(ProjectDir)$(OutputPath)</StartWorkingDirectory>
-  </PropertyGroup>
-</Project>

+ 0 - 683
csharp/src/ProtoGen.Test/ProtocGenCsUnittests.cs

@@ -1,683 +0,0 @@
-#region Copyright notice and license
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://github.com/jskeet/dotnet-protobufs/
-// Original C++/Java/Python code:
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-#endregion
-
-using NUnit.Framework;
-using System;
-using System.Collections.Generic;
-using System.Diagnostics;
-using System.IO;
-using System.Reflection;
-using System.Text;
-
-namespace Google.ProtocolBuffers.ProtoGen
-{
-    /// <summary>
-    /// Tests protoc-gen-cs plugin.
-    /// </summary>
-    [TestFixture]
-    [Category("Preprocessor")]
-    public partial class ProtocGenCsUnittests
-    {
-        private static readonly string TempPath = Path.Combine(Path.GetTempPath(), "protoc-gen-cs.Test");
-
-        private const string DefaultProto =
-            @"
-package nunit.simple;
-// Test a very simple message.
-message MyMessage {
-  optional string name = 1;
-}";
-
-        #region TestFixture SetUp/TearDown
-
-        private static readonly string OriginalWorkingDirectory = Environment.CurrentDirectory;
-
-        private StringBuilder buffer = new StringBuilder();
-
-        [TestFixtureSetUp]
-        public virtual void Setup()
-        {
-            Teardown();
-            Directory.CreateDirectory(TempPath);
-            Environment.CurrentDirectory = TempPath;
-            this.buffer.Length = 0;
-        }
-
-        [TestFixtureTearDown]
-        public virtual void Teardown()
-        {
-            Environment.CurrentDirectory = OriginalWorkingDirectory;
-            if (Directory.Exists(TempPath))
-            {
-                Directory.Delete(TempPath, true);
-            }
-        }
-
-        #endregion
-
-        #region Helper Methods RunProtoGen / RunCsc
-
-        private void RunProtoc(int expect, string protoFile, params string[] args)
-        {
-            string protoPath = string.Format("-I. -I\"{0}\"", OriginalWorkingDirectory);
-            string plugin = string.Format("--plugin=\"{0}\"", Path.Combine(OriginalWorkingDirectory, "protoc-gen-cs.exe"));
-            string csOut = args.Length == 0 ? "--cs_out=." : string.Format("--cs_out=\"{0}:.\"", string.Join(" ", args));
-            // Start the child process.
-            Process p = new Process();
-            // Redirect the output stream of the child process.
-            p.StartInfo.CreateNoWindow = true;
-            p.StartInfo.UseShellExecute = false;
-            p.StartInfo.RedirectStandardError = true;
-            p.StartInfo.RedirectStandardOutput = true;
-            p.StartInfo.WorkingDirectory = TempPath;
-            p.StartInfo.FileName = Path.Combine(OriginalWorkingDirectory, "protoc.exe");
-            p.StartInfo.Arguments = string.Join(" ", new string[] { plugin, csOut, protoPath, protoFile });
-            p.Start();
-            // Read the output stream first and then wait.
-            buffer.AppendLine(string.Format("{0}> \"{1}\" {2}", p.StartInfo.WorkingDirectory, p.StartInfo.FileName, p.StartInfo.Arguments));
-            buffer.AppendLine(p.StandardError.ReadToEnd());
-            buffer.AppendLine(p.StandardOutput.ReadToEnd());
-            p.WaitForExit();
-            Assert.AreEqual(expect, p.ExitCode, this.buffer.ToString());
-        }
-
-        private Assembly RunCsc(int expect, params string[] sources)
-        {
-            using (TempFile tempDll = new TempFile(String.Empty))
-            {
-                tempDll.ChangeExtension(".dll");
-                List<string> args = new List<string>();
-                args.Add("/nologo");
-                args.Add("/target:library");
-                args.Add("/debug-");
-                args.Add(String.Format(@"""/out:{0}""", tempDll.TempPath));
-                args.Add("/r:System.dll");
-                args.Add(String.Format(@"""/r:{0}""",
-                                       typeof(Google.ProtocolBuffers.DescriptorProtos.DescriptorProto).Assembly.
-                                           Location));
-                args.AddRange(sources);
-
-                string exe = Path.Combine(System.Runtime.InteropServices.RuntimeEnvironment.GetRuntimeDirectory(),
-                                          "csc.exe");
-                ProcessStartInfo psi = new ProcessStartInfo(exe);
-                psi.WorkingDirectory = TempPath;
-                psi.CreateNoWindow = true;
-                psi.UseShellExecute = false;
-                psi.RedirectStandardOutput = true;
-                psi.RedirectStandardError = true;
-                psi.Arguments = string.Join(" ", args.ToArray());
-                Process p = Process.Start(psi);
-                buffer.AppendLine(string.Format("{0}> \"{1}\" {2}", p.StartInfo.WorkingDirectory, p.StartInfo.FileName, p.StartInfo.Arguments));
-                buffer.AppendLine(p.StandardError.ReadToEnd());
-                buffer.AppendLine(p.StandardOutput.ReadToEnd());
-                p.WaitForExit();
-                Assert.AreEqual(expect, p.ExitCode, this.buffer.ToString());
-
-                Assembly asm = null;
-                if (p.ExitCode == 0)
-                {
-                    byte[] allbytes = File.ReadAllBytes(tempDll.TempPath);
-                    asm = Assembly.Load(allbytes);
-
-                    foreach (Type t in asm.GetTypes())
-                    {
-                        Debug.WriteLine(t.FullName, asm.FullName);
-                    }
-                }
-                return asm;
-            }
-        }
-
-        #endregion
-
-        // *******************************************************************
-        // The following tests excercise options for protogen.exe
-        // *******************************************************************
-
-        [Test]
-        public void TestProtoFile()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach(test + ".cs"))
-            using (ProtoFile proto = new ProtoFile(test + ".proto", DefaultProto))
-            {
-                RunProtoc(0, proto.TempPath);
-                Assembly a = RunCsc(0, source.TempPath);
-                //assert that the message type is in the expected namespace
-                Type t = a.GetType("nunit.simple.MyMessage", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t), "Expect an IMessage");
-                //assert that we can find the static descriptor type
-                a.GetType("nunit.simple." + test, true, true);
-            }
-        }
-
-        [Test]
-        public void TestProtoFileWithConflictingType()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach(test + ".cs"))
-            using (
-                ProtoFile proto = new ProtoFile(test + ".proto",
-                                                @"
-package nunit.simple;
-// Test a very simple message.
-message " +
-                                                test + @" {
-  optional string name = 1;
-} "))
-            {
-                RunProtoc(0, proto.TempPath);
-                Assembly a = RunCsc(0, source.TempPath);
-                //assert that the message type is in the expected namespace
-                Type t = a.GetType("nunit.simple." + test, true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t), "Expect an IMessage");
-                //assert that we can find the static descriptor type
-                a.GetType("nunit.simple.Proto." + test, true, true);
-            }
-        }
-
-        [Test]
-        public void TestProtoFileWithNamespace()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach(test + ".cs"))
-            using (ProtoFile proto = new ProtoFile(test + ".proto", DefaultProto))
-            {
-                RunProtoc(0, proto.TempPath, "-namespace=MyNewNamespace");
-                Assembly a = RunCsc(0, source.TempPath);
-                //assert that the message type is in the expected namespace
-                Type t = a.GetType("MyNewNamespace.MyMessage", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t), "Expect an IMessage");
-                //assert that we can find the static descriptor type
-                a.GetType("MyNewNamespace." + test, true, true);
-            }
-        }
-
-        [Test]
-        public void TestProtoFileWithUmbrellaClassName()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach("MyUmbrellaClassname.cs"))
-            using (ProtoFile proto = new ProtoFile(test + ".proto", DefaultProto))
-            {
-                RunProtoc(0, proto.TempPath, "/umbrella_classname=MyUmbrellaClassname");
-                Assembly a = RunCsc(0, source.TempPath);
-                //assert that the message type is in the expected namespace
-                Type t = a.GetType("nunit.simple.MyMessage", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t), "Expect an IMessage");
-                //assert that we can find the static descriptor type
-                a.GetType("nunit.simple.MyUmbrellaClassname", true, true);
-            }
-        }
-
-        [Test]
-        public void TestProtoFileWithNestedClass()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach(test + ".cs"))
-            using (ProtoFile proto = new ProtoFile(test + ".proto", DefaultProto))
-            {
-                RunProtoc(0, proto.TempPath, "-nest_classes=true");
-                Assembly a = RunCsc(0, source.TempPath);
-                //assert that the message type is in the expected namespace
-                Type t = a.GetType("nunit.simple." + test + "+MyMessage", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t), "Expect an IMessage");
-                //assert that we can find the static descriptor type
-                a.GetType("nunit.simple." + test, true, true);
-            }
-        }
-
-        [Test]
-        public void TestProtoFileWithExpandedNsDirectories()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach(@"nunit\simple\" + test + ".cs"))
-            using (ProtoFile proto = new ProtoFile(test + ".proto", DefaultProto))
-            {
-                RunProtoc(0, proto.TempPath, "-expand_namespace_directories=true");
-                Assembly a = RunCsc(0, source.TempPath);
-                //assert that the message type is in the expected namespace
-                Type t = a.GetType("nunit.simple.MyMessage", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t), "Expect an IMessage");
-                //assert that we can find the static descriptor type
-                a.GetType("nunit.simple." + test, true, true);
-            }
-        }
-
-        [Test]
-        public void TestProtoFileWithNewExtension()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach(test + ".Generated.cs"))
-            using (ProtoFile proto = new ProtoFile(test + ".proto", DefaultProto))
-            {
-                RunProtoc(0, proto.TempPath, "-file_extension=.Generated.cs");
-                Assembly a = RunCsc(0, source.TempPath);
-                //assert that the message type is in the expected namespace
-                Type t = a.GetType("nunit.simple.MyMessage", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t), "Expect an IMessage");
-                //assert that we can find the static descriptor type
-                a.GetType("nunit.simple." + test, true, true);
-            }
-        }
-
-        [Test]
-        public void TestProtoFileWithUmbrellaNamespace()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach(test + ".cs"))
-            using (ProtoFile proto = new ProtoFile(test + ".proto", DefaultProto))
-            {
-                RunProtoc(0, proto.TempPath, "-umbrella_namespace=MyUmbrella.Namespace");
-                Assembly a = RunCsc(0, source.TempPath);
-                //assert that the message type is in the expected namespace
-                Type t = a.GetType("nunit.simple.MyMessage", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t), "Expect an IMessage");
-                //assert that we can find the static descriptor type
-                a.GetType("nunit.simple.MyUmbrella.Namespace." + test, true, true);
-            }
-        }
-
-        [Test]
-        public void TestProtoFileWithIgnoredUmbrellaNamespaceDueToNesting()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach(test + ".cs"))
-            using (ProtoFile proto = new ProtoFile(test + ".proto", DefaultProto))
-            {
-                RunProtoc(0, proto.TempPath, "-nest_classes=true", "-umbrella_namespace=MyUmbrella.Namespace");
-                Assembly a = RunCsc(0, source.TempPath);
-                //assert that the message type is in the expected namespace
-                Type t = a.GetType("nunit.simple." + test + "+MyMessage", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t), "Expect an IMessage");
-                //assert that we can find the static descriptor type
-                a.GetType("nunit.simple." + test, true, true);
-            }
-        }
-
-        [Test]
-        public void TestProtoFileWithExplicitEmptyUmbrellaNamespace()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach(test + ".cs"))
-            using (
-                ProtoFile proto = new ProtoFile(test + ".proto",
-                                                @"
-package nunit.simple;
-// Test a very simple message.
-message " +
-                                                test + @" {
-  optional string name = 1;
-} "))
-            {
-                //Forces the umbrella class to not use a namespace even if a collision with a type is detected.
-                RunProtoc(0, proto.TempPath, "-umbrella_namespace=");
-                //error CS0441: 'nunit.simple.TestProtoFileWithExplicitEmptyUmbrellaNamespace': a class cannot be both static and sealed
-                RunCsc(1, source.TempPath);
-            }
-        }
-
-        [Test]
-        public void TestProtoFileWithNewOutputFolder()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach(@"generated-code\" + test + ".cs"))
-            using (ProtoFile proto = new ProtoFile(test + ".proto", DefaultProto))
-            {
-                RunProtoc(1, proto.TempPath, "-output_directory=generated-code");
-                Directory.CreateDirectory("generated-code");
-                RunProtoc(0, proto.TempPath, "-output_directory=generated-code");
-                Assembly a = RunCsc(0, source.TempPath);
-                //assert that the message type is in the expected namespace
-                Type t = a.GetType("nunit.simple.MyMessage", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t), "Expect an IMessage");
-                //assert that we can find the static descriptor type
-                a.GetType("nunit.simple." + test, true, true);
-            }
-        }
-
-        [Test]
-        public void TestProtoFileAndIgnoreGoogleProtobuf()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach(test + ".cs"))
-            using (
-                ProtoFile proto = new ProtoFile(test + ".proto",
-                                                @"
-import ""google/protobuf/csharp_options.proto"";
-option (google.protobuf.csharp_file_options).namespace = ""MyNewNamespace"";
-" +
-                                                DefaultProto))
-            {
-                string google = Path.Combine(TempPath, "google\\protobuf");
-                Directory.CreateDirectory(google);
-                foreach (string file in Directory.GetFiles(Path.Combine(OriginalWorkingDirectory, "google\\protobuf")))
-                {
-                    File.Copy(file, Path.Combine(google, Path.GetFileName(file)));
-                }
-
-                Assert.AreEqual(0, Directory.GetFiles(TempPath, "*.cs").Length);
-                RunProtoc(0, proto.TempPath);
-                Assert.AreEqual(1, Directory.GetFiles(TempPath, "*.cs").Length);
-
-                Assembly a = RunCsc(0, source.TempPath);
-                //assert that the message type is in the expected namespace
-                Type t = a.GetType("MyNewNamespace.MyMessage", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t), "Expect an IMessage");
-                //assert that we can find the static descriptor type
-                a.GetType("MyNewNamespace." + test, true, true);
-            }
-        }
-
-        [Test]
-        public void TestProtoFileWithoutIgnoreGoogleProtobuf()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach(test + ".cs"))
-            using (
-                ProtoFile proto = new ProtoFile(test + ".proto",
-                                                @"
-import ""google/protobuf/csharp_options.proto"";
-option (google.protobuf.csharp_file_options).namespace = ""MyNewNamespace"";
-" +
-                                                DefaultProto))
-            {
-                string google = Path.Combine(TempPath, "google\\protobuf");
-                Directory.CreateDirectory(google);
-                foreach (string file in Directory.GetFiles(Path.Combine(OriginalWorkingDirectory, "google\\protobuf")))
-                {
-                    File.Copy(file, Path.Combine(google, Path.GetFileName(file)));
-                }
-
-                Assert.AreEqual(0, Directory.GetFiles(TempPath, "*.cs").Length);
-                //Without the option this fails due to being unable to resolve google/protobuf descriptors
-                RunProtoc(0, proto.TempPath);
-            }
-        }
-
-        // *******************************************************************
-        // The following tests excercise options for protoc.exe
-        // *******************************************************************
-
-        [Test]
-        public void TestProtoFileWithIncludeImports()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach(test + ".cs"))
-            using (
-                ProtoFile proto = new ProtoFile(test + ".proto",
-                                                @"
-import ""google/protobuf/csharp_options.proto"";
-option (google.protobuf.csharp_file_options).namespace = ""MyNewNamespace"";
-
-package nunit.simple;
-// Test a very simple message.
-message MyMessage {
-  optional string name = 1;
-} ")
-                )
-            {
-                string google = Path.Combine(TempPath, "google\\protobuf");
-                Directory.CreateDirectory(google);
-                foreach (string file in Directory.GetFiles(Path.Combine(OriginalWorkingDirectory, "google\\protobuf")))
-                {
-                    File.Copy(file, Path.Combine(google, Path.GetFileName(file)));
-                }
-
-                Assert.AreEqual(0, Directory.GetFiles(TempPath, "*.cs").Length);
-                //if you specify the protoc option --include_imports this should build three source files
-                RunProtoc(0, proto.TempPath);
-                Assert.AreEqual(1, Directory.GetFiles(TempPath, "*.cs").Length);
-
-                //you can (and should) simply omit the inclusion of the extra source files in your project
-                Assembly a = RunCsc(0, source.TempPath);
-                //assert that the message type is in the expected namespace
-                Type t = a.GetType("MyNewNamespace.MyMessage", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t), "Expect an IMessage");
-                //assert that we can find the static descriptor type
-                a.GetType("MyNewNamespace." + test, true, true);
-            }
-        }
-
-        //Seems the --proto_path or -I option is non-functional for me.  Maybe others have luck?
-        [Test]
-        public void TestProtoFileInDifferentDirectory()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach(test + ".cs"))
-            using (ProtoFile proto = new ProtoFile(test + ".proto", DefaultProto))
-            {
-                Environment.CurrentDirectory = OriginalWorkingDirectory;
-                RunProtoc(0, proto.TempPath);
-                Assembly a = RunCsc(0, source.TempPath);
-                //assert that the message type is in the expected namespace
-                Type t = a.GetType("nunit.simple.MyMessage", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t), "Expect an IMessage");
-                //assert that we can find the static descriptor type
-                a.GetType("nunit.simple." + test, true, true);
-            }
-        }
-
-        // *******************************************************************
-        // Handling of mutliple input files
-        // *******************************************************************
-
-        [Test]
-        public void TestMultipleProtoFiles()
-        {
-            Setup();
-            using (TempFile source1 = TempFile.Attach("MyMessage.cs"))
-            using (
-                ProtoFile proto1 = new ProtoFile("MyMessage.proto",
-                                                 @"
-package nunit.simple;
-// Test a very simple message.
-message MyMessage {
-  optional string name = 1;
-}")
-                )
-            using (TempFile source2 = TempFile.Attach("MyMessageList.cs"))
-            using (
-                ProtoFile proto2 = new ProtoFile("MyMessageList.proto",
-                                                 @"
-package nunit.simple;
-import ""MyMessage.proto"";
-// Test a very simple message.
-message MyMessageList {
-  repeated MyMessage messages = 1;
-}")
-                )
-            {
-                RunProtoc(0, proto1.TempPath);
-                RunProtoc(0, proto2.TempPath);
-                Assembly a = RunCsc(0, source1.TempPath, source2.TempPath);
-                //assert that the message type is in the expected namespace
-                Type t1 = a.GetType("nunit.simple.MyMessage", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t1), "Expect an IMessage");
-                //assert that the message type is in the expected namespace
-                Type t2 = a.GetType("nunit.simple.MyMessageList", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t2), "Expect an IMessage");
-                //assert that we can find the static descriptor type
-                a.GetType("nunit.simple.Proto.MyMessage", true, true);
-                a.GetType("nunit.simple.Proto.MyMessageList", true, true);
-            }
-        }
-
-        [Test]
-        public void TestOneProtoFileWithBufferFile()
-        {
-            Setup();
-            using (TempFile source1 = TempFile.Attach("MyMessage.cs"))
-            using (
-                ProtoFile proto1 = new ProtoFile("MyMessage.proto",
-                                                 @"
-package nunit.simple;
-// Test a very simple message.
-message MyMessage {
-  optional string name = 1;
-}")
-                )
-            using (TempFile source2 = TempFile.Attach("MyMessageList.cs"))
-            using (
-                ProtoFile proto2 = new ProtoFile("MyMessageList.proto",
-                                                 @"
-package nunit.simple;
-import ""MyMessage.proto"";
-// Test a very simple message.
-message MyMessageList {
-  repeated MyMessage messages = 1;
-}")
-                )
-            {
-                //build the proto buffer for MyMessage
-                RunProtoc(0, proto1.TempPath);
-                //build the MyMessageList proto-buffer and generate code by including MyMessage.pb
-                RunProtoc(0, proto2.TempPath);
-                Assembly a = RunCsc(0, source1.TempPath, source2.TempPath);
-                //assert that the message type is in the expected namespace
-                Type t1 = a.GetType("nunit.simple.MyMessage", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t1), "Expect an IMessage");
-                //assert that the message type is in the expected namespace
-                Type t2 = a.GetType("nunit.simple.MyMessageList", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t2), "Expect an IMessage");
-                //assert that we can find the static descriptor type
-                a.GetType("nunit.simple.Proto.MyMessage", true, true);
-                a.GetType("nunit.simple.Proto.MyMessageList", true, true);
-            }
-        }
-
-        [Test]
-        public void TestProtoFileWithService()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach(test + ".cs"))
-            using (ProtoFile proto = new ProtoFile(test + ".proto",
-@"
-import ""google/protobuf/csharp_options.proto"";
-option (google.protobuf.csharp_file_options).service_generator_type = GENERIC;
-
-package nunit.simple;
-// Test a very simple message.
-message MyMessage {
-  optional string name = 1;
-}
-// test a very simple service.
-service TestService {
-  rpc Execute (MyMessage) returns (MyMessage);
-}"))
-            {
-                CopyInGoogleProtoFiles();
-
-                RunProtoc(0, proto.TempPath, "-nest_classes=false");
-                Assert.AreEqual(1, Directory.GetFiles(TempPath, "*.cs").Length);
-
-                Assembly a = RunCsc(0, source.TempPath);
-                //assert that the service type is in the expected namespace
-                Type t1 = a.GetType("nunit.simple.TestService", true, true);
-                Assert.IsTrue(typeof(IService).IsAssignableFrom(t1), "Expect an IService");
-                Assert.IsTrue(t1.IsAbstract, "Expect abstract class");
-                //assert that the Stub subclass type is in the expected namespace
-                Type t2 = a.GetType("nunit.simple.TestService+Stub", true, true);
-                Assert.IsTrue(t1.IsAssignableFrom(t2), "Expect a sub of TestService");
-                Assert.IsFalse(t2.IsAbstract, "Expect concrete class");
-            }
-        }
-
-        [Test]
-        public void TestProtoFileWithServiceInternal()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach(test + ".cs"))
-            using (ProtoFile proto = new ProtoFile(test + ".proto",
-@"
-import ""google/protobuf/csharp_options.proto"";
-option (google.protobuf.csharp_file_options).service_generator_type = GENERIC;
-
-package nunit.simple;
-// Test a very simple message.
-message MyMessage {
-  optional string name = 1;
-}
-// test a very simple service.
-service TestService {
-  rpc Execute (MyMessage) returns (MyMessage);
-}"))
-            {
-                CopyInGoogleProtoFiles();
-
-                RunProtoc(0, proto.TempPath, "-nest_classes=false", "-public_classes=false");
-                Assert.AreEqual(1, Directory.GetFiles(TempPath, "*.cs").Length);
-
-                Assembly a = RunCsc(0, source.TempPath);
-                //assert that the service type is in the expected namespace
-                Type t1 = a.GetType("nunit.simple.TestService", true, true);
-                Assert.IsTrue(typeof(IService).IsAssignableFrom(t1), "Expect an IService");
-                Assert.IsTrue(t1.IsAbstract, "Expect abstract class");
-                //assert that the Stub subclass type is in the expected namespace
-                Type t2 = a.GetType("nunit.simple.TestService+Stub", true, true);
-                Assert.IsTrue(t1.IsAssignableFrom(t2), "Expect a sub of TestService");
-                Assert.IsFalse(t2.IsAbstract, "Expect concrete class");
-            }
-        }
-
-        private static void CopyInGoogleProtoFiles()
-        {
-            string google = Path.Combine(TempPath, "google\\protobuf");
-            Directory.CreateDirectory(google);
-            foreach (string file in Directory.GetFiles(Path.Combine(OriginalWorkingDirectory, "google\\protobuf")))
-            {
-                File.Copy(file, Path.Combine(google, Path.GetFileName(file)));
-            }
-        }
-    }
-}

+ 0 - 59
csharp/src/ProtoGen.Test/TempFile.cs

@@ -1,59 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.IO;
-using System.Text;
-
-namespace Google.ProtocolBuffers.ProtoGen
-{
-    internal class ProtoFile : TempFile
-    {
-        public ProtoFile(string filename, string contents)
-            : base(filename, contents)
-        {
-        }
-    }
-
-    internal class TempFile : IDisposable
-    {
-        private string tempFile;
-
-        public static TempFile Attach(string path)
-        {
-            return new TempFile(path, null);
-        }
-
-        protected TempFile(string filename, string contents)
-        {
-            tempFile = filename;
-            if (contents != null)
-            {
-                File.WriteAllText(tempFile, contents, new UTF8Encoding(false));
-            }
-        }
-
-        public TempFile(string contents)
-            : this(Path.GetTempFileName(), contents)
-        {
-        }
-
-        public string TempPath
-        {
-            get { return tempFile; }
-        }
-
-        public void ChangeExtension(string ext)
-        {
-            string newFile = Path.ChangeExtension(tempFile, ext);
-            File.Move(tempFile, newFile);
-            tempFile = newFile;
-        }
-
-        public void Dispose()
-        {
-            if (File.Exists(tempFile))
-            {
-                File.Delete(tempFile);
-            }
-        }
-    }
-}

+ 0 - 733
csharp/src/ProtoGen.Test/TestPreprocessing.cs

@@ -1,733 +0,0 @@
-#region Copyright notice and license
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://github.com/jskeet/dotnet-protobufs/
-// Original C++/Java/Python code:
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-#endregion
-
-using System;
-using System.Collections.Generic;
-using System.Diagnostics;
-using System.IO;
-using System.Reflection;
-using NUnit.Framework;
-
-namespace Google.ProtocolBuffers.ProtoGen
-{
-    [TestFixture]
-    [Category("Preprocessor")]
-    public partial class TestPreprocessing
-    {
-        private static readonly string TempPath = Path.Combine(Path.GetTempPath(), "proto-gen-test");
-
-        private const string DefaultProto =
-            @"
-package nunit.simple;
-// Test a very simple message.
-message MyMessage {
-  optional string name = 1;
-}";
-
-        #region TestFixture SetUp/TearDown
-
-        private static readonly string OriginalWorkingDirectory = Environment.CurrentDirectory;
-
-        [TestFixtureSetUp]
-        public virtual void Setup()
-        {
-            Teardown();
-            Directory.CreateDirectory(TempPath);
-            Environment.CurrentDirectory = TempPath;
-        }
-
-        [TestFixtureTearDown]
-        public virtual void Teardown()
-        {
-            Environment.CurrentDirectory = OriginalWorkingDirectory;
-            if (Directory.Exists(TempPath))
-            {
-                Directory.Delete(TempPath, true);
-            }
-        }
-
-        #endregion
-
-        #region Helper Methods RunProtoGen / RunCsc
-
-        private void RunProtoGen(int expect, params string[] args)
-        {
-            TextWriter tout = Console.Out, terr = Console.Error;
-            StringWriter temp = new StringWriter();
-            Console.SetOut(temp);
-            Console.SetError(temp);
-            try
-            {
-                Assert.AreEqual(expect, ProgramPreprocess.Run(args), "ProtoGen Failed: {0}", temp);
-            }
-            finally
-            {
-                Console.SetOut(tout);
-                Console.SetError(terr);
-            }
-        }
-
-        private Assembly RunCsc(int expect, params string[] sources)
-        {
-            using (TempFile tempDll = new TempFile(String.Empty))
-            {
-                tempDll.ChangeExtension(".dll");
-                List<string> args = new List<string>();
-                args.Add("/nologo");
-                args.Add("/target:library");
-                args.Add("/debug-");
-                args.Add(String.Format(@"""/out:{0}""", tempDll.TempPath));
-                args.Add("/r:System.dll");
-                args.Add(String.Format(@"""/r:{0}""",
-                                       typeof(Google.ProtocolBuffers.DescriptorProtos.DescriptorProto).Assembly.
-                                           Location));
-                args.AddRange(sources);
-
-                string exe = Path.Combine(System.Runtime.InteropServices.RuntimeEnvironment.GetRuntimeDirectory(),
-                                          "csc.exe");
-                ProcessStartInfo psi = new ProcessStartInfo(exe);
-                psi.CreateNoWindow = true;
-                psi.UseShellExecute = false;
-                psi.RedirectStandardOutput = true;
-                psi.RedirectStandardError = true;
-                psi.Arguments = string.Join(" ", args.ToArray());
-                Process p = Process.Start(psi);
-                p.WaitForExit();
-                string errorText = p.StandardOutput.ReadToEnd() + p.StandardError.ReadToEnd();
-                Assert.AreEqual(expect, p.ExitCode, "CSC.exe Failed: {0}", errorText);
-
-                Assembly asm = null;
-                if (p.ExitCode == 0)
-                {
-                    byte[] allbytes = File.ReadAllBytes(tempDll.TempPath);
-                    asm = Assembly.Load(allbytes);
-
-                    foreach (Type t in asm.GetTypes())
-                    {
-                        Debug.WriteLine(t.FullName, asm.FullName);
-                    }
-                }
-                return asm;
-            }
-        }
-
-        #endregion
-
-        // *******************************************************************
-        // The following tests excercise options for protogen.exe
-        // *******************************************************************
-
-        [Test]
-        public void TestProtoFile()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach(test + ".cs"))
-            using (ProtoFile proto = new ProtoFile(test + ".proto", DefaultProto))
-            {
-                RunProtoGen(0, proto.TempPath);
-                Assembly a = RunCsc(0, source.TempPath);
-                //assert that the message type is in the expected namespace
-                Type t = a.GetType("nunit.simple.MyMessage", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t), "Expect an IMessage");
-                //assert that we can find the static descriptor type
-                a.GetType("nunit.simple." + test, true, true);
-            }
-        }
-
-        [Test]
-        public void TestProtoFileWithConflictingType()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach(test + ".cs"))
-            using (
-                ProtoFile proto = new ProtoFile(test + ".proto",
-                                                @"
-package nunit.simple;
-// Test a very simple message.
-message " +
-                                                test + @" {
-  optional string name = 1;
-} "))
-            {
-                RunProtoGen(0, proto.TempPath);
-                Assembly a = RunCsc(0, source.TempPath);
-                //assert that the message type is in the expected namespace
-                Type t = a.GetType("nunit.simple." + test, true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t), "Expect an IMessage");
-                //assert that we can find the static descriptor type
-                a.GetType("nunit.simple.Proto." + test, true, true);
-            }
-        }
-
-        [Test]
-        public void TestProtoFileWithNamespace()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach(test + ".cs"))
-            using (ProtoFile proto = new ProtoFile(test + ".proto", DefaultProto))
-            {
-                RunProtoGen(0, proto.TempPath, "-namespace:MyNewNamespace");
-                Assembly a = RunCsc(0, source.TempPath);
-                //assert that the message type is in the expected namespace
-                Type t = a.GetType("MyNewNamespace.MyMessage", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t), "Expect an IMessage");
-                //assert that we can find the static descriptor type
-                a.GetType("MyNewNamespace." + test, true, true);
-            }
-        }
-
-        [Test]
-        public void TestProtoFileWithUmbrellaClassName()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach("MyUmbrellaClassname.cs"))
-            using (ProtoFile proto = new ProtoFile(test + ".proto", DefaultProto))
-            {
-                RunProtoGen(0, proto.TempPath, "/umbrella_classname=MyUmbrellaClassname");
-                Assembly a = RunCsc(0, source.TempPath);
-                //assert that the message type is in the expected namespace
-                Type t = a.GetType("nunit.simple.MyMessage", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t), "Expect an IMessage");
-                //assert that we can find the static descriptor type
-                a.GetType("nunit.simple.MyUmbrellaClassname", true, true);
-            }
-        }
-
-        [Test]
-        public void TestProtoFileWithNestedClass()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach(test + ".cs"))
-            using (ProtoFile proto = new ProtoFile(test + ".proto", DefaultProto))
-            {
-                RunProtoGen(0, proto.TempPath, "-nest_classes:true");
-                Assembly a = RunCsc(0, source.TempPath);
-                //assert that the message type is in the expected namespace
-                Type t = a.GetType("nunit.simple." + test + "+MyMessage", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t), "Expect an IMessage");
-                //assert that we can find the static descriptor type
-                a.GetType("nunit.simple." + test, true, true);
-            }
-        }
-
-        [Test]
-        public void TestProtoFileWithExpandedNsDirectories()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach(@"nunit\simple\" + test + ".cs"))
-            using (ProtoFile proto = new ProtoFile(test + ".proto", DefaultProto))
-            {
-                RunProtoGen(0, proto.TempPath, "-expand_namespace_directories:true");
-                Assembly a = RunCsc(0, source.TempPath);
-                //assert that the message type is in the expected namespace
-                Type t = a.GetType("nunit.simple.MyMessage", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t), "Expect an IMessage");
-                //assert that we can find the static descriptor type
-                a.GetType("nunit.simple." + test, true, true);
-            }
-        }
-
-        [Test]
-        public void TestProtoFileWithNewExtension()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach(test + ".Generated.cs"))
-            using (ProtoFile proto = new ProtoFile(test + ".proto", DefaultProto))
-            {
-                RunProtoGen(0, proto.TempPath, "-file_extension:.Generated.cs");
-                Assembly a = RunCsc(0, source.TempPath);
-                //assert that the message type is in the expected namespace
-                Type t = a.GetType("nunit.simple.MyMessage", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t), "Expect an IMessage");
-                //assert that we can find the static descriptor type
-                a.GetType("nunit.simple." + test, true, true);
-            }
-        }
-
-        [Test]
-        public void TestProtoFileWithUmbrellaNamespace()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach(test + ".cs"))
-            using (ProtoFile proto = new ProtoFile(test + ".proto", DefaultProto))
-            {
-                RunProtoGen(0, proto.TempPath, "-umbrella_namespace:MyUmbrella.Namespace");
-                Assembly a = RunCsc(0, source.TempPath);
-                //assert that the message type is in the expected namespace
-                Type t = a.GetType("nunit.simple.MyMessage", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t), "Expect an IMessage");
-                //assert that we can find the static descriptor type
-                a.GetType("nunit.simple.MyUmbrella.Namespace." + test, true, true);
-            }
-        }
-
-        [Test]
-        public void TestProtoFileWithIgnoredUmbrellaNamespaceDueToNesting()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach(test + ".cs"))
-            using (ProtoFile proto = new ProtoFile(test + ".proto", DefaultProto))
-            {
-                RunProtoGen(0, proto.TempPath, "-nest_classes:true", "-umbrella_namespace:MyUmbrella.Namespace");
-                Assembly a = RunCsc(0, source.TempPath);
-                //assert that the message type is in the expected namespace
-                Type t = a.GetType("nunit.simple." + test + "+MyMessage", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t), "Expect an IMessage");
-                //assert that we can find the static descriptor type
-                a.GetType("nunit.simple." + test, true, true);
-            }
-        }
-
-        [Test]
-        public void TestProtoFileWithExplicitEmptyUmbrellaNamespace()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach(test + ".cs"))
-            using (
-                ProtoFile proto = new ProtoFile(test + ".proto",
-                                                @"
-package nunit.simple;
-// Test a very simple message.
-message " +
-                                                test + @" {
-  optional string name = 1;
-} "))
-            {
-                //Forces the umbrella class to not use a namespace even if a collision with a type is detected.
-                RunProtoGen(0, proto.TempPath, "-umbrella_namespace:");
-                //error CS0441: 'nunit.simple.TestProtoFileWithExplicitEmptyUmbrellaNamespace': a class cannot be both static and sealed
-                RunCsc(1, source.TempPath);
-            }
-        }
-
-        [Test]
-        public void TestProtoFileWithNewOutputFolder()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach(@"generated-code\" + test + ".cs"))
-            using (ProtoFile proto = new ProtoFile(test + ".proto", DefaultProto))
-            {
-                RunProtoGen(1, proto.TempPath, "-output_directory:generated-code");
-                Directory.CreateDirectory("generated-code");
-                RunProtoGen(0, proto.TempPath, "-output_directory:generated-code");
-                Assembly a = RunCsc(0, source.TempPath);
-                //assert that the message type is in the expected namespace
-                Type t = a.GetType("nunit.simple.MyMessage", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t), "Expect an IMessage");
-                //assert that we can find the static descriptor type
-                a.GetType("nunit.simple." + test, true, true);
-            }
-        }
-
-        [Test]
-        public void TestProtoFileAndIgnoreGoogleProtobuf()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach(test + ".cs"))
-            using (
-                ProtoFile proto = new ProtoFile(test + ".proto",
-                                                @"
-import ""google/protobuf/csharp_options.proto"";
-option (google.protobuf.csharp_file_options).namespace = ""MyNewNamespace"";
-" +
-                                                DefaultProto))
-            {
-                string google = Path.Combine(TempPath, "google\\protobuf");
-                Directory.CreateDirectory(google);
-                foreach (string file in Directory.GetFiles(Path.Combine(OriginalWorkingDirectory, "google\\protobuf")))
-                {
-                    File.Copy(file, Path.Combine(google, Path.GetFileName(file)));
-                }
-
-                Assert.AreEqual(0, Directory.GetFiles(TempPath, "*.cs").Length);
-                RunProtoGen(0, proto.TempPath, "-ignore_google_protobuf:true");
-                Assert.AreEqual(1, Directory.GetFiles(TempPath, "*.cs").Length);
-
-                Assembly a = RunCsc(0, source.TempPath);
-                //assert that the message type is in the expected namespace
-                Type t = a.GetType("MyNewNamespace.MyMessage", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t), "Expect an IMessage");
-                //assert that we can find the static descriptor type
-                a.GetType("MyNewNamespace." + test, true, true);
-            }
-        }
-
-        [Test]
-        public void TestProtoFileWithoutIgnoreGoogleProtobuf()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach(test + ".cs"))
-            using (
-                ProtoFile proto = new ProtoFile(test + ".proto",
-                                                @"
-import ""google/protobuf/csharp_options.proto"";
-option (google.protobuf.csharp_file_options).namespace = ""MyNewNamespace"";
-" +
-                                                DefaultProto))
-            {
-                string google = Path.Combine(TempPath, "google\\protobuf");
-                Directory.CreateDirectory(google);
-                foreach (string file in Directory.GetFiles(Path.Combine(OriginalWorkingDirectory, "google\\protobuf")))
-                {
-                    File.Copy(file, Path.Combine(google, Path.GetFileName(file)));
-                }
-
-                Assert.AreEqual(0, Directory.GetFiles(TempPath, "*.cs").Length);
-                //Without the option this fails due to being unable to resolve google/protobuf descriptors
-                RunProtoGen(1, proto.TempPath, "-ignore_google_protobuf:false");
-            }
-        }
-
-        // *******************************************************************
-        // The following tests excercise options for protoc.exe
-        // *******************************************************************
-
-        [Test]
-        public void TestProtoFileWithIncludeImports()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach(test + ".cs"))
-            using (
-                ProtoFile proto = new ProtoFile(test + ".proto",
-                                                @"
-import ""google/protobuf/csharp_options.proto"";
-option (google.protobuf.csharp_file_options).namespace = ""MyNewNamespace"";
-
-package nunit.simple;
-// Test a very simple message.
-message MyMessage {
-  optional string name = 1;
-} ")
-                )
-            {
-                string google = Path.Combine(TempPath, "google\\protobuf");
-                Directory.CreateDirectory(google);
-                foreach (string file in Directory.GetFiles(Path.Combine(OriginalWorkingDirectory, "google\\protobuf")))
-                {
-                    File.Copy(file, Path.Combine(google, Path.GetFileName(file)));
-                }
-
-                Assert.AreEqual(0, Directory.GetFiles(TempPath, "*.cs").Length);
-                //if you specify the protoc option --include_imports this should build three source files
-                RunProtoGen(0, proto.TempPath, "--include_imports");
-                Assert.AreEqual(3, Directory.GetFiles(TempPath, "*.cs").Length);
-
-                //you can (and should) simply omit the inclusion of the extra source files in your project
-                Assembly a = RunCsc(0, source.TempPath);
-                //assert that the message type is in the expected namespace
-                Type t = a.GetType("MyNewNamespace.MyMessage", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t), "Expect an IMessage");
-                //assert that we can find the static descriptor type
-                a.GetType("MyNewNamespace." + test, true, true);
-            }
-        }
-
-        [Test]
-        public void TestProtoFileWithIncludeImportsAndIgnoreGoogleProtobuf()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach(test + ".cs"))
-            using (
-                ProtoFile proto = new ProtoFile(test + ".proto",
-                                                @"
-import ""google/protobuf/csharp_options.proto"";
-option (google.protobuf.csharp_file_options).namespace = ""MyNewNamespace"";
-
-package nunit.simple;
-// Test a very simple message.
-message MyMessage {
-  optional string name = 1;
-} ")
-                )
-            {
-                string google = Path.Combine(TempPath, "google\\protobuf");
-                Directory.CreateDirectory(google);
-                foreach (string file in Directory.GetFiles(Path.Combine(OriginalWorkingDirectory, "google\\protobuf")))
-                    File.Copy(file, Path.Combine(google, Path.GetFileName(file)));
-
-                Assert.AreEqual(0, Directory.GetFiles(TempPath, "*.cs").Length);
-                //Even with --include_imports, if you provide -ignore_google_protobuf:true you only get the one source file
-                RunProtoGen(0, proto.TempPath, "-ignore_google_protobuf:true", "--include_imports");
-                Assert.AreEqual(1, Directory.GetFiles(TempPath, "*.cs").Length);
-
-                //you can (and should) simply omit the inclusion of the extra source files in your project
-                Assembly a = RunCsc(0, source.TempPath);
-                //assert that the message type is in the expected namespace
-                Type t = a.GetType("MyNewNamespace.MyMessage", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t), "Expect an IMessage");
-                //assert that we can find the static descriptor type
-                a.GetType("MyNewNamespace." + test, true, true);
-            }
-        }
-
-        [Test]
-        public void TestProtoFileKeepingTheProtoBuffer()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile protobuf = TempFile.Attach(test + ".pb"))
-            using (TempFile source = TempFile.Attach(test + ".cs"))
-            using (
-                ProtoFile proto = new ProtoFile(test + ".proto",
-                                                @"
-package nunit.simple;
-// Test a very simple message.
-message MyMessage {
-  optional string name = 1;
-} ")
-                )
-            {
-                RunProtoGen(0, proto.TempPath, "--descriptor_set_out=" + protobuf.TempPath);
-                Assert.IsTrue(File.Exists(protobuf.TempPath), "Missing: " + protobuf.TempPath);
-                Assembly a = RunCsc(0, source.TempPath);
-                //assert that the message type is in the expected namespace
-                Type t = a.GetType("nunit.simple.MyMessage", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t), "Expect an IMessage");
-                //assert that we can find the static descriptor type
-                a.GetType("nunit.simple." + test, true, true);
-            }
-        }
-
-        //Seems the --proto_path or -I option is non-functional for me.  Maybe others have luck?
-        [Test]
-        public void TestProtoFileInDifferentDirectory()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach(test + ".cs"))
-            using (ProtoFile proto = new ProtoFile(test + ".proto", DefaultProto))
-            {
-                Environment.CurrentDirectory = OriginalWorkingDirectory;
-                RunProtoGen(0, proto.TempPath, "--proto_path=" + TempPath);
-                Assembly a = RunCsc(0, source.TempPath);
-                //assert that the message type is in the expected namespace
-                Type t = a.GetType("nunit.simple.MyMessage", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t), "Expect an IMessage");
-                //assert that we can find the static descriptor type
-                a.GetType("nunit.simple." + test, true, true);
-            }
-        }
-
-        // *******************************************************************
-        // Handling of mutliple input files
-        // *******************************************************************
-
-        [Test]
-        public void TestMultipleProtoFiles()
-        {
-            Setup();
-            using (TempFile source1 = TempFile.Attach("MyMessage.cs"))
-            using (
-                ProtoFile proto1 = new ProtoFile("MyMessage.proto",
-                                                 @"
-package nunit.simple;
-// Test a very simple message.
-message MyMessage {
-  optional string name = 1;
-}")
-                )
-            using (TempFile source2 = TempFile.Attach("MyMessageList.cs"))
-            using (
-                ProtoFile proto2 = new ProtoFile("MyMessageList.proto",
-                                                 @"
-package nunit.simple;
-import ""MyMessage.proto"";
-// Test a very simple message.
-message MyMessageList {
-  repeated MyMessage messages = 1;
-}")
-                )
-            {
-                RunProtoGen(0, proto1.TempPath, proto2.TempPath);
-                Assembly a = RunCsc(0, source1.TempPath, source2.TempPath);
-                //assert that the message type is in the expected namespace
-                Type t1 = a.GetType("nunit.simple.MyMessage", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t1), "Expect an IMessage");
-                //assert that the message type is in the expected namespace
-                Type t2 = a.GetType("nunit.simple.MyMessageList", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t2), "Expect an IMessage");
-                //assert that we can find the static descriptor type
-                a.GetType("nunit.simple.Proto.MyMessage", true, true);
-                a.GetType("nunit.simple.Proto.MyMessageList", true, true);
-            }
-        }
-
-        [Test]
-        public void TestOneProtoFileWithBufferFile()
-        {
-            Setup();
-            using (TempFile source1 = TempFile.Attach("MyMessage.cs"))
-            using (TempFile protobuf = TempFile.Attach("MyMessage.pb"))
-            using (
-                ProtoFile proto1 = new ProtoFile("MyMessage.proto",
-                                                 @"
-package nunit.simple;
-// Test a very simple message.
-message MyMessage {
-  optional string name = 1;
-}")
-                )
-            using (TempFile source2 = TempFile.Attach("MyMessageList.cs"))
-            using (
-                ProtoFile proto2 = new ProtoFile("MyMessageList.proto",
-                                                 @"
-package nunit.simple;
-import ""MyMessage.proto"";
-// Test a very simple message.
-message MyMessageList {
-  repeated MyMessage messages = 1;
-}")
-                )
-            {
-                //build the proto buffer for MyMessage
-                RunProtoGen(0, proto1.TempPath, "--descriptor_set_out=" + protobuf.TempPath);
-                //build the MyMessageList proto-buffer and generate code by including MyMessage.pb
-                RunProtoGen(0, proto2.TempPath, protobuf.TempPath);
-                Assembly a = RunCsc(0, source1.TempPath, source2.TempPath);
-                //assert that the message type is in the expected namespace
-                Type t1 = a.GetType("nunit.simple.MyMessage", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t1), "Expect an IMessage");
-                //assert that the message type is in the expected namespace
-                Type t2 = a.GetType("nunit.simple.MyMessageList", true, true);
-                Assert.IsTrue(typeof(IMessage).IsAssignableFrom(t2), "Expect an IMessage");
-                //assert that we can find the static descriptor type
-                a.GetType("nunit.simple.Proto.MyMessage", true, true);
-                a.GetType("nunit.simple.Proto.MyMessageList", true, true);
-            }
-        }
-
-        [Test]
-        public void TestProtoFileWithService()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach(test + ".cs"))
-            using (ProtoFile proto = new ProtoFile(test + ".proto",
-@"
-import ""google/protobuf/csharp_options.proto"";
-option (google.protobuf.csharp_file_options).service_generator_type = GENERIC;
-
-package nunit.simple;
-// Test a very simple message.
-message MyMessage {
-  optional string name = 1;
-}
-// test a very simple service.
-service TestService {
-  rpc Execute (MyMessage) returns (MyMessage);
-}"))
-            {
-                CopyInGoogleProtoFiles();
-
-                RunProtoGen(0, proto.TempPath, "-ignore_google_protobuf:true", "-nest_classes=false");
-                Assert.AreEqual(1, Directory.GetFiles(TempPath, "*.cs").Length);
-
-                Assembly a = RunCsc(0, source.TempPath);
-                //assert that the service type is in the expected namespace
-                Type t1 = a.GetType("nunit.simple.TestService", true, true);
-                Assert.IsTrue(typeof(IService).IsAssignableFrom(t1), "Expect an IService");
-                Assert.IsTrue(t1.IsAbstract, "Expect abstract class");
-                //assert that the Stub subclass type is in the expected namespace
-                Type t2 = a.GetType("nunit.simple.TestService+Stub", true, true);
-                Assert.IsTrue(t1.IsAssignableFrom(t2), "Expect a sub of TestService");
-                Assert.IsFalse(t2.IsAbstract, "Expect concrete class");
-            }
-        }
-
-        [Test]
-        public void TestProtoFileWithServiceInternal()
-        {
-            string test = new StackFrame(false).GetMethod().Name;
-            Setup();
-            using (TempFile source = TempFile.Attach(test + ".cs"))
-            using (ProtoFile proto = new ProtoFile(test + ".proto",
-@"
-import ""google/protobuf/csharp_options.proto"";
-option (google.protobuf.csharp_file_options).service_generator_type = GENERIC;
-
-package nunit.simple;
-// Test a very simple message.
-message MyMessage {
-  optional string name = 1;
-}
-// test a very simple service.
-service TestService {
-  rpc Execute (MyMessage) returns (MyMessage);
-}"))
-            {
-                CopyInGoogleProtoFiles();
-
-                RunProtoGen(0, proto.TempPath, "-ignore_google_protobuf:true", "-nest_classes=false", "-public_classes=false");
-                Assert.AreEqual(1, Directory.GetFiles(TempPath, "*.cs").Length);
-
-                Assembly a = RunCsc(0, source.TempPath);
-                //assert that the service type is in the expected namespace
-                Type t1 = a.GetType("nunit.simple.TestService", true, true);
-                Assert.IsTrue(typeof(IService).IsAssignableFrom(t1), "Expect an IService");
-                Assert.IsTrue(t1.IsAbstract, "Expect abstract class");
-                //assert that the Stub subclass type is in the expected namespace
-                Type t2 = a.GetType("nunit.simple.TestService+Stub", true, true);
-                Assert.IsTrue(t1.IsAssignableFrom(t2), "Expect a sub of TestService");
-                Assert.IsFalse(t2.IsAbstract, "Expect concrete class");
-            }
-        }
-
-        private static void CopyInGoogleProtoFiles()
-        {
-            string google = Path.Combine(TempPath, "google\\protobuf");
-            Directory.CreateDirectory(google);
-            foreach (string file in Directory.GetFiles(Path.Combine(OriginalWorkingDirectory, "google\\protobuf")))
-            {
-                File.Copy(file, Path.Combine(google, Path.GetFileName(file)));
-            }
-        }
-    }
-}

+ 0 - 101
csharp/src/ProtoGen.Test/protoc-gen-cs.Test.csproj

@@ -1,101 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup>
-    <EnvironmentFlavor>CLIENTPROFILE</EnvironmentFlavor>
-    <EnvironmentTemplate>NET35</EnvironmentTemplate>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.30729</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{C1024C9C-8176-48C3-B547-B9F6DF6B80A6}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <AppDesignerFolder>Properties</AppDesignerFolder>
-    <RootNamespace>Google.ProtocolBuffers.ProtoGen</RootNamespace>
-    <AssemblyName>protoc-gen-cs.Test</AssemblyName>
-    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
-    <FileAlignment>512</FileAlignment>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>bin\NET35\Debug</OutputPath>
-    <IntermediateOutputPath>obj\NET35\Debug\</IntermediateOutputPath>
-    <DefineConstants>DEBUG;TRACE;$(EnvironmentFlavor);$(EnvironmentTemplate)</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>pdbonly</DebugType>
-    <Optimize>true</Optimize>
-    <OutputPath>bin\NET35\Release</OutputPath>
-    <IntermediateOutputPath>obj\NET35\Release\</IntermediateOutputPath>
-    <DefineConstants>TRACE;$(EnvironmentFlavor);$(EnvironmentTemplate)</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="nunit.framework">
-      <SpecificVersion>False</SpecificVersion>
-      <HintPath>..\..\lib\NUnit\lib\nunit.framework.dll</HintPath>
-    </Reference>
-    <Reference Include="mscorlib" />
-    <Reference Include="System" />
-    <Reference Include="System.Data" />
-    <Reference Include="System.Xml" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="ProtocGenCsUnittests.cs" />
-    <Compile Include="Properties\AssemblyInfo.cs" />
-    <Compile Include="TempFile.cs" />
-  </ItemGroup>
-  <ItemGroup>
-    <ProjectReference Include="..\ProtocolBuffers\ProtocolBuffers.csproj">
-      <Project>{6908bdce-d925-43f3-94ac-a531e6df2591}</Project>
-      <Name>ProtocolBuffers</Name>
-    </ProjectReference>
-    <ProjectReference Include="..\ProtoGen\protoc-gen-cs.csproj">
-      <Project>{250ade34-82fd-4bae-86d5-985fbe589c4b}</Project>
-      <Name>protoc-gen-cs</Name>
-    </ProjectReference>
-  </ItemGroup>
-  <ItemGroup>
-    <Content Include="..\..\lib\protoc.exe">
-      <Link>protoc.exe</Link>
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </Content>
-  </ItemGroup>
-  <ItemGroup>
-    <None Include="..\..\protos\google\protobuf\csharp_options.proto">
-      <Link>google\protobuf\csharp_options.proto</Link>
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </None>
-    <None Include="..\..\protos\google\protobuf\descriptor.proto">
-      <Link>google\protobuf\descriptor.proto</Link>
-      <CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
-    </None>
-  </ItemGroup>
-  <ItemGroup>
-    <Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
-  </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>
-  -->
-  <PropertyGroup>
-    <StartAction>Program</StartAction>
-    <StartProgram>$(ProjectDir)..\..\lib\NUnit\tools\nunit-console.exe</StartProgram>
-    <StartArguments>/nologo /noshadow /labels /wait $(AssemblyName).dll</StartArguments>
-    <StartWorkingDirectory>$(ProjectDir)$(OutputPath)</StartWorkingDirectory>
-  </PropertyGroup>
-</Project>

+ 0 - 55
csharp/src/ProtoGen/DependencyResolutionException.cs

@@ -1,55 +0,0 @@
-#region Copyright notice and license
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://github.com/jskeet/dotnet-protobufs/
-// Original C++/Java/Python code:
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-#endregion
-
-using System;
-
-namespace Google.ProtocolBuffers.ProtoGen
-{
-    /// <summary>
-    /// Exception thrown when dependencies within a descriptor set can't be resolved.
-    /// </summary>
-    public sealed class DependencyResolutionException : Exception
-    {
-        public DependencyResolutionException(string message) : base(message)
-        {
-        }
-
-        public DependencyResolutionException(string format, params object[] args)
-            : base(string.Format(format, args))
-        {
-        }
-    }
-}

+ 0 - 106
csharp/src/ProtoGen/DescriptorUtil.cs

@@ -1,106 +0,0 @@
-#region Copyright notice and license
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://github.com/jskeet/dotnet-protobufs/
-// Original C++/Java/Python code:
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-#endregion
-
-using System;
-using Google.ProtocolBuffers.DescriptorProtos;
-using Google.ProtocolBuffers.Descriptors;
-
-namespace Google.ProtocolBuffers.ProtoGen
-{
-    /// <summary>
-    /// Utility class for determining namespaces etc.
-    /// </summary>
-    internal static class DescriptorUtil
-    {
-        internal static string GetFullUmbrellaClassName(IDescriptor descriptor)
-        {
-            CSharpFileOptions options = descriptor.File.CSharpOptions;
-            string result = options.Namespace;
-            if (result != "")
-            {
-                result += '.';
-            }
-            result += GetQualifiedUmbrellaClassName(options);
-            return "global::" + result;
-        }
-
-        /// <summary>
-        /// Evaluates the options and returns the qualified name of the umbrella class
-        /// relative to the descriptor type's namespace.  Basically concatenates the
-        /// UmbrellaNamespace + UmbrellaClassname fields.
-        /// </summary>
-        internal static string GetQualifiedUmbrellaClassName(CSharpFileOptions options)
-        {
-            string fullName = options.UmbrellaClassname;
-            if (!options.NestClasses && options.UmbrellaNamespace != "")
-            {
-                fullName = String.Format("{0}.{1}", options.UmbrellaNamespace, options.UmbrellaClassname);
-            }
-            return fullName;
-        }
-
-        internal static string GetMappedTypeName(MappedType type)
-        {
-            switch (type)
-            {
-                case MappedType.Int32:
-                    return "int";
-                case MappedType.Int64:
-                    return "long";
-                case MappedType.UInt32:
-                    return "uint";
-                case MappedType.UInt64:
-                    return "ulong";
-                case MappedType.Single:
-                    return "float";
-                case MappedType.Double:
-                    return "double";
-                case MappedType.Boolean:
-                    return "bool";
-                case MappedType.String:
-                    return "string";
-                case MappedType.ByteString:
-                    return "pb::ByteString";
-                case MappedType.Enum:
-                    return null;
-                case MappedType.Message:
-                    return null;
-                default:
-                    throw new ArgumentOutOfRangeException("Unknown mapped type " + type);
-            }
-        }
-    }
-}

+ 0 - 148
csharp/src/ProtoGen/EnumFieldGenerator.cs

@@ -1,148 +0,0 @@
-#region Copyright notice and license
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://github.com/jskeet/dotnet-protobufs/
-// Original C++/Java/Python code:
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-#endregion
-
-using Google.ProtocolBuffers.Descriptors;
-
-namespace Google.ProtocolBuffers.ProtoGen
-{
-    internal class EnumFieldGenerator : FieldGeneratorBase, IFieldSourceGenerator
-    {
-        internal EnumFieldGenerator(FieldDescriptor descriptor, int fieldOrdinal)
-            : base(descriptor, fieldOrdinal)
-        {
-        }
-
-        public void GenerateMembers(TextGenerator writer)
-        {
-            writer.WriteLine("private bool has{0};", PropertyName);
-            writer.WriteLine("private {0} {1}_ = {2};", TypeName, Name, DefaultValue);
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public bool Has{0} {{", PropertyName);
-            writer.WriteLine("  get {{ return has{0}; }}", PropertyName);
-            writer.WriteLine("}");
-            AddPublicMemberAttributes(writer);
-            writer.WriteLine("public {0} {1} {{", TypeName, PropertyName);
-            writer.WriteLine("  get {{ return {0}_; }}", Name);
-            writer.WriteLine("}");
-        }
-
-        public void GenerateBuilderMembers(TextGenerator writer)
-        {
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public bool Has{0} {{", PropertyName);
-            writer.WriteLine(" get {{ return result.has{0}; }}", PropertyName);
-            writer.WriteLine("}");
-            AddPublicMemberAttributes(writer);
-            writer.WriteLine("public {0} {1} {{", TypeName, PropertyName);
-            writer.WriteLine("  get {{ return result.{0}; }}", PropertyName);
-            writer.WriteLine("  set {{ Set{0}(value); }}", PropertyName);
-            writer.WriteLine("}");
-            AddPublicMemberAttributes(writer);
-            writer.WriteLine("public Builder Set{0}({1} value) {{", PropertyName, TypeName);
-            writer.WriteLine("  PrepareBuilder();");
-            writer.WriteLine("  result.has{0} = true;", PropertyName);
-            writer.WriteLine("  result.{0}_ = value;", Name);
-            writer.WriteLine("  return this;");
-            writer.WriteLine("}");
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public Builder Clear{0}() {{", PropertyName);
-            writer.WriteLine("  PrepareBuilder();");
-            writer.WriteLine("  result.has{0} = false;", PropertyName);
-            writer.WriteLine("  result.{0}_ = {1};", Name, DefaultValue);
-            writer.WriteLine("  return this;");
-            writer.WriteLine("}");
-        }
-
-        public void GenerateMergingCode(TextGenerator writer)
-        {
-            writer.WriteLine("if (other.Has{0}) {{", PropertyName);
-            writer.WriteLine("  {0} = other.{0};", PropertyName);
-            writer.WriteLine("}");
-        }
-
-        public void GenerateBuildingCode(TextGenerator writer)
-        {
-            // Nothing to do here for enum types
-        }
-
-        public void GenerateParsingCode(TextGenerator writer)
-        {
-            writer.WriteLine("object unknown;");
-            writer.WriteLine("if(input.ReadEnum(ref result.{0}_, out unknown)) {{", Name);
-            writer.WriteLine("  result.has{0} = true;", PropertyName);
-            writer.WriteLine("} else if(unknown is int) {");
-            if (!UseLiteRuntime)
-            {
-                writer.WriteLine("  if (unknownFields == null) {"); // First unknown field - create builder now
-                writer.WriteLine("    unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);");
-                writer.WriteLine("  }");
-                writer.WriteLine("  unknownFields.MergeVarintField({0}, (ulong)(int)unknown);", Number);
-            }
-            writer.WriteLine("}");
-        }
-
-        public void GenerateSerializationCode(TextGenerator writer)
-        {
-            writer.WriteLine("if (has{0}) {{", PropertyName);
-            writer.WriteLine("  output.WriteEnum({0}, field_names[{2}], (int) {1}, {1});", Number, PropertyName,
-                             FieldOrdinal);
-            writer.WriteLine("}");
-        }
-
-        public void GenerateSerializedSizeCode(TextGenerator writer)
-        {
-            writer.WriteLine("if (has{0}) {{", PropertyName);
-            writer.WriteLine("  size += pb::CodedOutputStream.ComputeEnumSize({0}, (int) {1});", Number, PropertyName);
-            writer.WriteLine("}");
-        }
-
-        public override void WriteHash(TextGenerator writer)
-        {
-            writer.WriteLine("if (has{0}) hash ^= {1}_.GetHashCode();", PropertyName, Name);
-        }
-
-        public override void WriteEquals(TextGenerator writer)
-        {
-            writer.WriteLine("if (has{0} != other.has{0} || (has{0} && !{1}_.Equals(other.{1}_))) return false;",
-                             PropertyName, Name);
-        }
-
-        public override void WriteToString(TextGenerator writer)
-        {
-            writer.WriteLine("PrintField(\"{0}\", has{1}, {2}_, writer);", Descriptor.Name, PropertyName, Name);
-        }
-    }
-}

+ 0 - 62
csharp/src/ProtoGen/EnumGenerator.cs

@@ -1,62 +0,0 @@
-#region Copyright notice and license
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://github.com/jskeet/dotnet-protobufs/
-// Original C++/Java/Python code:
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-#endregion
-
-using Google.ProtocolBuffers.Descriptors;
-
-namespace Google.ProtocolBuffers.ProtoGen
-{
-    internal class EnumGenerator : SourceGeneratorBase<EnumDescriptor>, ISourceGenerator
-    {
-        internal EnumGenerator(EnumDescriptor descriptor) : base(descriptor)
-        {
-        }
-
-        // TODO(jonskeet): Write out enum descriptors? Can be retrieved from file...
-        public void Generate(TextGenerator writer)
-        {
-            WriteGeneratedCodeAttributes(writer);
-            writer.WriteLine("{0} enum {1} {{", ClassAccessLevel, Descriptor.Name);
-            writer.Indent();
-            foreach (EnumValueDescriptor value in Descriptor.Values)
-            {
-                writer.WriteLine("{0} = {1},", value.Name, value.Number);
-            }
-            writer.Outdent();
-            writer.WriteLine("}");
-            writer.WriteLine();
-        }
-    }
-}

+ 0 - 183
csharp/src/ProtoGen/ExtensionGenerator.cs

@@ -1,183 +0,0 @@
-#region Copyright notice and license
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://github.com/jskeet/dotnet-protobufs/
-// Original C++/Java/Python code:
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-#endregion
-
-using System;
-using Google.ProtocolBuffers.Descriptors;
-
-namespace Google.ProtocolBuffers.ProtoGen
-{
-    internal class ExtensionGenerator : FieldGeneratorBase, ISourceGenerator
-    {
-        private readonly string extends;
-        private readonly string scope;
-        private readonly string type;
-        private readonly string name;
-
-        internal ExtensionGenerator(FieldDescriptor descriptor)
-            : base(descriptor, 0)
-        {
-            if (Descriptor.ExtensionScope != null)
-            {
-                scope = GetClassName(Descriptor.ExtensionScope);
-            }
-            else
-            {
-                scope = DescriptorUtil.GetFullUmbrellaClassName(Descriptor.File);
-            }
-            switch (Descriptor.MappedType)
-            {
-                case MappedType.Message:
-                    type = GetClassName(Descriptor.MessageType);
-                    break;
-                case MappedType.Enum:
-                    type = GetClassName(Descriptor.EnumType);
-                    break;
-                default:
-                    type = DescriptorUtil.GetMappedTypeName(Descriptor.MappedType);
-                    break;
-            }
-            extends = GetClassName(Descriptor.ContainingType);
-            name = Descriptor.CSharpOptions.PropertyName;
-        }
-
-        public void Generate(TextGenerator writer)
-        {
-            if (Descriptor.File.CSharpOptions.ClsCompliance && GetFieldConstantName(Descriptor).StartsWith("_"))
-            {
-                writer.WriteLine("[global::System.CLSCompliant(false)]");
-            }
-
-            writer.WriteLine("public const int {0} = {1};", GetFieldConstantName(Descriptor), Descriptor.FieldNumber);
-
-            if (UseLiteRuntime)
-            {
-                if (Descriptor.MappedType == MappedType.Message && Descriptor.MessageType.Options.MessageSetWireFormat)
-                {
-                    throw new ArgumentException(
-                        "option message_set_wire_format = true; is not supported in Lite runtime extensions.");
-                }
-                if (!Descriptor.IsCLSCompliant && Descriptor.File.CSharpOptions.ClsCompliance)
-                {
-                    writer.WriteLine("[global::System.CLSCompliant(false)]");
-                }
-                writer.WriteLine("{0} static pb::{4}<{1}, {2}> {3};", ClassAccessLevel, extends, type, name,
-                                 Descriptor.IsRepeated ? "GeneratedRepeatExtensionLite" : "GeneratedExtensionLite");
-            }
-            else if (Descriptor.IsRepeated)
-            {
-                if (!Descriptor.IsCLSCompliant && Descriptor.File.CSharpOptions.ClsCompliance)
-                {
-                    writer.WriteLine("[global::System.CLSCompliant(false)]");
-                }
-                writer.WriteLine("{0} static pb::GeneratedExtensionBase<scg::IList<{1}>> {2};", ClassAccessLevel, type,
-                                 name);
-            }
-            else
-            {
-                if (!Descriptor.IsCLSCompliant && Descriptor.File.CSharpOptions.ClsCompliance)
-                {
-                    writer.WriteLine("[global::System.CLSCompliant(false)]");
-                }
-                writer.WriteLine("{0} static pb::GeneratedExtensionBase<{1}> {2};", ClassAccessLevel, type, name);
-            }
-        }
-
-        internal void GenerateStaticVariableInitializers(TextGenerator writer)
-        {
-            if (UseLiteRuntime)
-            {
-                writer.WriteLine("{0}.{1} = ", scope, name);
-                writer.Indent();
-                writer.WriteLine("new pb::{0}<{1}, {2}>(",
-                                 Descriptor.IsRepeated ? "GeneratedRepeatExtensionLite" : "GeneratedExtensionLite",
-                                 extends, type);
-                writer.Indent();
-                writer.WriteLine("\"{0}\",", Descriptor.FullName);
-                writer.WriteLine("{0}.DefaultInstance,", extends);
-                if (!Descriptor.IsRepeated)
-                {
-                    writer.WriteLine("{0},",
-                                     Descriptor.HasDefaultValue
-                                         ? DefaultValue
-                                         : IsNullableType ? "null" : "default(" + type + ")");
-                }
-                writer.WriteLine("{0},",
-                                 (Descriptor.MappedType == MappedType.Message) ? type + ".DefaultInstance" : "null");
-                writer.WriteLine("{0},",
-                                 (Descriptor.MappedType == MappedType.Enum) ? "new EnumLiteMap<" + type + ">()" : "null");
-                writer.WriteLine("{0}.{1}FieldNumber,", scope, name);
-                writer.Write("pbd::FieldType.{0}", Descriptor.FieldType);
-                if (Descriptor.IsRepeated)
-                {
-                    writer.WriteLine(",");
-                    writer.Write(Descriptor.IsPacked ? "true" : "false");
-                }
-                writer.Outdent();
-                writer.WriteLine(");");
-                writer.Outdent();
-            }
-            else if (Descriptor.IsRepeated)
-            {
-                writer.WriteLine(
-                    "{0}.{1} = pb::GeneratedRepeatExtension<{2}>.CreateInstance({0}.Descriptor.Extensions[{3}]);", scope,
-                    name, type, Descriptor.Index);
-            }
-            else
-            {
-                writer.WriteLine(
-                    "{0}.{1} = pb::GeneratedSingleExtension<{2}>.CreateInstance({0}.Descriptor.Extensions[{3}]);", scope,
-                    name, type, Descriptor.Index);
-            }
-        }
-
-        internal void GenerateExtensionRegistrationCode(TextGenerator writer)
-        {
-            writer.WriteLine("registry.Add({0}.{1});", scope, name);
-        }
-
-        public override void WriteHash(TextGenerator writer)
-        {
-        }
-
-        public override void WriteEquals(TextGenerator writer)
-        {
-        }
-
-        public override void WriteToString(TextGenerator writer)
-        {
-        }
-    }
-}

+ 0 - 389
csharp/src/ProtoGen/FieldGeneratorBase.cs

@@ -1,389 +0,0 @@
-#region Copyright notice and license
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://github.com/jskeet/dotnet-protobufs/
-// Original C++/Java/Python code:
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-#endregion
-
-using System;
-using System.Globalization;
-using System.Text;
-using Google.ProtocolBuffers.Descriptors;
-
-namespace Google.ProtocolBuffers.ProtoGen
-{
-    internal abstract class FieldGeneratorBase : SourceGeneratorBase<FieldDescriptor>
-    {
-        private readonly int _fieldOrdinal;
-
-        protected FieldGeneratorBase(FieldDescriptor descriptor, int fieldOrdinal)
-            : base(descriptor)
-        {
-            _fieldOrdinal = fieldOrdinal;
-        }
-
-        public abstract void WriteHash(TextGenerator writer);
-        public abstract void WriteEquals(TextGenerator writer);
-        public abstract void WriteToString(TextGenerator writer);
-
-        public int FieldOrdinal
-        {
-            get { return _fieldOrdinal; }
-        }
-
-        private static bool AllPrintableAscii(string text)
-        {
-            foreach (char c in text)
-            {
-                if (c < 0x20 || c > 0x7e)
-                {
-                    return false;
-                }
-            }
-            return true;
-        }
-
-        /// <summary>
-        /// This returns true if the field has a non-default default value.  For instance this returns 
-        /// false for numerics with a default of zero '0', or booleans with a default of false.
-        /// </summary>
-        protected bool HasDefaultValue
-        {
-            get
-            {
-                switch (Descriptor.FieldType)
-                {
-                    case FieldType.Float:
-                    case FieldType.Double:
-                    case FieldType.Int32:
-                    case FieldType.Int64:
-                    case FieldType.SInt32:
-                    case FieldType.SInt64:
-                    case FieldType.SFixed32:
-                    case FieldType.SFixed64:
-                    case FieldType.UInt32:
-                    case FieldType.UInt64:
-                    case FieldType.Fixed32:
-                    case FieldType.Fixed64:
-                        {
-                            IConvertible value = (IConvertible) Descriptor.DefaultValue;
-                            return value.ToString(CultureInfo.InvariantCulture) != "0";
-                        }
-                    case FieldType.Bool:
-                        return ((bool) Descriptor.DefaultValue) == true;
-                    default:
-                        return true;
-                }
-            }
-        }
-
-        /// <remarks>Copy exists in ExtensionGenerator.cs</remarks>
-        protected string DefaultValue
-        {
-            get
-            {
-                string suffix = "";
-                switch (Descriptor.FieldType)
-                {
-                    case FieldType.Float:
-                        suffix = "F";
-                        break;
-                    case FieldType.Double:
-                        suffix = "D";
-                        break;
-                    case FieldType.Int64:
-                        suffix = "L";
-                        break;
-                    case FieldType.UInt64:
-                        suffix = "UL";
-                        break;
-                }
-                switch (Descriptor.FieldType)
-                {
-                    case FieldType.Float:
-                    case FieldType.Double:
-                    case FieldType.Int32:
-                    case FieldType.Int64:
-                    case FieldType.SInt32:
-                    case FieldType.SInt64:
-                    case FieldType.SFixed32:
-                    case FieldType.SFixed64:
-                    case FieldType.UInt32:
-                    case FieldType.UInt64:
-                    case FieldType.Fixed32:
-                    case FieldType.Fixed64:
-                        {
-                            // The simple Object.ToString converts using the current culture.
-                            // We want to always use the invariant culture so it's predictable.
-                            IConvertible value = (IConvertible) Descriptor.DefaultValue;
-                            //a few things that must be handled explicitly
-                            if (Descriptor.FieldType == FieldType.Double && value is double)
-                            {
-                                if (double.IsNaN((double) value))
-                                {
-                                    return "double.NaN";
-                                }
-                                if (double.IsPositiveInfinity((double) value))
-                                {
-                                    return "double.PositiveInfinity";
-                                }
-                                if (double.IsNegativeInfinity((double) value))
-                                {
-                                    return "double.NegativeInfinity";
-                                }
-                            }
-                            else if (Descriptor.FieldType == FieldType.Float && value is float)
-                            {
-                                if (float.IsNaN((float) value))
-                                {
-                                    return "float.NaN";
-                                }
-                                if (float.IsPositiveInfinity((float) value))
-                                {
-                                    return "float.PositiveInfinity";
-                                }
-                                if (float.IsNegativeInfinity((float) value))
-                                {
-                                    return "float.NegativeInfinity";
-                                }
-                            }
-                            return value.ToString(CultureInfo.InvariantCulture) + suffix;
-                        }
-                    case FieldType.Bool:
-                        return (bool) Descriptor.DefaultValue ? "true" : "false";
-
-                    case FieldType.Bytes:
-                        if (!Descriptor.HasDefaultValue)
-                        {
-                            return "pb::ByteString.Empty";
-                        }
-                        if (UseLiteRuntime && Descriptor.DefaultValue is ByteString)
-                        {
-                            string temp = (((ByteString) Descriptor.DefaultValue).ToBase64());
-                            return String.Format("pb::ByteString.FromBase64(\"{0}\")", temp);
-                        }
-                        return string.Format("(pb::ByteString) {0}.Descriptor.Fields[{1}].DefaultValue",
-                                             GetClassName(Descriptor.ContainingType), Descriptor.Index);
-                    case FieldType.String:
-                        if (AllPrintableAscii(Descriptor.Proto.DefaultValue))
-                        {
-                            // All chars are ASCII and printable.  In this case we only
-                            // need to escape quotes and backslashes.
-                            return "\"" + Descriptor.Proto.DefaultValue
-                                              .Replace("\\", "\\\\")
-                                              .Replace("'", "\\'")
-                                              .Replace("\"", "\\\"")
-                                   + "\"";
-                        }
-                        if (UseLiteRuntime && Descriptor.DefaultValue is String)
-                        {
-                            string temp = Convert.ToBase64String(
-                                    Encoding.UTF8.GetBytes((String) Descriptor.DefaultValue));
-                            return String.Format("pb::ByteString.FromBase64(\"{0}\").ToStringUtf8()", temp);
-                        }
-                        return string.Format("(string) {0}.Descriptor.Fields[{1}].DefaultValue",
-                                             GetClassName(Descriptor.ContainingType), Descriptor.Index);
-                    case FieldType.Enum:
-                        return TypeName + "." + ((EnumValueDescriptor) Descriptor.DefaultValue).Name;
-                    case FieldType.Message:
-                    case FieldType.Group:
-                        return TypeName + ".DefaultInstance";
-                    default:
-                        throw new InvalidOperationException("Invalid field descriptor type");
-                }
-            }
-        }
-
-        protected string PropertyName
-        {
-            get { return Descriptor.CSharpOptions.PropertyName; }
-        }
-
-        protected string Name
-        {
-            get { return NameHelpers.UnderscoresToCamelCase(GetFieldName(Descriptor)); }
-        }
-
-        protected int Number
-        {
-            get { return Descriptor.FieldNumber; }
-        }
-
-        protected void AddNullCheck(TextGenerator writer)
-        {
-            AddNullCheck(writer, "value");
-        }
-
-        protected void AddNullCheck(TextGenerator writer, string name)
-        {
-            if (IsNullableType)
-            {
-                writer.WriteLine("  pb::ThrowHelper.ThrowIfNull({0}, \"{0}\");", name);
-            }
-        }
-
-        protected void AddPublicMemberAttributes(TextGenerator writer)
-        {
-            AddDeprecatedFlag(writer);
-            AddClsComplianceCheck(writer);
-        }
-
-        protected void AddClsComplianceCheck(TextGenerator writer)
-        {
-            if (!Descriptor.IsCLSCompliant && Descriptor.File.CSharpOptions.ClsCompliance)
-            {
-                writer.WriteLine("[global::System.CLSCompliant(false)]");
-            }
-        }
-
-        protected bool IsObsolete { get { return Descriptor.Options.Deprecated; } }
-
-        /// <summary>
-        /// Writes [global::System.ObsoleteAttribute()] if the member is obsolete
-        /// </summary>
-        protected void AddDeprecatedFlag(TextGenerator writer)
-        {
-            if (IsObsolete)
-            {
-                writer.WriteLine("[global::System.ObsoleteAttribute()]");
-            }
-        }
-
-        /// <summary>
-        /// For encodings with fixed sizes, returns that size in bytes.  Otherwise
-        /// returns -1. TODO(jonskeet): Make this less ugly.
-        /// </summary>
-        protected int FixedSize
-        {
-            get
-            {
-                switch (Descriptor.FieldType)
-                {
-                    case FieldType.UInt32:
-                    case FieldType.UInt64:
-                    case FieldType.Int32:
-                    case FieldType.Int64:
-                    case FieldType.SInt32:
-                    case FieldType.SInt64:
-                    case FieldType.Enum:
-                    case FieldType.Bytes:
-                    case FieldType.String:
-                    case FieldType.Message:
-                    case FieldType.Group:
-                        return -1;
-                    case FieldType.Float:
-                        return WireFormat.FloatSize;
-                    case FieldType.SFixed32:
-                        return WireFormat.SFixed32Size;
-                    case FieldType.Fixed32:
-                        return WireFormat.Fixed32Size;
-                    case FieldType.Double:
-                        return WireFormat.DoubleSize;
-                    case FieldType.SFixed64:
-                        return WireFormat.SFixed64Size;
-                    case FieldType.Fixed64:
-                        return WireFormat.Fixed64Size;
-                    case FieldType.Bool:
-                        return WireFormat.BoolSize;
-                    default:
-                        throw new InvalidOperationException("Invalid field descriptor type");
-                }
-            }
-        }
-
-        protected bool IsNullableType
-        {
-            get
-            {
-                switch (Descriptor.FieldType)
-                {
-                    case FieldType.Float:
-                    case FieldType.Double:
-                    case FieldType.Int32:
-                    case FieldType.Int64:
-                    case FieldType.SInt32:
-                    case FieldType.SInt64:
-                    case FieldType.SFixed32:
-                    case FieldType.SFixed64:
-                    case FieldType.UInt32:
-                    case FieldType.UInt64:
-                    case FieldType.Fixed32:
-                    case FieldType.Fixed64:
-                    case FieldType.Bool:
-                    case FieldType.Enum:
-                        return false;
-                    case FieldType.Bytes:
-                    case FieldType.String:
-                    case FieldType.Message:
-                    case FieldType.Group:
-                        return true;
-                    default:
-                        throw new InvalidOperationException("Invalid field descriptor type");
-                }
-            }
-        }
-
-        protected string TypeName
-        {
-            get
-            {
-                switch (Descriptor.FieldType)
-                {
-                    case FieldType.Enum:
-                        return GetClassName(Descriptor.EnumType);
-                    case FieldType.Message:
-                    case FieldType.Group:
-                        return GetClassName(Descriptor.MessageType);
-                    default:
-                        return DescriptorUtil.GetMappedTypeName(Descriptor.MappedType);
-                }
-            }
-        }
-
-        protected string MessageOrGroup
-        {
-            get { return Descriptor.FieldType == FieldType.Group ? "Group" : "Message"; }
-        }
-
-        /// <summary>
-        /// Returns the type name as used in CodedInputStream method names: SFixed32, UInt32 etc.
-        /// </summary>
-        protected string CapitalizedTypeName
-        {
-            get
-            {
-                // Our enum names match perfectly. How serendipitous.
-                return Descriptor.FieldType.ToString();
-            }
-        }
-    }
-}

+ 0 - 267
csharp/src/ProtoGen/Generator.cs

@@ -1,267 +0,0 @@
-#region Copyright notice and license
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://github.com/jskeet/dotnet-protobufs/
-// Original C++/Java/Python code:
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-#endregion
-
-using System;
-using System.Collections.Generic;
-using System.IO;
-using System.Text;
-using Google.ProtocolBuffers.Collections;
-using Google.ProtocolBuffers.Compiler.PluginProto;
-using Google.ProtocolBuffers.DescriptorProtos;
-using Google.ProtocolBuffers.Descriptors;
-
-namespace Google.ProtocolBuffers.ProtoGen
-{
-    /// <summary>
-    /// Code generator for protocol buffers. Only C# is supported at the moment.
-    /// </summary>
-    public sealed class Generator
-    {
-        private readonly GeneratorOptions options;
-
-        private Generator(GeneratorOptions options)
-        {
-            options.Validate();
-            this.options = options;
-        }
-
-        /// <summary>
-        /// Returns a generator configured with the specified options.
-        /// </summary>
-        public static Generator CreateGenerator(GeneratorOptions options)
-        {
-            return new Generator(options);
-        }
-
-        public void Generate(CodeGeneratorRequest request, CodeGeneratorResponse.Builder response)
-        {
-            IList<FileDescriptor> descriptors = ConvertDescriptors(options.FileOptions, request.ProtoFileList);
-
-            // Combine with options from command line
-            foreach (FileDescriptor descriptor in descriptors)
-            {
-                descriptor.ConfigureWithDefaultOptions(options.FileOptions);
-            }
-
-            bool duplicates = false;
-            Dictionary<string, bool> names = new Dictionary<string, bool>(StringComparer.OrdinalIgnoreCase);
-            foreach (FileDescriptor descriptor in descriptors)
-            {
-                string file = GetOutputFile(descriptor, false);
-                if (names.ContainsKey(file))
-                {
-                    duplicates = true;
-                    break;
-                }
-                names.Add(file, true);
-            }
-
-            //ROK - Changed to dictionary from HashSet to allow 2.0 compile
-            var filesToGenerate = new Dictionary<string, string>(StringComparer.OrdinalIgnoreCase);
-            foreach (var item in request.FileToGenerateList)
-            {
-                filesToGenerate[item] = null;
-            }
-            foreach (FileDescriptor descriptor in descriptors)
-            {
-                // Optionally exclude descriptors in google.protobuf
-                if (descriptor.CSharpOptions.IgnoreGoogleProtobuf && descriptor.Package == "google.protobuf")
-                {
-                    continue;
-                }
-                if (filesToGenerate.ContainsKey(descriptor.Name))
-                {
-                    Generate(descriptor, duplicates, response);
-                }
-            }
-        }
-
-        /// <summary>
-        /// Generates code for a particular file. All dependencies must
-        /// already have been resolved.
-        /// </summary>
-        private void Generate(FileDescriptor descriptor, bool duplicates, CodeGeneratorResponse.Builder response)
-        {
-            var code = new StringBuilder();
-            var ucg = new UmbrellaClassGenerator(descriptor);
-            using (StringWriter textWriter = new StringWriter(code))
-            {
-                TextGenerator writer = new TextGenerator(textWriter, options.LineBreak);
-                ucg.Generate(writer);
-            }
-            response.AddFile(new CodeGeneratorResponse.Types.File.Builder
-            {
-                Name = GetOutputFile(descriptor, duplicates),
-                Content = code.ToString(),
-            }.Build());
-        }
-
-        private string GetOutputFile(FileDescriptor descriptor, bool duplicates)
-        {
-            CSharpFileOptions fileOptions = descriptor.CSharpOptions;
-
-            string filename = descriptor.CSharpOptions.UmbrellaClassname + descriptor.CSharpOptions.FileExtension;
-            if (duplicates)
-            {
-                string namepart;
-                if (String.IsNullOrEmpty(descriptor.Name) || String.IsNullOrEmpty(namepart = Path.GetFileNameWithoutExtension(descriptor.Name)))
-                    throw new ApplicationException("Duplicate UmbrellaClassname options created a file name collision.");
-
-                filename = namepart + descriptor.CSharpOptions.FileExtension;
-            }
-
-            string outputDirectory = descriptor.CSharpOptions.OutputDirectory;
-            if (fileOptions.ExpandNamespaceDirectories)
-            {
-                string package = fileOptions.Namespace;
-                if (!string.IsNullOrEmpty(package))
-                {
-                    string[] bits = package.Split('.');
-                    foreach (string bit in bits)
-                    {
-                        outputDirectory = Path.Combine(outputDirectory, bit);
-                    }
-                }
-            }
-
-            // As the directory can be explicitly specified in options, we need to make sure it exists
-            Directory.CreateDirectory(outputDirectory);
-            return Path.Combine(outputDirectory, filename);
-        }
-
-        /// <summary>
-        /// Resolves any dependencies and converts FileDescriptorProtos into FileDescriptors.
-        /// The list returned is in the same order as the protos are listed in the descriptor set.
-        /// Note: this method is internal rather than private to allow testing.
-        /// </summary>
-        /// <exception cref="DependencyResolutionException">Not all dependencies could be resolved.</exception>
-        public static IList<FileDescriptor> ConvertDescriptors(CSharpFileOptions options,
-                                                               IList<FileDescriptorProto> fileList)
-        {
-            FileDescriptor[] converted = new FileDescriptor[fileList.Count];
-
-            Dictionary<string, FileDescriptor> convertedMap = new Dictionary<string, FileDescriptor>();
-
-            int totalConverted = 0;
-
-            bool madeProgress = true;
-            while (madeProgress && totalConverted < converted.Length)
-            {
-                madeProgress = false;
-                for (int i = 0; i < converted.Length; i++)
-                {
-                    if (converted[i] != null)
-                    {
-                        // Already done this one
-                        continue;
-                    }
-                    FileDescriptorProto candidate = fileList[i];
-                    FileDescriptor[] dependencies = new FileDescriptor[candidate.DependencyList.Count];
-
-
-                    CSharpFileOptions.Builder builder = options.ToBuilder();
-                    if (candidate.Options.HasExtension(CSharpOptions.CSharpFileOptions))
-                    {
-                        builder.MergeFrom(
-                            candidate.Options.GetExtension(CSharpOptions.CSharpFileOptions));
-                    }
-                    CSharpFileOptions localOptions = builder.Build();
-
-                    bool foundAllDependencies = true;
-                    for (int j = 0; j < dependencies.Length; j++)
-                    {
-                        if (!convertedMap.TryGetValue(candidate.DependencyList[j], out dependencies[j]))
-                        {
-                            // We can auto-magically resolve these since we already have their description
-                            // This way if the file is only referencing options it does not need to be built with the
-                            // --include_imports definition.
-                            if (localOptions.IgnoreGoogleProtobuf &&
-                                (candidate.DependencyList[j] == "google/protobuf/csharp_options.proto"))
-                            {
-                                dependencies[j] = CSharpOptions.Descriptor;
-                                continue;
-                            }
-                            if (localOptions.IgnoreGoogleProtobuf &&
-                                (candidate.DependencyList[j] == "google/protobuf/descriptor.proto"))
-                            {
-                                dependencies[j] = DescriptorProtoFile.Descriptor;
-                                continue;
-                            }
-                            foundAllDependencies = false;
-                            break;
-                        }
-                    }
-                    if (!foundAllDependencies)
-                    {
-                        continue;
-                    }
-                    madeProgress = true;
-                    totalConverted++;
-                    converted[i] = FileDescriptor.BuildFrom(candidate, dependencies);
-                    convertedMap[candidate.Name] = converted[i];
-                }
-            }
-            if (!madeProgress)
-            {
-                StringBuilder remaining = new StringBuilder();
-                for (int i = 0; i < converted.Length; i++)
-                {
-                    if (converted[i] == null)
-                    {
-                        if (remaining.Length != 0)
-                        {
-                            remaining.Append(", ");
-                        }
-                        FileDescriptorProto failure = fileList[i];
-                        remaining.Append(failure.Name);
-                        remaining.Append(":");
-                        foreach (string dependency in failure.DependencyList)
-                        {
-                            if (!convertedMap.ContainsKey(dependency))
-                            {
-                                remaining.Append(" ");
-                                remaining.Append(dependency);
-                            }
-                        }
-                        remaining.Append(";");
-                    }
-                }
-                throw new DependencyResolutionException("Unable to resolve all dependencies: " + remaining);
-            }
-            return Lists.AsReadOnly(converted);
-        }
-    }
-}

+ 0 - 330
csharp/src/ProtoGen/GeneratorOptions.cs

@@ -1,330 +0,0 @@
-#region Copyright notice and license
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://github.com/jskeet/dotnet-protobufs/
-// Original C++/Java/Python code:
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-#endregion
-
-using System;
-using System.Collections.Generic;
-using System.IO;
-using System.Text.RegularExpressions;
-using Google.ProtocolBuffers.DescriptorProtos;
-using Google.ProtocolBuffers.Descriptors;
-
-namespace Google.ProtocolBuffers.ProtoGen
-{
-    /// <summary>
-    /// All the configuration required for the generator - where to generate
-    /// output files, the location of input files etc. While this isn't immutable
-    /// in practice, the contents shouldn't be changed after being passed to
-    /// the generator.
-    /// </summary>
-    public sealed class GeneratorOptions
-    {
-        private static Dictionary<string, string> LineBreaks =
-            new Dictionary<string, string>(StringComparer.InvariantCultureIgnoreCase)
-                {
-                    {"Windows", "\r\n"},
-                    {"Unix", "\n"},
-                    {"Default", Environment.NewLine}
-                };
-
-        public IList<string> InputFiles { get; set; }
-
-        public GeneratorOptions()
-        {
-            LineBreak = Environment.NewLine;
-        }
-
-        /// <summary>
-        /// Attempts to validate the options, but doesn't throw an exception if they're invalid.
-        /// Instead, when this method returns false, the output variable will contain a collection
-        /// of reasons for the validation failure.
-        /// </summary>
-        /// <param name="reasons">Variable to receive a list of reasons in case of validation failure.</param>
-        /// <returns>true if the options are valid; false otherwise</returns>
-        public bool TryValidate(out IList<string> reasons)
-        {
-            List<string> tmpReasons = new List<string>();
-
-            ParseArguments(tmpReasons);
-
-            // Output directory validation
-            if (string.IsNullOrEmpty(FileOptions.OutputDirectory))
-            {
-                tmpReasons.Add("No output directory specified");
-            }
-            else
-            {
-                if (!Directory.Exists(FileOptions.OutputDirectory))
-                {
-                    tmpReasons.Add("Specified output directory (" + FileOptions.OutputDirectory + " doesn't exist.");
-                }
-            }
-
-            // Input file validation (just in terms of presence)
-            if (InputFiles == null || InputFiles.Count == 0)
-            {
-                tmpReasons.Add("No input files specified");
-            }
-            else
-            {
-                foreach (string input in InputFiles)
-                {
-                    FileInfo fi = new FileInfo(input);
-                    if (!fi.Exists)
-                    {
-                        tmpReasons.Add("Input file " + input + " doesn't exist.");
-                    }
-                }
-            }
-
-            if (tmpReasons.Count != 0)
-            {
-                reasons = tmpReasons;
-                return false;
-            }
-
-            reasons = null;
-            return true;
-        }
-
-        /// <summary>
-        /// Validates that all the options have been set and are valid,
-        /// throwing an exception if they haven't.
-        /// </summary>
-        /// <exception cref="InvalidOptionsException">The options are invalid.</exception>
-        public void Validate()
-        {
-            IList<string> reasons;
-            if (!TryValidate(out reasons))
-            {
-                throw new InvalidOptionsException(reasons);
-            }
-        }
-
-        // Raw arguments, used to provide defaults for proto file options
-        public IList<string> Arguments { get; set; }
-
-        [Obsolete("Please use GeneratorOptions.FileOptions.OutputDirectory instead")]
-        public string OutputDirectory
-        {
-            get { return FileOptions.OutputDirectory; }
-            set
-            {
-                CSharpFileOptions.Builder bld = FileOptions.ToBuilder();
-                bld.OutputDirectory = value;
-                FileOptions = bld.Build();
-            }
-        }
-
-        private static readonly Regex ArgMatch = new Regex(@"^[-/](?<name>[\w_]+?)[:=](?<value>.*)$");
-        private CSharpFileOptions fileOptions;
-
-        public CSharpFileOptions FileOptions
-        {
-            get { return fileOptions ?? (fileOptions = CSharpFileOptions.DefaultInstance); }
-            set { fileOptions = value; }
-        }
-
-        public string LineBreak { get; set; }
-
-        private void ParseArguments(IList<string> tmpReasons)
-        {
-            bool doHelp = Arguments.Count == 0;
-
-            InputFiles = new List<string>();
-            CSharpFileOptions.Builder builder = FileOptions.ToBuilder();
-            Dictionary<string, FieldDescriptor> fields =
-                new Dictionary<string, FieldDescriptor>(StringComparer.OrdinalIgnoreCase);
-            foreach (FieldDescriptor fld in builder.DescriptorForType.Fields)
-            {
-                fields.Add(fld.Name, fld);
-            }
-
-            foreach (string argument in Arguments)
-            {
-                if (StringComparer.OrdinalIgnoreCase.Equals("-help", argument) ||
-                    StringComparer.OrdinalIgnoreCase.Equals("/help", argument) ||
-                    StringComparer.OrdinalIgnoreCase.Equals("-?", argument) ||
-                    StringComparer.OrdinalIgnoreCase.Equals("/?", argument))
-                {
-                    doHelp = true;
-                    break;
-                }
-
-                Match m = ArgMatch.Match(argument);
-                if (m.Success)
-                {
-                    FieldDescriptor fld;
-                    string name = m.Groups["name"].Value;
-                    string value = m.Groups["value"].Value;
-
-                    if (fields.TryGetValue(name, out fld))
-                    {
-                        object obj;
-                        if (TryCoerceType(value, fld, out obj, tmpReasons))
-                        {
-                            builder[fld] = obj;
-                        }
-                    }
-                    else if (name == "line_break")
-                    {
-                        string tmp;
-                        if (LineBreaks.TryGetValue(value, out tmp))
-                        {
-                            LineBreak = tmp;
-                        }
-                        else
-                        {
-                            tmpReasons.Add("Invalid value for 'line_break': " + value + ".");
-                        }
-                    }
-                    else if (!File.Exists(argument))
-                    {
-                        doHelp = true;
-                        tmpReasons.Add("Unknown argument '" + name + "'.");
-                    }
-                    else
-                    {
-                        InputFiles.Add(argument);
-                    }
-                }
-                else
-                {
-                    InputFiles.Add(argument);
-                }
-            }
-
-            if (doHelp || InputFiles.Count == 0)
-            {
-                tmpReasons.Add("Arguments:");
-                foreach (KeyValuePair<string, FieldDescriptor> field in fields)
-                {
-                    tmpReasons.Add(String.Format("-{0}=[{1}]", field.Key, field.Value.FieldType));
-                }
-                tmpReasons.Add("-line_break=[" + string.Join("|", new List<string>(LineBreaks.Keys).ToArray()) + "]");
-                tmpReasons.Add("followed by one or more file paths.");
-            }
-            else
-            {
-                FileOptions = builder.Build();
-            }
-        }
-
-        private static bool TryCoerceType(string text, FieldDescriptor field, out object value, IList<string> tmpReasons)
-        {
-            value = null;
-
-            switch (field.FieldType)
-            {
-                case FieldType.Int32:
-                case FieldType.SInt32:
-                case FieldType.SFixed32:
-                    value = Int32.Parse(text);
-                    break;
-
-                case FieldType.Int64:
-                case FieldType.SInt64:
-                case FieldType.SFixed64:
-                    value = Int64.Parse(text);
-                    break;
-
-                case FieldType.UInt32:
-                case FieldType.Fixed32:
-                    value = UInt32.Parse(text);
-                    break;
-
-                case FieldType.UInt64:
-                case FieldType.Fixed64:
-                    value = UInt64.Parse(text);
-                    break;
-
-                case FieldType.Float:
-                    value = float.Parse(text);
-                    break;
-
-                case FieldType.Double:
-                    value = Double.Parse(text);
-                    break;
-
-                case FieldType.Bool:
-                    value = Boolean.Parse(text);
-                    break;
-
-                case FieldType.String:
-                    value = text;
-                    break;
-
-                case FieldType.Enum:
-                    {
-                        EnumDescriptor enumType = field.EnumType;
-
-                        int number;
-                        if (int.TryParse(text, out number))
-                        {
-                            value = enumType.FindValueByNumber(number);
-                            if (value == null)
-                            {
-                                tmpReasons.Add(
-                                    "Enum type \"" + enumType.FullName +
-                                    "\" has no value with number " + number + ".");
-                                return false;
-                            }
-                        }
-                        else
-                        {
-                            value = enumType.FindValueByName(text);
-                            if (value == null)
-                            {
-                                tmpReasons.Add(
-                                    "Enum type \"" + enumType.FullName +
-                                    "\" has no value named \"" + text + "\".");
-                                return false;
-                            }
-                        }
-
-                        break;
-                    }
-
-                case FieldType.Bytes:
-                case FieldType.Message:
-                case FieldType.Group:
-                    tmpReasons.Add("Unhandled field type " + field.FieldType.ToString() + ".");
-                    return false;
-            }
-
-            return true;
-        }
-    }
-}

+ 0 - 45
csharp/src/ProtoGen/Helpers.cs

@@ -1,45 +0,0 @@
-#region Copyright notice and license
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://github.com/jskeet/dotnet-protobufs/
-// Original C++/Java/Python code:
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-#endregion
-
-namespace Google.ProtocolBuffers.ProtoGen
-{
-    /// <summary>
-    /// Helpers to resolve class names etc.
-    /// </summary>
-    internal static class Helpers
-    {
-    }
-}

+ 0 - 53
csharp/src/ProtoGen/IFieldSourceGenerator.cs

@@ -1,53 +0,0 @@
-#region Copyright notice and license
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://github.com/jskeet/dotnet-protobufs/
-// Original C++/Java/Python code:
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-#endregion
-
-namespace Google.ProtocolBuffers.ProtoGen
-{
-    internal interface IFieldSourceGenerator
-    {
-        void GenerateMembers(TextGenerator writer);
-        void GenerateBuilderMembers(TextGenerator writer);
-        void GenerateMergingCode(TextGenerator writer);
-        void GenerateBuildingCode(TextGenerator writer);
-        void GenerateParsingCode(TextGenerator writer);
-        void GenerateSerializationCode(TextGenerator writer);
-        void GenerateSerializedSizeCode(TextGenerator writer);
-
-        void WriteHash(TextGenerator writer);
-        void WriteEquals(TextGenerator writer);
-        void WriteToString(TextGenerator writer);
-    }
-}

+ 0 - 43
csharp/src/ProtoGen/ISourceGenerator.cs

@@ -1,43 +0,0 @@
-#region Copyright notice and license
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://github.com/jskeet/dotnet-protobufs/
-// Original C++/Java/Python code:
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-#endregion
-
-namespace Google.ProtocolBuffers.ProtoGen
-{
-    internal interface ISourceGenerator
-    {
-        void Generate(TextGenerator writer);
-    }
-}

+ 0 - 77
csharp/src/ProtoGen/InvalidOptionsException.cs

@@ -1,77 +0,0 @@
-#region Copyright notice and license
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://github.com/jskeet/dotnet-protobufs/
-// Original C++/Java/Python code:
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-#endregion
-
-using System;
-using System.Collections.Generic;
-using System.Text;
-using Google.ProtocolBuffers.Collections;
-
-namespace Google.ProtocolBuffers.ProtoGen
-{
-    /// <summary>
-    /// Exception thrown to indicate that the options passed were invalid.
-    /// </summary>
-    public sealed class InvalidOptionsException : Exception
-    {
-        private readonly IList<string> reasons;
-
-        /// <summary>
-        /// An immutable list of reasons why the options were invalid.
-        /// </summary>
-        public IList<string> Reasons
-        {
-            get { return reasons; }
-        }
-
-        public InvalidOptionsException(IList<string> reasons)
-            : base(BuildMessage(reasons))
-        {
-            this.reasons = Lists.AsReadOnly(reasons);
-        }
-
-        private static string BuildMessage(IEnumerable<string> reasons)
-        {
-            StringBuilder builder = new StringBuilder("Invalid options:");
-            builder.AppendLine();
-            foreach (string reason in reasons)
-            {
-                builder.Append("  ");
-                builder.AppendLine(reason);
-            }
-            return builder.ToString();
-        }
-    }
-}

+ 0 - 174
csharp/src/ProtoGen/MessageFieldGenerator.cs

@@ -1,174 +0,0 @@
-#region Copyright notice and license
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://github.com/jskeet/dotnet-protobufs/
-// Original C++/Java/Python code:
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-#endregion
-
-using Google.ProtocolBuffers.Descriptors;
-
-namespace Google.ProtocolBuffers.ProtoGen
-{
-    internal class MessageFieldGenerator : FieldGeneratorBase, IFieldSourceGenerator
-    {
-        internal MessageFieldGenerator(FieldDescriptor descriptor, int fieldOrdinal)
-            : base(descriptor, fieldOrdinal)
-        {
-        }
-
-        public void GenerateMembers(TextGenerator writer)
-        {
-            writer.WriteLine("private bool has{0};", PropertyName);
-            writer.WriteLine("private {0} {1}_;", TypeName, Name);
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public bool Has{0} {{", PropertyName);
-            writer.WriteLine("  get {{ return has{0}; }}", PropertyName);
-            writer.WriteLine("}");
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public {0} {1} {{", TypeName, PropertyName);
-            writer.WriteLine("  get {{ return {0}_ ?? {1}; }}", Name, DefaultValue);
-            writer.WriteLine("}");
-        }
-
-        public void GenerateBuilderMembers(TextGenerator writer)
-        {
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public bool Has{0} {{", PropertyName);
-            writer.WriteLine(" get {{ return result.has{0}; }}", PropertyName);
-            writer.WriteLine("}");
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public {0} {1} {{", TypeName, PropertyName);
-            writer.WriteLine("  get {{ return result.{0}; }}", PropertyName);
-            writer.WriteLine("  set {{ Set{0}(value); }}", PropertyName);
-            writer.WriteLine("}");
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public Builder Set{0}({1} value) {{", PropertyName, TypeName);
-            AddNullCheck(writer);
-            writer.WriteLine("  PrepareBuilder();");
-            writer.WriteLine("  result.has{0} = true;", PropertyName);
-            writer.WriteLine("  result.{0}_ = value;", Name);
-            writer.WriteLine("  return this;");
-            writer.WriteLine("}");
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public Builder Set{0}({1}.Builder builderForValue) {{", PropertyName, TypeName);
-            AddNullCheck(writer, "builderForValue");
-            writer.WriteLine("  PrepareBuilder();");
-            writer.WriteLine("  result.has{0} = true;", PropertyName);
-            writer.WriteLine("  result.{0}_ = builderForValue.Build();", Name);
-            writer.WriteLine("  return this;");
-            writer.WriteLine("}");
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public Builder Merge{0}({1} value) {{", PropertyName, TypeName);
-            AddNullCheck(writer);
-            writer.WriteLine("  PrepareBuilder();");
-            writer.WriteLine("  if (result.has{0} &&", PropertyName);
-            writer.WriteLine("      result.{0}_ != {1}) {{", Name, DefaultValue);
-            writer.WriteLine("      result.{0}_ = {1}.CreateBuilder(result.{0}_).MergeFrom(value).BuildPartial();", Name,
-                             TypeName);
-            writer.WriteLine("  } else {");
-            writer.WriteLine("    result.{0}_ = value;", Name);
-            writer.WriteLine("  }");
-            writer.WriteLine("  result.has{0} = true;", PropertyName);
-            writer.WriteLine("  return this;");
-            writer.WriteLine("}");
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public Builder Clear{0}() {{", PropertyName);
-            writer.WriteLine("  PrepareBuilder();");
-            writer.WriteLine("  result.has{0} = false;", PropertyName);
-            writer.WriteLine("  result.{0}_ = null;", Name);
-            writer.WriteLine("  return this;");
-            writer.WriteLine("}");
-        }
-
-        public void GenerateMergingCode(TextGenerator writer)
-        {
-            writer.WriteLine("if (other.Has{0}) {{", PropertyName);
-            writer.WriteLine("  Merge{0}(other.{0});", PropertyName);
-            writer.WriteLine("}");
-        }
-
-        public void GenerateBuildingCode(TextGenerator writer)
-        {
-            // Nothing to do for singular fields
-        }
-
-        public void GenerateParsingCode(TextGenerator writer)
-        {
-            writer.WriteLine("{0}.Builder subBuilder = {0}.CreateBuilder();", TypeName);
-            writer.WriteLine("if (result.has{0}) {{", PropertyName);
-            writer.WriteLine("  subBuilder.MergeFrom({0});", PropertyName);
-            writer.WriteLine("}");
-            if (Descriptor.FieldType == FieldType.Group)
-            {
-                writer.WriteLine("input.ReadGroup({0}, subBuilder, extensionRegistry);", Number);
-            }
-            else
-            {
-                writer.WriteLine("input.ReadMessage(subBuilder, extensionRegistry);");
-            }
-            writer.WriteLine("{0} = subBuilder.BuildPartial();", PropertyName);
-        }
-
-        public void GenerateSerializationCode(TextGenerator writer)
-        {
-            writer.WriteLine("if (has{0}) {{", PropertyName);
-            writer.WriteLine("  output.Write{0}({1}, field_names[{3}], {2});", MessageOrGroup, Number, PropertyName,
-                             FieldOrdinal);
-            writer.WriteLine("}");
-        }
-
-        public void GenerateSerializedSizeCode(TextGenerator writer)
-        {
-            writer.WriteLine("if (has{0}) {{", PropertyName);
-            writer.WriteLine("  size += pb::CodedOutputStream.Compute{0}Size({1}, {2});",
-                             MessageOrGroup, Number, PropertyName);
-            writer.WriteLine("}");
-        }
-
-        public override void WriteHash(TextGenerator writer)
-        {
-            writer.WriteLine("if (has{0}) hash ^= {1}_.GetHashCode();", PropertyName, Name);
-        }
-
-        public override void WriteEquals(TextGenerator writer)
-        {
-            writer.WriteLine("if (has{0} != other.has{0} || (has{0} && !{1}_.Equals(other.{1}_))) return false;",
-                             PropertyName, Name);
-        }
-
-        public override void WriteToString(TextGenerator writer)
-        {
-            writer.WriteLine("PrintField(\"{2}\", has{0}, {1}_, writer);", PropertyName, Name,
-                             Descriptor.FieldType == FieldType.Group ? Descriptor.MessageType.Name : Descriptor.Name);
-        }
-    }
-}

+ 0 - 893
csharp/src/ProtoGen/MessageGenerator.cs

@@ -1,893 +0,0 @@
-#region Copyright notice and license
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://github.com/jskeet/dotnet-protobufs/
-// Original C++/Java/Python code:
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-#endregion
-
-using System;
-using System.Collections.Generic;
-using Google.ProtocolBuffers.DescriptorProtos;
-using Google.ProtocolBuffers.Descriptors;
-
-namespace Google.ProtocolBuffers.ProtoGen
-{
-    internal class MessageGenerator : SourceGeneratorBase<MessageDescriptor>, ISourceGenerator
-    {
-        private string[] _fieldNames;
-
-        internal MessageGenerator(MessageDescriptor descriptor) : base(descriptor)
-        {
-        }
-
-        private string ClassName
-        {
-            get { return Descriptor.Name; }
-        }
-
-        private string FullClassName
-        {
-            get { return GetClassName(Descriptor); }
-        }
-
-        /// <summary>
-        /// Get an identifier that uniquely identifies this type within the file.
-        /// This is used to declare static variables related to this type at the
-        /// outermost file scope.
-        /// </summary>
-        private static string GetUniqueFileScopeIdentifier(IDescriptor descriptor)
-        {
-            return "static_" + descriptor.FullName.Replace(".", "_");
-        }
-
-        internal void GenerateStaticVariables(TextGenerator writer)
-        {
-            // Because descriptor.proto (Google.ProtocolBuffers.DescriptorProtos) is
-            // used in the construction of descriptors, we have a tricky bootstrapping
-            // problem.  To help control static initialization order, we make sure all
-            // descriptors and other static data that depends on them are members of
-            // the proto-descriptor class.  This way, they will be initialized in
-            // a deterministic order.
-
-            string identifier = GetUniqueFileScopeIdentifier(Descriptor);
-
-            if (!UseLiteRuntime)
-            {
-                // The descriptor for this type.
-                string access = Descriptor.File.CSharpOptions.NestClasses ? "private" : "internal";
-                writer.WriteLine("{0} static pbd::MessageDescriptor internal__{1}__Descriptor;", access, identifier);
-                writer.WriteLine(
-                    "{0} static pb::FieldAccess.FieldAccessorTable<{1}, {1}.Builder> internal__{2}__FieldAccessorTable;",
-                    access, FullClassName, identifier);
-            }
-            // Generate static members for all nested types.
-            foreach (MessageDescriptor nestedMessage in Descriptor.NestedTypes)
-            {
-                new MessageGenerator(nestedMessage).GenerateStaticVariables(writer);
-            }
-        }
-
-        internal void GenerateStaticVariableInitializers(TextGenerator writer)
-        {
-            string identifier = GetUniqueFileScopeIdentifier(Descriptor);
-
-            if (!UseLiteRuntime)
-            {
-                writer.Write("internal__{0}__Descriptor = ", identifier);
-                if (Descriptor.ContainingType == null)
-                {
-                    writer.WriteLine("Descriptor.MessageTypes[{0}];", Descriptor.Index);
-                }
-                else
-                {
-                    writer.WriteLine("internal__{0}__Descriptor.NestedTypes[{1}];",
-                                     GetUniqueFileScopeIdentifier(Descriptor.ContainingType), Descriptor.Index);
-                }
-
-                writer.WriteLine("internal__{0}__FieldAccessorTable = ", identifier);
-                writer.WriteLine(
-                    "    new pb::FieldAccess.FieldAccessorTable<{1}, {1}.Builder>(internal__{0}__Descriptor,",
-                    identifier, FullClassName);
-                writer.Print("        new string[] { ");
-                foreach (FieldDescriptor field in Descriptor.Fields)
-                {
-                    writer.Write("\"{0}\", ", field.CSharpOptions.PropertyName);
-                }
-                writer.WriteLine("});");
-            }
-
-            // Generate static member initializers for all nested types.
-            foreach (MessageDescriptor nestedMessage in Descriptor.NestedTypes)
-            {
-                new MessageGenerator(nestedMessage).GenerateStaticVariableInitializers(writer);
-            }
-
-            foreach (FieldDescriptor extension in Descriptor.Extensions)
-            {
-                new ExtensionGenerator(extension).GenerateStaticVariableInitializers(writer);
-            }
-        }
-
-        public string[] FieldNames
-        {
-            get
-            {
-                if (_fieldNames == null)
-                {
-                    List<string> names = new List<string>();
-                    foreach (FieldDescriptor fieldDescriptor in Descriptor.Fields)
-                    {
-                        names.Add(fieldDescriptor.Name);
-                    }
-                    //if you change this, the search must also change in GenerateBuilderParsingMethods
-                    names.Sort(StringComparer.Ordinal);
-                    _fieldNames = names.ToArray();
-                }
-                return _fieldNames;
-            }
-        }
-
-        internal int FieldOrdinal(FieldDescriptor field)
-        {
-            return Array.BinarySearch(FieldNames, field.Name, StringComparer.Ordinal);
-        }
-
-        private IFieldSourceGenerator CreateFieldGenerator(FieldDescriptor fieldDescriptor)
-        {
-            return SourceGenerators.CreateFieldGenerator(fieldDescriptor, FieldOrdinal(fieldDescriptor));
-        }
-        
-        public void Generate(TextGenerator writer)
-        {
-            if (Descriptor.File.CSharpOptions.AddSerializable)
-            {
-                writer.WriteLine("[global::System.SerializableAttribute()]");
-            }
-            writer.WriteLine("[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]");
-            WriteGeneratedCodeAttributes(writer);
-            writer.WriteLine("{0} sealed partial class {1} : pb::{2}Message{3}<{1}, {1}.Builder> {{",
-                             ClassAccessLevel, ClassName,
-                             Descriptor.Proto.ExtensionRangeCount > 0 ? "Extendable" : "Generated",
-                             RuntimeSuffix);
-            writer.Indent();
-            if (Descriptor.File.CSharpOptions.GeneratePrivateCtor)
-            {
-                writer.WriteLine("private {0}() {{ }}", ClassName);
-            }
-            // Must call MakeReadOnly() to make sure all lists are made read-only
-            writer.WriteLine("private static readonly {0} defaultInstance = new {0}().MakeReadOnly();", ClassName);
-
-            if (OptimizeSpeed)
-            {
-                writer.WriteLine("private static readonly string[] _{0}FieldNames = new string[] {{ {2}{1}{2} }};",
-                                 NameHelpers.UnderscoresToCamelCase(ClassName), String.Join("\", \"", FieldNames),
-                                 FieldNames.Length > 0 ? "\"" : "");
-                List<string> tags = new List<string>();
-                foreach (string name in FieldNames)
-                {
-                    tags.Add(WireFormat.MakeTag(Descriptor.FindFieldByName(name)).ToString());
-                }
-
-                writer.WriteLine("private static readonly uint[] _{0}FieldTags = new uint[] {{ {1} }};",
-                                 NameHelpers.UnderscoresToCamelCase(ClassName), String.Join(", ", tags.ToArray()));
-            }
-            writer.WriteLine("public static {0} DefaultInstance {{", ClassName);
-            writer.WriteLine("  get { return defaultInstance; }");
-            writer.WriteLine("}");
-            writer.WriteLine();
-            writer.WriteLine("public override {0} DefaultInstanceForType {{", ClassName);
-            writer.WriteLine("  get { return DefaultInstance; }");
-            writer.WriteLine("}");
-            writer.WriteLine();
-            writer.WriteLine("protected override {0} ThisMessage {{", ClassName);
-            writer.WriteLine("  get { return this; }");
-            writer.WriteLine("}");
-            writer.WriteLine();
-            if (!UseLiteRuntime)
-            {
-                writer.WriteLine("public static pbd::MessageDescriptor Descriptor {");
-                writer.WriteLine("  get {{ return {0}.internal__{1}__Descriptor; }}",
-                                 DescriptorUtil.GetFullUmbrellaClassName(Descriptor),
-                                 GetUniqueFileScopeIdentifier(Descriptor));
-                writer.WriteLine("}");
-                writer.WriteLine();
-                writer.WriteLine(
-                    "protected override pb::FieldAccess.FieldAccessorTable<{0}, {0}.Builder> InternalFieldAccessors {{",
-                    ClassName);
-                writer.WriteLine("  get {{ return {0}.internal__{1}__FieldAccessorTable; }}",
-                                 DescriptorUtil.GetFullUmbrellaClassName(Descriptor),
-                                 GetUniqueFileScopeIdentifier(Descriptor));
-                writer.WriteLine("}");
-                writer.WriteLine();
-            }
-
-            // Extensions don't need to go in an extra nested type 
-            WriteChildren(writer, null, Descriptor.Extensions);
-
-            if (Descriptor.EnumTypes.Count + Descriptor.NestedTypes.Count > 0)
-            {
-                writer.WriteLine("#region Nested types");
-                writer.WriteLine("[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]");
-                WriteGeneratedCodeAttributes(writer);
-                writer.WriteLine("public static partial class Types {");
-                writer.Indent();
-                WriteChildren(writer, null, Descriptor.EnumTypes);
-                WriteChildren(writer, null, Descriptor.NestedTypes);
-                writer.Outdent();
-                writer.WriteLine("}");
-                writer.WriteLine("#endregion");
-                writer.WriteLine();
-            }
-
-            foreach (FieldDescriptor fieldDescriptor in Descriptor.Fields)
-            {
-                if (Descriptor.File.CSharpOptions.ClsCompliance && GetFieldConstantName(fieldDescriptor).StartsWith("_"))
-                {
-                    writer.WriteLine("[global::System.CLSCompliant(false)]");
-                }
-
-                // Rats: we lose the debug comment here :(
-                writer.WriteLine("public const int {0} = {1};", GetFieldConstantName(fieldDescriptor),
-                                 fieldDescriptor.FieldNumber);
-                CreateFieldGenerator(fieldDescriptor).GenerateMembers(writer);
-                writer.WriteLine();
-            }
-
-            if (OptimizeSpeed)
-            {
-                GenerateIsInitialized(writer);
-                GenerateMessageSerializationMethods(writer);
-            }
-            if (UseLiteRuntime)
-            {
-                GenerateLiteRuntimeMethods(writer);
-            }
-
-            GenerateParseFromMethods(writer);
-            GenerateBuilder(writer);
-
-            // Force the static initialization code for the file to run, since it may
-            // initialize static variables declared in this class.
-            writer.WriteLine("static {0}() {{", ClassName);
-            // We call object.ReferenceEquals() just to make it a valid statement on its own.
-            // Another option would be GetType(), but that causes problems in DescriptorProtoFile,
-            // where the bootstrapping is somewhat recursive - type initializers call
-            // each other, effectively. We temporarily see Descriptor as null.
-            writer.WriteLine("  object.ReferenceEquals({0}.Descriptor, null);",
-                             DescriptorUtil.GetFullUmbrellaClassName(Descriptor));
-            writer.WriteLine("}");
-
-            writer.Outdent();
-            writer.WriteLine("}");
-            writer.WriteLine();
-        }
-
-        private void GenerateLiteRuntimeMethods(TextGenerator writer)
-        {
-            bool callbase = Descriptor.Proto.ExtensionRangeCount > 0;
-            writer.WriteLine("#region Lite runtime methods");
-            writer.WriteLine("public override int GetHashCode() {");
-            writer.Indent();
-            writer.WriteLine("int hash = GetType().GetHashCode();");
-            foreach (FieldDescriptor fieldDescriptor in Descriptor.Fields)
-            {
-                CreateFieldGenerator(fieldDescriptor).WriteHash(writer);
-            }
-            if (callbase)
-            {
-                writer.WriteLine("hash ^= base.GetHashCode();");
-            }
-            writer.WriteLine("return hash;");
-            writer.Outdent();
-            writer.WriteLine("}");
-            writer.WriteLine();
-
-            writer.WriteLine("public override bool Equals(object obj) {");
-            writer.Indent();
-            writer.WriteLine("{0} other = obj as {0};", ClassName);
-            writer.WriteLine("if (other == null) return false;");
-            foreach (FieldDescriptor fieldDescriptor in Descriptor.Fields)
-            {
-                CreateFieldGenerator(fieldDescriptor).WriteEquals(writer);
-            }
-            if (callbase)
-            {
-                writer.WriteLine("if (!base.Equals(other)) return false;");
-            }
-            writer.WriteLine("return true;");
-            writer.Outdent();
-            writer.WriteLine("}");
-            writer.WriteLine();
-
-            writer.WriteLine("public override void PrintTo(global::System.IO.TextWriter writer) {");
-            writer.Indent();
-            List<FieldDescriptor> sorted = new List<FieldDescriptor>(Descriptor.Fields);
-            sorted.Sort(
-                new Comparison<FieldDescriptor>(
-                    delegate(FieldDescriptor a, FieldDescriptor b) { return a.FieldNumber.CompareTo(b.FieldNumber); }));
-            foreach (FieldDescriptor fieldDescriptor in sorted)
-            {
-                CreateFieldGenerator(fieldDescriptor).WriteToString(writer);
-            }
-            if (callbase)
-            {
-                writer.WriteLine("base.PrintTo(writer);");
-            }
-            writer.Outdent();
-            writer.WriteLine("}");
-            writer.WriteLine("#endregion");
-            writer.WriteLine();
-        }
-
-        private void GenerateMessageSerializationMethods(TextGenerator writer)
-        {
-            List<FieldDescriptor> sortedFields = new List<FieldDescriptor>(Descriptor.Fields);
-            sortedFields.Sort((f1, f2) => f1.FieldNumber.CompareTo(f2.FieldNumber));
-
-            List<DescriptorProto.Types.ExtensionRange> sortedExtensions =
-                new List<DescriptorProto.Types.ExtensionRange>(Descriptor.Proto.ExtensionRangeList);
-            sortedExtensions.Sort((r1, r2) => (r1.Start.CompareTo(r2.Start)));
-
-            writer.WriteLine("public override void WriteTo(pb::ICodedOutputStream output) {");
-            writer.Indent();
-            // Make sure we've computed the serialized length, so that packed fields are generated correctly.
-            writer.WriteLine("CalcSerializedSize();");
-            writer.WriteLine("string[] field_names = _{0}FieldNames;", NameHelpers.UnderscoresToCamelCase(ClassName));
-            if (Descriptor.Proto.ExtensionRangeList.Count > 0)
-            {
-                writer.WriteLine(
-                    "pb::ExtendableMessage{1}<{0}, {0}.Builder>.ExtensionWriter extensionWriter = CreateExtensionWriter(this);",
-                    ClassName, RuntimeSuffix);
-            }
-
-            // Merge the fields and the extension ranges, both sorted by field number.
-            for (int i = 0, j = 0; i < Descriptor.Fields.Count || j < sortedExtensions.Count;)
-            {
-                if (i == Descriptor.Fields.Count)
-                {
-                    GenerateSerializeOneExtensionRange(writer, sortedExtensions[j++]);
-                }
-                else if (j == sortedExtensions.Count)
-                {
-                    GenerateSerializeOneField(writer, sortedFields[i++]);
-                }
-                else if (sortedFields[i].FieldNumber < sortedExtensions[j].Start)
-                {
-                    GenerateSerializeOneField(writer, sortedFields[i++]);
-                }
-                else
-                {
-                    GenerateSerializeOneExtensionRange(writer, sortedExtensions[j++]);
-                }
-            }
-
-            if (!UseLiteRuntime)
-            {
-                if (Descriptor.Proto.Options.MessageSetWireFormat)
-                {
-                    writer.WriteLine("UnknownFields.WriteAsMessageSetTo(output);");
-                }
-                else
-                {
-                    writer.WriteLine("UnknownFields.WriteTo(output);");
-                }
-            }
-
-            writer.Outdent();
-            writer.WriteLine("}");
-            writer.WriteLine();
-            writer.WriteLine("private int memoizedSerializedSize = -1;");
-            writer.WriteLine("public override int SerializedSize {");
-            writer.Indent();
-            writer.WriteLine("get {");
-            writer.Indent();
-            writer.WriteLine("int size = memoizedSerializedSize;");
-            writer.WriteLine("if (size != -1) return size;");
-            writer.WriteLine("return CalcSerializedSize();");
-            writer.Outdent();
-            writer.WriteLine("}");
-            writer.Outdent();
-            writer.WriteLine("}");
-            writer.WriteLine();
-
-            writer.WriteLine("private int CalcSerializedSize() {");
-            writer.Indent();
-            writer.WriteLine("int size = memoizedSerializedSize;");
-            writer.WriteLine("if (size != -1) return size;");
-            writer.WriteLine();
-            writer.WriteLine("size = 0;");
-            foreach (FieldDescriptor field in Descriptor.Fields)
-            {
-                CreateFieldGenerator(field).GenerateSerializedSizeCode(writer);
-            }
-            if (Descriptor.Proto.ExtensionRangeCount > 0)
-            {
-                writer.WriteLine("size += ExtensionsSerializedSize;");
-            }
-
-            if (!UseLiteRuntime)
-            {
-                if (Descriptor.Options.MessageSetWireFormat)
-                {
-                    writer.WriteLine("size += UnknownFields.SerializedSizeAsMessageSet;");
-                }
-                else
-                {
-                    writer.WriteLine("size += UnknownFields.SerializedSize;");
-                }
-            }
-            writer.WriteLine("memoizedSerializedSize = size;");
-            writer.WriteLine("return size;");
-            writer.Outdent();
-            writer.WriteLine("}");
-        }
-
-        private void GenerateSerializeOneField(TextGenerator writer, FieldDescriptor fieldDescriptor)
-        {
-            CreateFieldGenerator(fieldDescriptor).GenerateSerializationCode(writer);
-        }
-
-        private static void GenerateSerializeOneExtensionRange(TextGenerator writer,
-                                                               DescriptorProto.Types.ExtensionRange extensionRange)
-        {
-            writer.WriteLine("extensionWriter.WriteUntil({0}, output);", extensionRange.End);
-        }
-
-        private void GenerateParseFromMethods(TextGenerator writer)
-        {
-            // Note:  These are separate from GenerateMessageSerializationMethods()
-            //   because they need to be generated even for messages that are optimized
-            //   for code size.
-
-            writer.WriteLine("public static {0} ParseFrom(pb::ByteString data) {{", ClassName);
-            writer.WriteLine("  return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();");
-            writer.WriteLine("}");
-            writer.WriteLine(
-                "public static {0} ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {{",
-                ClassName);
-            writer.WriteLine("  return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();");
-            writer.WriteLine("}");
-            writer.WriteLine("public static {0} ParseFrom(byte[] data) {{", ClassName);
-            writer.WriteLine("  return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();");
-            writer.WriteLine("}");
-            writer.WriteLine("public static {0} ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {{",
-                             ClassName);
-            writer.WriteLine("  return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();");
-            writer.WriteLine("}");
-            writer.WriteLine("public static {0} ParseFrom(global::System.IO.Stream input) {{", ClassName);
-            writer.WriteLine("  return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();");
-            writer.WriteLine("}");
-            writer.WriteLine(
-                "public static {0} ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {{",
-                ClassName);
-            writer.WriteLine("  return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();");
-            writer.WriteLine("}");
-            writer.WriteLine("public static {0} ParseDelimitedFrom(global::System.IO.Stream input) {{", ClassName);
-            writer.WriteLine("  return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();");
-            writer.WriteLine("}");
-            writer.WriteLine(
-                "public static {0} ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {{",
-                ClassName);
-            writer.WriteLine("  return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();");
-            writer.WriteLine("}");
-            writer.WriteLine("public static {0} ParseFrom(pb::ICodedInputStream input) {{", ClassName);
-            writer.WriteLine("  return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();");
-            writer.WriteLine("}");
-            writer.WriteLine(
-                "public static {0} ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {{",
-                ClassName);
-            writer.WriteLine("  return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();");
-            writer.WriteLine("}");
-        }
-
-        /// <summary>
-        /// Returns whether or not the specified message type has any required fields.
-        /// If it doesn't, calls to check for initialization can be optimised.
-        /// TODO(jonskeet): Move this into MessageDescriptor?
-        /// </summary>
-        private static bool HasRequiredFields(MessageDescriptor descriptor,
-                                              Dictionary<MessageDescriptor, object> alreadySeen)
-        {
-            if (alreadySeen.ContainsKey(descriptor))
-            {
-                // The type is already in cache.  This means that either:
-                // a. The type has no required fields.
-                // b. We are in the midst of checking if the type has required fields,
-                //    somewhere up the stack.  In this case, we know that if the type
-                //    has any required fields, they'll be found when we return to it,
-                //    and the whole call to HasRequiredFields() will return true.
-                //    Therefore, we don't have to check if this type has required fields
-                //    here.
-                return false;
-            }
-            alreadySeen[descriptor] = descriptor; // Value is irrelevant
-
-            // If the type has extensions, an extension with message type could contain
-            // required fields, so we have to be conservative and assume such an
-            // extension exists.
-            if (descriptor.Extensions.Count > 0)
-            {
-                return true;
-            }
-
-            foreach (FieldDescriptor field in descriptor.Fields)
-            {
-                if (field.IsRequired)
-                {
-                    return true;
-                }
-                // Message or group
-                if (field.MappedType == MappedType.Message)
-                {
-                    if (HasRequiredFields(field.MessageType, alreadySeen))
-                    {
-                        return true;
-                    }
-                }
-            }
-            return false;
-        }
-
-        private void GenerateBuilder(TextGenerator writer)
-        {
-            writer.WriteLine("private {0} MakeReadOnly() {{", ClassName);
-            writer.Indent();
-            foreach (FieldDescriptor field in Descriptor.Fields)
-            {
-                CreateFieldGenerator(field).GenerateBuildingCode(writer);
-            }
-            writer.WriteLine("return this;");
-            writer.Outdent();
-            writer.WriteLine("}");
-            writer.WriteLine();
-
-            writer.WriteLine("public static Builder CreateBuilder() { return new Builder(); }");
-            writer.WriteLine("public override Builder ToBuilder() { return CreateBuilder(this); }");
-            writer.WriteLine("public override Builder CreateBuilderForType() { return new Builder(); }");
-            writer.WriteLine("public static Builder CreateBuilder({0} prototype) {{", ClassName);
-            writer.WriteLine("  return new Builder(prototype);");
-            writer.WriteLine("}");
-            writer.WriteLine();
-            if (Descriptor.File.CSharpOptions.AddSerializable)
-            {
-                writer.WriteLine("[global::System.SerializableAttribute()]");
-            }
-            writer.WriteLine("[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]");
-            WriteGeneratedCodeAttributes(writer);
-            writer.WriteLine("{0} sealed partial class Builder : pb::{2}Builder{3}<{1}, Builder> {{",
-                             ClassAccessLevel, ClassName,
-                             Descriptor.Proto.ExtensionRangeCount > 0 ? "Extendable" : "Generated", RuntimeSuffix);
-            writer.Indent();
-            writer.WriteLine("protected override Builder ThisBuilder {");
-            writer.WriteLine("  get { return this; }");
-            writer.WriteLine("}");
-            GenerateCommonBuilderMethods(writer);
-            if (OptimizeSpeed)
-            {
-                GenerateBuilderParsingMethods(writer);
-            }
-            foreach (FieldDescriptor field in Descriptor.Fields)
-            {
-                writer.WriteLine();
-                // No field comment :(
-                CreateFieldGenerator(field).GenerateBuilderMembers(writer);
-            }
-            writer.Outdent();
-            writer.WriteLine("}");
-        }
-
-        private void GenerateCommonBuilderMethods(TextGenerator writer)
-        {
-            //default constructor
-            writer.WriteLine("public Builder() {");
-            //Durring static initialization of message, DefaultInstance is expected to return null.
-            writer.WriteLine("  result = DefaultInstance;");
-            writer.WriteLine("  resultIsReadOnly = true;");
-            writer.WriteLine("}");
-            //clone constructor
-            writer.WriteLine("internal Builder({0} cloneFrom) {{", ClassName);
-            writer.WriteLine("  result = cloneFrom;");
-            writer.WriteLine("  resultIsReadOnly = true;");
-            writer.WriteLine("}");
-            writer.WriteLine();
-            writer.WriteLine("private bool resultIsReadOnly;");
-            writer.WriteLine("private {0} result;", ClassName);
-            writer.WriteLine();
-            writer.WriteLine("private {0} PrepareBuilder() {{", ClassName);
-            writer.WriteLine("  if (resultIsReadOnly) {");
-            writer.WriteLine("    {0} original = result;", ClassName);
-            writer.WriteLine("    result = new {0}();", ClassName);
-            writer.WriteLine("    resultIsReadOnly = false;");
-            writer.WriteLine("    MergeFrom(original);");
-            writer.WriteLine("  }");
-            writer.WriteLine("  return result;");
-            writer.WriteLine("}");
-            writer.WriteLine();
-            writer.WriteLine("public override bool IsInitialized {");
-            writer.WriteLine("  get { return result.IsInitialized; }");
-            writer.WriteLine("}");
-            writer.WriteLine();
-            writer.WriteLine("protected override {0} MessageBeingBuilt {{", ClassName);
-            writer.WriteLine("  get { return PrepareBuilder(); }");
-            writer.WriteLine("}");
-            writer.WriteLine();
-            //Not actually expecting that DefaultInstance would ever be null here; however, we will ensure it does not break
-            writer.WriteLine("public override Builder Clear() {");
-            writer.WriteLine("  result = DefaultInstance;", ClassName);
-            writer.WriteLine("  resultIsReadOnly = true;");
-            writer.WriteLine("  return this;");
-            writer.WriteLine("}");
-            writer.WriteLine();
-            writer.WriteLine("public override Builder Clone() {");
-            writer.WriteLine("  if (resultIsReadOnly) {");
-            writer.WriteLine("    return new Builder(result);");
-            writer.WriteLine("  } else {");
-            writer.WriteLine("    return new Builder().MergeFrom(result);");
-            writer.WriteLine("  }");
-            writer.WriteLine("}");
-            writer.WriteLine();
-            if (!UseLiteRuntime)
-            {
-                writer.WriteLine("public override pbd::MessageDescriptor DescriptorForType {");
-                writer.WriteLine("  get {{ return {0}.Descriptor; }}", FullClassName);
-                writer.WriteLine("}");
-                writer.WriteLine();
-            }
-            writer.WriteLine("public override {0} DefaultInstanceForType {{", ClassName);
-            writer.WriteLine("  get {{ return {0}.DefaultInstance; }}", FullClassName);
-            writer.WriteLine("}");
-            writer.WriteLine();
-
-            writer.WriteLine("public override {0} BuildPartial() {{", ClassName);
-            writer.Indent();
-            writer.WriteLine("if (resultIsReadOnly) {");
-            writer.WriteLine("  return result;");
-            writer.WriteLine("}");
-            writer.WriteLine("resultIsReadOnly = true;");
-            writer.WriteLine("return result.MakeReadOnly();");
-            writer.Outdent();
-            writer.WriteLine("}");
-            writer.WriteLine();
-
-            if (OptimizeSpeed)
-            {
-                writer.WriteLine("public override Builder MergeFrom(pb::IMessage{0} other) {{", RuntimeSuffix);
-                writer.WriteLine("  if (other is {0}) {{", ClassName);
-                writer.WriteLine("    return MergeFrom(({0}) other);", ClassName);
-                writer.WriteLine("  } else {");
-                writer.WriteLine("    base.MergeFrom(other);");
-                writer.WriteLine("    return this;");
-                writer.WriteLine("  }");
-                writer.WriteLine("}");
-                writer.WriteLine();
-                writer.WriteLine("public override Builder MergeFrom({0} other) {{", ClassName);
-                // Optimization:  If other is the default instance, we know none of its
-                // fields are set so we can skip the merge.
-                writer.Indent();
-                writer.WriteLine("if (other == {0}.DefaultInstance) return this;", FullClassName);
-                writer.WriteLine("PrepareBuilder();");
-                foreach (FieldDescriptor field in Descriptor.Fields)
-                {
-                    CreateFieldGenerator(field).GenerateMergingCode(writer);
-                }
-                // if message type has extensions
-                if (Descriptor.Proto.ExtensionRangeCount > 0)
-                {
-                    writer.WriteLine("  this.MergeExtensionFields(other);");
-                }
-                if (!UseLiteRuntime)
-                {
-                    writer.WriteLine("this.MergeUnknownFields(other.UnknownFields);");
-                }
-                writer.WriteLine("return this;");
-                writer.Outdent();
-                writer.WriteLine("}");
-                writer.WriteLine();
-            }
-        }
-
-        private void GenerateBuilderParsingMethods(TextGenerator writer)
-        {
-            List<FieldDescriptor> sortedFields = new List<FieldDescriptor>(Descriptor.Fields);
-            sortedFields.Sort((f1, f2) => f1.FieldNumber.CompareTo(f2.FieldNumber));
-
-            writer.WriteLine("public override Builder MergeFrom(pb::ICodedInputStream input) {");
-            writer.WriteLine("  return MergeFrom(input, pb::ExtensionRegistry.Empty);");
-            writer.WriteLine("}");
-            writer.WriteLine();
-            writer.WriteLine(
-                "public override Builder MergeFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {");
-            writer.Indent();
-            writer.WriteLine("PrepareBuilder();");
-            if (!UseLiteRuntime)
-            {
-                writer.WriteLine("pb::UnknownFieldSet.Builder unknownFields = null;");
-            }
-            writer.WriteLine("uint tag;");
-            writer.WriteLine("string field_name;");
-            writer.WriteLine("while (input.ReadTag(out tag, out field_name)) {");
-            writer.Indent();
-            writer.WriteLine("if(tag == 0 && field_name != null) {");
-            writer.Indent();
-            //if you change from StringComparer.Ordinal, the array sort in FieldNames { get; } must also change
-            writer.WriteLine(
-                "int field_ordinal = global::System.Array.BinarySearch(_{0}FieldNames, field_name, global::System.StringComparer.Ordinal);",
-                NameHelpers.UnderscoresToCamelCase(ClassName));
-            writer.WriteLine("if(field_ordinal >= 0)");
-            writer.WriteLine("  tag = _{0}FieldTags[field_ordinal];", NameHelpers.UnderscoresToCamelCase(ClassName));
-            writer.WriteLine("else {");
-            if (!UseLiteRuntime)
-            {
-                writer.WriteLine("  if (unknownFields == null) {"); // First unknown field - create builder now
-                writer.WriteLine("    unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);");
-                writer.WriteLine("  }");
-            }
-            writer.WriteLine("  ParseUnknownField(input, {0}extensionRegistry, tag, field_name);",
-                             UseLiteRuntime ? "" : "unknownFields, ");
-            writer.WriteLine("  continue;");
-            writer.WriteLine("}");
-            writer.Outdent();
-            writer.WriteLine("}");
-
-            writer.WriteLine("switch (tag) {");
-            writer.Indent();
-            writer.WriteLine("case 0: {"); // 0 signals EOF / limit reached
-            writer.WriteLine("  throw pb::InvalidProtocolBufferException.InvalidTag();");
-            writer.WriteLine("}");
-            writer.WriteLine("default: {");
-            writer.WriteLine("  if (pb::WireFormat.IsEndGroupTag(tag)) {");
-            if (!UseLiteRuntime)
-            {
-                writer.WriteLine("    if (unknownFields != null) {");
-                writer.WriteLine("      this.UnknownFields = unknownFields.Build();");
-                writer.WriteLine("    }");
-            }
-            writer.WriteLine("    return this;"); // it's an endgroup tag
-            writer.WriteLine("  }");
-            if (!UseLiteRuntime)
-            {
-                writer.WriteLine("  if (unknownFields == null) {"); // First unknown field - create builder now
-                writer.WriteLine("    unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);");
-                writer.WriteLine("  }");
-            }
-            writer.WriteLine("  ParseUnknownField(input, {0}extensionRegistry, tag, field_name);",
-                             UseLiteRuntime ? "" : "unknownFields, ");
-            writer.WriteLine("  break;");
-            writer.WriteLine("}");
-            foreach (FieldDescriptor field in sortedFields)
-            {
-                WireFormat.WireType wt = WireFormat.GetWireType(field.FieldType);
-                uint tag = WireFormat.MakeTag(field.FieldNumber, wt);
-
-                if (field.IsRepeated &&
-                    (wt == WireFormat.WireType.Varint || wt == WireFormat.WireType.Fixed32 ||
-                     wt == WireFormat.WireType.Fixed64))
-                {
-                    writer.WriteLine("case {0}:",
-                                     WireFormat.MakeTag(field.FieldNumber, WireFormat.WireType.LengthDelimited));
-                }
-
-                writer.WriteLine("case {0}: {{", tag);
-                writer.Indent();
-                CreateFieldGenerator(field).GenerateParsingCode(writer);
-                writer.WriteLine("break;");
-                writer.Outdent();
-                writer.WriteLine("}");
-            }
-            writer.Outdent();
-            writer.WriteLine("}");
-            writer.Outdent();
-            writer.WriteLine("}");
-            writer.WriteLine();
-            if (!UseLiteRuntime)
-            {
-                writer.WriteLine("if (unknownFields != null) {");
-                writer.WriteLine("  this.UnknownFields = unknownFields.Build();");
-                writer.WriteLine("}");
-            }
-            writer.WriteLine("return this;");
-            writer.Outdent();
-            writer.WriteLine("}");
-            writer.WriteLine();
-        }
-
-        private void GenerateIsInitialized(TextGenerator writer)
-        {
-            writer.WriteLine("public override bool IsInitialized {");
-            writer.Indent();
-            writer.WriteLine("get {");
-            writer.Indent();
-
-            // Check that all required fields in this message are set.
-            // TODO(kenton):  We can optimize this when we switch to putting all the
-            // "has" fields into a single bitfield.
-            foreach (FieldDescriptor field in Descriptor.Fields)
-            {
-                if (field.IsRequired)
-                {
-                    writer.WriteLine("if (!has{0}) return false;", field.CSharpOptions.PropertyName);
-                }
-            }
-
-            // Now check that all embedded messages are initialized.
-            foreach (FieldDescriptor field in Descriptor.Fields)
-            {
-                if (field.FieldType != FieldType.Message ||
-                    !HasRequiredFields(field.MessageType, new Dictionary<MessageDescriptor, object>()))
-                {
-                    continue;
-                }
-                string propertyName = NameHelpers.UnderscoresToPascalCase(GetFieldName(field));
-                if (field.IsRepeated)
-                {
-                    writer.WriteLine("foreach ({0} element in {1}List) {{", GetClassName(field.MessageType),
-                                     propertyName);
-                    writer.WriteLine("  if (!element.IsInitialized) return false;");
-                    writer.WriteLine("}");
-                }
-                else if (field.IsOptional)
-                {
-                    writer.WriteLine("if (Has{0}) {{", propertyName);
-                    writer.WriteLine("  if (!{0}.IsInitialized) return false;", propertyName);
-                    writer.WriteLine("}");
-                }
-                else
-                {
-                    writer.WriteLine("if (!{0}.IsInitialized) return false;", propertyName);
-                }
-            }
-
-            if (Descriptor.Proto.ExtensionRangeCount > 0)
-            {
-                writer.WriteLine("if (!ExtensionsAreInitialized) return false;");
-            }
-            writer.WriteLine("return true;");
-            writer.Outdent();
-            writer.WriteLine("}");
-            writer.Outdent();
-            writer.WriteLine("}");
-            writer.WriteLine();
-        }
-
-        internal void GenerateExtensionRegistrationCode(TextGenerator writer)
-        {
-            foreach (FieldDescriptor extension in Descriptor.Extensions)
-            {
-                new ExtensionGenerator(extension).GenerateExtensionRegistrationCode(writer);
-            }
-            foreach (MessageDescriptor nestedMessage in Descriptor.NestedTypes)
-            {
-                new MessageGenerator(nestedMessage).GenerateExtensionRegistrationCode(writer);
-            }
-        }
-    }
-}

+ 0 - 1187
csharp/src/ProtoGen/PluginProtoFile.cs

@@ -1,1187 +0,0 @@
-// Generated by protoc-gen-cs, Version=2.4.1.521, Culture=neutral, PublicKeyToken=17b3b1f090c3ea48.  DO NOT EDIT!
-#pragma warning disable 1591, 0612, 3021
-#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.Compiler.PluginProto {
-
-  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-  public static partial class Plugin {
-
-    #region Extension registration
-    public static void RegisterAllExtensions(pb::ExtensionRegistry registry) {
-    }
-    #endregion
-    #region Static variables
-    internal static pbd::MessageDescriptor internal__static_google_protobuf_compiler_CodeGeneratorRequest__Descriptor;
-    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.Compiler.PluginProto.CodeGeneratorRequest, global::Google.ProtocolBuffers.Compiler.PluginProto.CodeGeneratorRequest.Builder> internal__static_google_protobuf_compiler_CodeGeneratorRequest__FieldAccessorTable;
-    internal static pbd::MessageDescriptor internal__static_google_protobuf_compiler_CodeGeneratorResponse__Descriptor;
-    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.Compiler.PluginProto.CodeGeneratorResponse, global::Google.ProtocolBuffers.Compiler.PluginProto.CodeGeneratorResponse.Builder> internal__static_google_protobuf_compiler_CodeGeneratorResponse__FieldAccessorTable;
-    internal static pbd::MessageDescriptor internal__static_google_protobuf_compiler_CodeGeneratorResponse_File__Descriptor;
-    internal static pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.Compiler.PluginProto.CodeGeneratorResponse.Types.File, global::Google.ProtocolBuffers.Compiler.PluginProto.CodeGeneratorResponse.Types.File.Builder> internal__static_google_protobuf_compiler_CodeGeneratorResponse_File__FieldAccessorTable;
-    #endregion
-    #region Descriptor
-    public static pbd::FileDescriptor Descriptor {
-      get { return descriptor; }
-    }
-    private static pbd::FileDescriptor descriptor;
-
-    static Plugin() {
-      byte[] descriptorData = global::System.Convert.FromBase64String(
-          string.Concat(
-            "CiVnb29nbGUvcHJvdG9idWYvY29tcGlsZXIvcGx1Z2luLnByb3RvEhhnb29n",
-            "bGUucHJvdG9idWYuY29tcGlsZXIaIGdvb2dsZS9wcm90b2J1Zi9kZXNjcmlw",
-            "dG9yLnByb3RvIn0KFENvZGVHZW5lcmF0b3JSZXF1ZXN0EhgKEGZpbGVfdG9f",
-            "Z2VuZXJhdGUYASADKAkSEQoJcGFyYW1ldGVyGAIgASgJEjgKCnByb3RvX2Zp",
-            "bGUYDyADKAsyJC5nb29nbGUucHJvdG9idWYuRmlsZURlc2NyaXB0b3JQcm90",
-            "byKqAQoVQ29kZUdlbmVyYXRvclJlc3BvbnNlEg0KBWVycm9yGAEgASgJEkIK",
-            "BGZpbGUYDyADKAsyNC5nb29nbGUucHJvdG9idWYuY29tcGlsZXIuQ29kZUdl",
-            "bmVyYXRvclJlc3BvbnNlLkZpbGUaPgoERmlsZRIMCgRuYW1lGAEgASgJEhcK",
-            "D2luc2VydGlvbl9wb2ludBgCIAEoCRIPCgdjb250ZW50GA8gASgJQiwKHGNv",
-          "bS5nb29nbGUucHJvdG9idWYuY29tcGlsZXJCDFBsdWdpblByb3Rvcw=="));
-      pbd::FileDescriptor.InternalDescriptorAssigner assigner = delegate(pbd::FileDescriptor root) {
-        descriptor = root;
-        internal__static_google_protobuf_compiler_CodeGeneratorRequest__Descriptor = Descriptor.MessageTypes[0];
-        internal__static_google_protobuf_compiler_CodeGeneratorRequest__FieldAccessorTable =
-            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.Compiler.PluginProto.CodeGeneratorRequest, global::Google.ProtocolBuffers.Compiler.PluginProto.CodeGeneratorRequest.Builder>(internal__static_google_protobuf_compiler_CodeGeneratorRequest__Descriptor,
-                new string[] { "FileToGenerate", "Parameter", "ProtoFile", });
-        internal__static_google_protobuf_compiler_CodeGeneratorResponse__Descriptor = Descriptor.MessageTypes[1];
-        internal__static_google_protobuf_compiler_CodeGeneratorResponse__FieldAccessorTable =
-            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.Compiler.PluginProto.CodeGeneratorResponse, global::Google.ProtocolBuffers.Compiler.PluginProto.CodeGeneratorResponse.Builder>(internal__static_google_protobuf_compiler_CodeGeneratorResponse__Descriptor,
-                new string[] { "Error", "File", });
-        internal__static_google_protobuf_compiler_CodeGeneratorResponse_File__Descriptor = internal__static_google_protobuf_compiler_CodeGeneratorResponse__Descriptor.NestedTypes[0];
-        internal__static_google_protobuf_compiler_CodeGeneratorResponse_File__FieldAccessorTable =
-            new pb::FieldAccess.FieldAccessorTable<global::Google.ProtocolBuffers.Compiler.PluginProto.CodeGeneratorResponse.Types.File, global::Google.ProtocolBuffers.Compiler.PluginProto.CodeGeneratorResponse.Types.File.Builder>(internal__static_google_protobuf_compiler_CodeGeneratorResponse_File__Descriptor,
-                new string[] { "Name", "InsertionPoint", "Content", });
-        return null;
-      };
-      pbd::FileDescriptor.InternalBuildGeneratedFileFrom(descriptorData,
-          new pbd::FileDescriptor[] {
-          global::Google.ProtocolBuffers.DescriptorProtos.DescriptorProtoFile.Descriptor,
-          }, assigner);
-    }
-    #endregion
-
-  }
-  #region Messages
-  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-  public sealed partial class CodeGeneratorRequest : pb::GeneratedMessage<CodeGeneratorRequest, CodeGeneratorRequest.Builder> {
-    private CodeGeneratorRequest() { }
-    private static readonly CodeGeneratorRequest defaultInstance = new CodeGeneratorRequest().MakeReadOnly();
-    private static readonly string[] _codeGeneratorRequestFieldNames = new string[] { "file_to_generate", "parameter", "proto_file" };
-    private static readonly uint[] _codeGeneratorRequestFieldTags = new uint[] { 10, 18, 122 };
-    public static CodeGeneratorRequest DefaultInstance {
-      get { return defaultInstance; }
-    }
-
-    public override CodeGeneratorRequest DefaultInstanceForType {
-      get { return DefaultInstance; }
-    }
-
-    protected override CodeGeneratorRequest ThisMessage {
-      get { return this; }
-    }
-
-    public static pbd::MessageDescriptor Descriptor {
-      get { return global::Google.ProtocolBuffers.Compiler.PluginProto.Plugin.internal__static_google_protobuf_compiler_CodeGeneratorRequest__Descriptor; }
-    }
-
-    protected override pb::FieldAccess.FieldAccessorTable<CodeGeneratorRequest, CodeGeneratorRequest.Builder> InternalFieldAccessors {
-      get { return global::Google.ProtocolBuffers.Compiler.PluginProto.Plugin.internal__static_google_protobuf_compiler_CodeGeneratorRequest__FieldAccessorTable; }
-    }
-
-    public const int FileToGenerateFieldNumber = 1;
-    private pbc::PopsicleList<string> fileToGenerate_ = new pbc::PopsicleList<string>();
-    public scg::IList<string> FileToGenerateList {
-      get { return pbc::Lists.AsReadOnly(fileToGenerate_); }
-    }
-    public int FileToGenerateCount {
-      get { return fileToGenerate_.Count; }
-    }
-    public string GetFileToGenerate(int index) {
-      return fileToGenerate_[index];
-    }
-
-    public const int ParameterFieldNumber = 2;
-    private bool hasParameter;
-    private string parameter_ = "";
-    public bool HasParameter {
-      get { return hasParameter; }
-    }
-    public string Parameter {
-      get { return parameter_; }
-    }
-
-    public const int ProtoFileFieldNumber = 15;
-    private pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto> protoFile_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto>();
-    public scg::IList<global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto> ProtoFileList {
-      get { return protoFile_; }
-    }
-    public int ProtoFileCount {
-      get { return protoFile_.Count; }
-    }
-    public global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto GetProtoFile(int index) {
-      return protoFile_[index];
-    }
-
-    public override bool IsInitialized {
-      get {
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto element in ProtoFileList) {
-          if (!element.IsInitialized) return false;
-        }
-        return true;
-      }
-    }
-
-    public override void WriteTo(pb::ICodedOutputStream output) {
-      int size = SerializedSize;
-      string[] field_names = _codeGeneratorRequestFieldNames;
-      if (fileToGenerate_.Count > 0) {
-        output.WriteStringArray(1, field_names[0], fileToGenerate_);
-      }
-      if (hasParameter) {
-        output.WriteString(2, field_names[1], Parameter);
-      }
-      if (protoFile_.Count > 0) {
-        output.WriteMessageArray(15, field_names[2], protoFile_);
-      }
-      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 (string element in FileToGenerateList) {
-            dataSize += pb::CodedOutputStream.ComputeStringSizeNoTag(element);
-          }
-          size += dataSize;
-          size += 1 * fileToGenerate_.Count;
-        }
-        if (hasParameter) {
-          size += pb::CodedOutputStream.ComputeStringSize(2, Parameter);
-        }
-        foreach (global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto element in ProtoFileList) {
-          size += pb::CodedOutputStream.ComputeMessageSize(15, element);
-        }
-        size += UnknownFields.SerializedSize;
-        memoizedSerializedSize = size;
-        return size;
-      }
-    }
-
-    public static CodeGeneratorRequest ParseFrom(pb::ByteString data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static CodeGeneratorRequest ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static CodeGeneratorRequest ParseFrom(byte[] data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static CodeGeneratorRequest ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static CodeGeneratorRequest ParseFrom(global::System.IO.Stream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static CodeGeneratorRequest ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    public static CodeGeneratorRequest ParseDelimitedFrom(global::System.IO.Stream input) {
-      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
-    }
-    public static CodeGeneratorRequest ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
-    }
-    public static CodeGeneratorRequest ParseFrom(pb::ICodedInputStream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static CodeGeneratorRequest ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    private CodeGeneratorRequest MakeReadOnly() {
-      fileToGenerate_.MakeReadOnly();
-      protoFile_.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(CodeGeneratorRequest prototype) {
-      return new Builder(prototype);
-    }
-
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    public sealed partial class Builder : pb::GeneratedBuilder<CodeGeneratorRequest, Builder> {
-      protected override Builder ThisBuilder {
-        get { return this; }
-      }
-      public Builder() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-      }
-      internal Builder(CodeGeneratorRequest cloneFrom) {
-        result = cloneFrom;
-        resultIsReadOnly = true;
-      }
-
-      private bool resultIsReadOnly;
-      private CodeGeneratorRequest result;
-
-      private CodeGeneratorRequest PrepareBuilder() {
-        if (resultIsReadOnly) {
-          CodeGeneratorRequest original = result;
-          result = new CodeGeneratorRequest();
-          resultIsReadOnly = false;
-          MergeFrom(original);
-        }
-        return result;
-      }
-
-      public override bool IsInitialized {
-        get { return result.IsInitialized; }
-      }
-
-      protected override CodeGeneratorRequest 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.Compiler.PluginProto.CodeGeneratorRequest.Descriptor; }
-      }
-
-      public override CodeGeneratorRequest DefaultInstanceForType {
-        get { return global::Google.ProtocolBuffers.Compiler.PluginProto.CodeGeneratorRequest.DefaultInstance; }
-      }
-
-      public override CodeGeneratorRequest BuildPartial() {
-        if (resultIsReadOnly) {
-          return result;
-        }
-        resultIsReadOnly = true;
-        return result.MakeReadOnly();
-      }
-
-      public override Builder MergeFrom(pb::IMessage other) {
-        if (other is CodeGeneratorRequest) {
-          return MergeFrom((CodeGeneratorRequest) other);
-        } else {
-          base.MergeFrom(other);
-          return this;
-        }
-      }
-
-      public override Builder MergeFrom(CodeGeneratorRequest other) {
-        if (other == global::Google.ProtocolBuffers.Compiler.PluginProto.CodeGeneratorRequest.DefaultInstance) return this;
-        PrepareBuilder();
-        if (other.fileToGenerate_.Count != 0) {
-          result.fileToGenerate_.Add(other.fileToGenerate_);
-        }
-        if (other.HasParameter) {
-          Parameter = other.Parameter;
-        }
-        if (other.protoFile_.Count != 0) {
-          result.protoFile_.Add(other.protoFile_);
-        }
-        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(_codeGeneratorRequestFieldNames, field_name, global::System.StringComparer.Ordinal);
-            if(field_ordinal >= 0)
-              tag = _codeGeneratorRequestFieldTags[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.ReadStringArray(tag, field_name, result.fileToGenerate_);
-              break;
-            }
-            case 18: {
-              result.hasParameter = input.ReadString(ref result.parameter_);
-              break;
-            }
-            case 122: {
-              input.ReadMessageArray(tag, field_name, result.protoFile_, global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto.DefaultInstance, extensionRegistry);
-              break;
-            }
-          }
-        }
-
-        if (unknownFields != null) {
-          this.UnknownFields = unknownFields.Build();
-        }
-        return this;
-      }
-
-
-      public pbc::IPopsicleList<string> FileToGenerateList {
-        get { return PrepareBuilder().fileToGenerate_; }
-      }
-      public int FileToGenerateCount {
-        get { return result.FileToGenerateCount; }
-      }
-      public string GetFileToGenerate(int index) {
-        return result.GetFileToGenerate(index);
-      }
-      public Builder SetFileToGenerate(int index, string value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.fileToGenerate_[index] = value;
-        return this;
-      }
-      public Builder AddFileToGenerate(string value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.fileToGenerate_.Add(value);
-        return this;
-      }
-      public Builder AddRangeFileToGenerate(scg::IEnumerable<string> values) {
-        PrepareBuilder();
-        result.fileToGenerate_.Add(values);
-        return this;
-      }
-      public Builder ClearFileToGenerate() {
-        PrepareBuilder();
-        result.fileToGenerate_.Clear();
-        return this;
-      }
-
-      public bool HasParameter {
-        get { return result.hasParameter; }
-      }
-      public string Parameter {
-        get { return result.Parameter; }
-        set { SetParameter(value); }
-      }
-      public Builder SetParameter(string value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasParameter = true;
-        result.parameter_ = value;
-        return this;
-      }
-      public Builder ClearParameter() {
-        PrepareBuilder();
-        result.hasParameter = false;
-        result.parameter_ = "";
-        return this;
-      }
-
-      public pbc::IPopsicleList<global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto> ProtoFileList {
-        get { return PrepareBuilder().protoFile_; }
-      }
-      public int ProtoFileCount {
-        get { return result.ProtoFileCount; }
-      }
-      public global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto GetProtoFile(int index) {
-        return result.GetProtoFile(index);
-      }
-      public Builder SetProtoFile(int index, global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.protoFile_[index] = value;
-        return this;
-      }
-      public Builder SetProtoFile(int index, global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.protoFile_[index] = builderForValue.Build();
-        return this;
-      }
-      public Builder AddProtoFile(global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.protoFile_.Add(value);
-        return this;
-      }
-      public Builder AddProtoFile(global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.protoFile_.Add(builderForValue.Build());
-        return this;
-      }
-      public Builder AddRangeProtoFile(scg::IEnumerable<global::Google.ProtocolBuffers.DescriptorProtos.FileDescriptorProto> values) {
-        PrepareBuilder();
-        result.protoFile_.Add(values);
-        return this;
-      }
-      public Builder ClearProtoFile() {
-        PrepareBuilder();
-        result.protoFile_.Clear();
-        return this;
-      }
-    }
-    static CodeGeneratorRequest() {
-      object.ReferenceEquals(global::Google.ProtocolBuffers.Compiler.PluginProto.Plugin.Descriptor, null);
-    }
-  }
-
-  [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-  public sealed partial class CodeGeneratorResponse : pb::GeneratedMessage<CodeGeneratorResponse, CodeGeneratorResponse.Builder> {
-    private CodeGeneratorResponse() { }
-    private static readonly CodeGeneratorResponse defaultInstance = new CodeGeneratorResponse().MakeReadOnly();
-    private static readonly string[] _codeGeneratorResponseFieldNames = new string[] { "error", "file" };
-    private static readonly uint[] _codeGeneratorResponseFieldTags = new uint[] { 10, 122 };
-    public static CodeGeneratorResponse DefaultInstance {
-      get { return defaultInstance; }
-    }
-
-    public override CodeGeneratorResponse DefaultInstanceForType {
-      get { return DefaultInstance; }
-    }
-
-    protected override CodeGeneratorResponse ThisMessage {
-      get { return this; }
-    }
-
-    public static pbd::MessageDescriptor Descriptor {
-      get { return global::Google.ProtocolBuffers.Compiler.PluginProto.Plugin.internal__static_google_protobuf_compiler_CodeGeneratorResponse__Descriptor; }
-    }
-
-    protected override pb::FieldAccess.FieldAccessorTable<CodeGeneratorResponse, CodeGeneratorResponse.Builder> InternalFieldAccessors {
-      get { return global::Google.ProtocolBuffers.Compiler.PluginProto.Plugin.internal__static_google_protobuf_compiler_CodeGeneratorResponse__FieldAccessorTable; }
-    }
-
-    #region Nested types
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    public static partial class Types {
-      [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-      public sealed partial class File : pb::GeneratedMessage<File, File.Builder> {
-        private File() { }
-        private static readonly File defaultInstance = new File().MakeReadOnly();
-        private static readonly string[] _fileFieldNames = new string[] { "content", "insertion_point", "name" };
-        private static readonly uint[] _fileFieldTags = new uint[] { 122, 18, 10 };
-        public static File DefaultInstance {
-          get { return defaultInstance; }
-        }
-
-        public override File DefaultInstanceForType {
-          get { return DefaultInstance; }
-        }
-
-        protected override File ThisMessage {
-          get { return this; }
-        }
-
-        public static pbd::MessageDescriptor Descriptor {
-          get { return global::Google.ProtocolBuffers.Compiler.PluginProto.Plugin.internal__static_google_protobuf_compiler_CodeGeneratorResponse_File__Descriptor; }
-        }
-
-        protected override pb::FieldAccess.FieldAccessorTable<File, File.Builder> InternalFieldAccessors {
-          get { return global::Google.ProtocolBuffers.Compiler.PluginProto.Plugin.internal__static_google_protobuf_compiler_CodeGeneratorResponse_File__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 InsertionPointFieldNumber = 2;
-        private bool hasInsertionPoint;
-        private string insertionPoint_ = "";
-        public bool HasInsertionPoint {
-          get { return hasInsertionPoint; }
-        }
-        public string InsertionPoint {
-          get { return insertionPoint_; }
-        }
-
-        public const int ContentFieldNumber = 15;
-        private bool hasContent;
-        private string content_ = "";
-        public bool HasContent {
-          get { return hasContent; }
-        }
-        public string Content {
-          get { return content_; }
-        }
-
-        public override bool IsInitialized {
-          get {
-            return true;
-          }
-        }
-
-        public override void WriteTo(pb::ICodedOutputStream output) {
-          int size = SerializedSize;
-          string[] field_names = _fileFieldNames;
-          if (hasName) {
-            output.WriteString(1, field_names[2], Name);
-          }
-          if (hasInsertionPoint) {
-            output.WriteString(2, field_names[1], InsertionPoint);
-          }
-          if (hasContent) {
-            output.WriteString(15, field_names[0], Content);
-          }
-          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 (hasInsertionPoint) {
-              size += pb::CodedOutputStream.ComputeStringSize(2, InsertionPoint);
-            }
-            if (hasContent) {
-              size += pb::CodedOutputStream.ComputeStringSize(15, Content);
-            }
-            size += UnknownFields.SerializedSize;
-            memoizedSerializedSize = size;
-            return size;
-          }
-        }
-
-        public static File ParseFrom(pb::ByteString data) {
-          return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-        }
-        public static File ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
-          return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-        }
-        public static File ParseFrom(byte[] data) {
-          return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-        }
-        public static File ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
-          return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-        }
-        public static File ParseFrom(global::System.IO.Stream input) {
-          return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-        }
-        public static File ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-          return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-        }
-        public static File ParseDelimitedFrom(global::System.IO.Stream input) {
-          return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
-        }
-        public static File ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-          return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
-        }
-        public static File ParseFrom(pb::ICodedInputStream input) {
-          return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-        }
-        public static File ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-          return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-        }
-        private 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(File prototype) {
-          return new Builder(prototype);
-        }
-
-        [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-        public sealed partial class Builder : pb::GeneratedBuilder<File, Builder> {
-          protected override Builder ThisBuilder {
-            get { return this; }
-          }
-          public Builder() {
-            result = DefaultInstance;
-            resultIsReadOnly = true;
-          }
-          internal Builder(File cloneFrom) {
-            result = cloneFrom;
-            resultIsReadOnly = true;
-          }
-
-          private bool resultIsReadOnly;
-          private File result;
-
-          private File PrepareBuilder() {
-            if (resultIsReadOnly) {
-              File original = result;
-              result = new File();
-              resultIsReadOnly = false;
-              MergeFrom(original);
-            }
-            return result;
-          }
-
-          public override bool IsInitialized {
-            get { return result.IsInitialized; }
-          }
-
-          protected override File 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.Compiler.PluginProto.CodeGeneratorResponse.Types.File.Descriptor; }
-          }
-
-          public override File DefaultInstanceForType {
-            get { return global::Google.ProtocolBuffers.Compiler.PluginProto.CodeGeneratorResponse.Types.File.DefaultInstance; }
-          }
-
-          public override File BuildPartial() {
-            if (resultIsReadOnly) {
-              return result;
-            }
-            resultIsReadOnly = true;
-            return result.MakeReadOnly();
-          }
-
-          public override Builder MergeFrom(pb::IMessage other) {
-            if (other is File) {
-              return MergeFrom((File) other);
-            } else {
-              base.MergeFrom(other);
-              return this;
-            }
-          }
-
-          public override Builder MergeFrom(File other) {
-            if (other == global::Google.ProtocolBuffers.Compiler.PluginProto.CodeGeneratorResponse.Types.File.DefaultInstance) return this;
-            PrepareBuilder();
-            if (other.HasName) {
-              Name = other.Name;
-            }
-            if (other.HasInsertionPoint) {
-              InsertionPoint = other.InsertionPoint;
-            }
-            if (other.HasContent) {
-              Content = other.Content;
-            }
-            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(_fileFieldNames, field_name, global::System.StringComparer.Ordinal);
-                if(field_ordinal >= 0)
-                  tag = _fileFieldTags[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.hasInsertionPoint = input.ReadString(ref result.insertionPoint_);
-                  break;
-                }
-                case 122: {
-                  result.hasContent = input.ReadString(ref result.content_);
-                  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 HasInsertionPoint {
-            get { return result.hasInsertionPoint; }
-          }
-          public string InsertionPoint {
-            get { return result.InsertionPoint; }
-            set { SetInsertionPoint(value); }
-          }
-          public Builder SetInsertionPoint(string value) {
-            pb::ThrowHelper.ThrowIfNull(value, "value");
-            PrepareBuilder();
-            result.hasInsertionPoint = true;
-            result.insertionPoint_ = value;
-            return this;
-          }
-          public Builder ClearInsertionPoint() {
-            PrepareBuilder();
-            result.hasInsertionPoint = false;
-            result.insertionPoint_ = "";
-            return this;
-          }
-
-          public bool HasContent {
-            get { return result.hasContent; }
-          }
-          public string Content {
-            get { return result.Content; }
-            set { SetContent(value); }
-          }
-          public Builder SetContent(string value) {
-            pb::ThrowHelper.ThrowIfNull(value, "value");
-            PrepareBuilder();
-            result.hasContent = true;
-            result.content_ = value;
-            return this;
-          }
-          public Builder ClearContent() {
-            PrepareBuilder();
-            result.hasContent = false;
-            result.content_ = "";
-            return this;
-          }
-        }
-        static File() {
-          object.ReferenceEquals(global::Google.ProtocolBuffers.Compiler.PluginProto.Plugin.Descriptor, null);
-        }
-      }
-
-    }
-    #endregion
-
-    public const int ErrorFieldNumber = 1;
-    private bool hasError;
-    private string error_ = "";
-    public bool HasError {
-      get { return hasError; }
-    }
-    public string Error {
-      get { return error_; }
-    }
-
-    public const int FileFieldNumber = 15;
-    private pbc::PopsicleList<global::Google.ProtocolBuffers.Compiler.PluginProto.CodeGeneratorResponse.Types.File> file_ = new pbc::PopsicleList<global::Google.ProtocolBuffers.Compiler.PluginProto.CodeGeneratorResponse.Types.File>();
-    public scg::IList<global::Google.ProtocolBuffers.Compiler.PluginProto.CodeGeneratorResponse.Types.File> FileList {
-      get { return file_; }
-    }
-    public int FileCount {
-      get { return file_.Count; }
-    }
-    public global::Google.ProtocolBuffers.Compiler.PluginProto.CodeGeneratorResponse.Types.File GetFile(int index) {
-      return file_[index];
-    }
-
-    public override bool IsInitialized {
-      get {
-        return true;
-      }
-    }
-
-    public override void WriteTo(pb::ICodedOutputStream output) {
-      int size = SerializedSize;
-      string[] field_names = _codeGeneratorResponseFieldNames;
-      if (hasError) {
-        output.WriteString(1, field_names[0], Error);
-      }
-      if (file_.Count > 0) {
-        output.WriteMessageArray(15, field_names[1], file_);
-      }
-      UnknownFields.WriteTo(output);
-    }
-
-    private int memoizedSerializedSize = -1;
-    public override int SerializedSize {
-      get {
-        int size = memoizedSerializedSize;
-        if (size != -1) return size;
-
-        size = 0;
-        if (hasError) {
-          size += pb::CodedOutputStream.ComputeStringSize(1, Error);
-        }
-        foreach (global::Google.ProtocolBuffers.Compiler.PluginProto.CodeGeneratorResponse.Types.File element in FileList) {
-          size += pb::CodedOutputStream.ComputeMessageSize(15, element);
-        }
-        size += UnknownFields.SerializedSize;
-        memoizedSerializedSize = size;
-        return size;
-      }
-    }
-
-    public static CodeGeneratorResponse ParseFrom(pb::ByteString data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static CodeGeneratorResponse ParseFrom(pb::ByteString data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static CodeGeneratorResponse ParseFrom(byte[] data) {
-      return ((Builder) CreateBuilder().MergeFrom(data)).BuildParsed();
-    }
-    public static CodeGeneratorResponse ParseFrom(byte[] data, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(data, extensionRegistry)).BuildParsed();
-    }
-    public static CodeGeneratorResponse ParseFrom(global::System.IO.Stream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static CodeGeneratorResponse ParseFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    public static CodeGeneratorResponse ParseDelimitedFrom(global::System.IO.Stream input) {
-      return CreateBuilder().MergeDelimitedFrom(input).BuildParsed();
-    }
-    public static CodeGeneratorResponse ParseDelimitedFrom(global::System.IO.Stream input, pb::ExtensionRegistry extensionRegistry) {
-      return CreateBuilder().MergeDelimitedFrom(input, extensionRegistry).BuildParsed();
-    }
-    public static CodeGeneratorResponse ParseFrom(pb::ICodedInputStream input) {
-      return ((Builder) CreateBuilder().MergeFrom(input)).BuildParsed();
-    }
-    public static CodeGeneratorResponse ParseFrom(pb::ICodedInputStream input, pb::ExtensionRegistry extensionRegistry) {
-      return ((Builder) CreateBuilder().MergeFrom(input, extensionRegistry)).BuildParsed();
-    }
-    private CodeGeneratorResponse 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(CodeGeneratorResponse prototype) {
-      return new Builder(prototype);
-    }
-
-    [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
-    public sealed partial class Builder : pb::GeneratedBuilder<CodeGeneratorResponse, Builder> {
-      protected override Builder ThisBuilder {
-        get { return this; }
-      }
-      public Builder() {
-        result = DefaultInstance;
-        resultIsReadOnly = true;
-      }
-      internal Builder(CodeGeneratorResponse cloneFrom) {
-        result = cloneFrom;
-        resultIsReadOnly = true;
-      }
-
-      private bool resultIsReadOnly;
-      private CodeGeneratorResponse result;
-
-      private CodeGeneratorResponse PrepareBuilder() {
-        if (resultIsReadOnly) {
-          CodeGeneratorResponse original = result;
-          result = new CodeGeneratorResponse();
-          resultIsReadOnly = false;
-          MergeFrom(original);
-        }
-        return result;
-      }
-
-      public override bool IsInitialized {
-        get { return result.IsInitialized; }
-      }
-
-      protected override CodeGeneratorResponse 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.Compiler.PluginProto.CodeGeneratorResponse.Descriptor; }
-      }
-
-      public override CodeGeneratorResponse DefaultInstanceForType {
-        get { return global::Google.ProtocolBuffers.Compiler.PluginProto.CodeGeneratorResponse.DefaultInstance; }
-      }
-
-      public override CodeGeneratorResponse BuildPartial() {
-        if (resultIsReadOnly) {
-          return result;
-        }
-        resultIsReadOnly = true;
-        return result.MakeReadOnly();
-      }
-
-      public override Builder MergeFrom(pb::IMessage other) {
-        if (other is CodeGeneratorResponse) {
-          return MergeFrom((CodeGeneratorResponse) other);
-        } else {
-          base.MergeFrom(other);
-          return this;
-        }
-      }
-
-      public override Builder MergeFrom(CodeGeneratorResponse other) {
-        if (other == global::Google.ProtocolBuffers.Compiler.PluginProto.CodeGeneratorResponse.DefaultInstance) return this;
-        PrepareBuilder();
-        if (other.HasError) {
-          Error = other.Error;
-        }
-        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(_codeGeneratorResponseFieldNames, field_name, global::System.StringComparer.Ordinal);
-            if(field_ordinal >= 0)
-              tag = _codeGeneratorResponseFieldTags[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.hasError = input.ReadString(ref result.error_);
-              break;
-            }
-            case 122: {
-              input.ReadMessageArray(tag, field_name, result.file_, global::Google.ProtocolBuffers.Compiler.PluginProto.CodeGeneratorResponse.Types.File.DefaultInstance, extensionRegistry);
-              break;
-            }
-          }
-        }
-
-        if (unknownFields != null) {
-          this.UnknownFields = unknownFields.Build();
-        }
-        return this;
-      }
-
-
-      public bool HasError {
-        get { return result.hasError; }
-      }
-      public string Error {
-        get { return result.Error; }
-        set { SetError(value); }
-      }
-      public Builder SetError(string value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.hasError = true;
-        result.error_ = value;
-        return this;
-      }
-      public Builder ClearError() {
-        PrepareBuilder();
-        result.hasError = false;
-        result.error_ = "";
-        return this;
-      }
-
-      public pbc::IPopsicleList<global::Google.ProtocolBuffers.Compiler.PluginProto.CodeGeneratorResponse.Types.File> FileList {
-        get { return PrepareBuilder().file_; }
-      }
-      public int FileCount {
-        get { return result.FileCount; }
-      }
-      public global::Google.ProtocolBuffers.Compiler.PluginProto.CodeGeneratorResponse.Types.File GetFile(int index) {
-        return result.GetFile(index);
-      }
-      public Builder SetFile(int index, global::Google.ProtocolBuffers.Compiler.PluginProto.CodeGeneratorResponse.Types.File value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.file_[index] = value;
-        return this;
-      }
-      public Builder SetFile(int index, global::Google.ProtocolBuffers.Compiler.PluginProto.CodeGeneratorResponse.Types.File.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.file_[index] = builderForValue.Build();
-        return this;
-      }
-      public Builder AddFile(global::Google.ProtocolBuffers.Compiler.PluginProto.CodeGeneratorResponse.Types.File value) {
-        pb::ThrowHelper.ThrowIfNull(value, "value");
-        PrepareBuilder();
-        result.file_.Add(value);
-        return this;
-      }
-      public Builder AddFile(global::Google.ProtocolBuffers.Compiler.PluginProto.CodeGeneratorResponse.Types.File.Builder builderForValue) {
-        pb::ThrowHelper.ThrowIfNull(builderForValue, "builderForValue");
-        PrepareBuilder();
-        result.file_.Add(builderForValue.Build());
-        return this;
-      }
-      public Builder AddRangeFile(scg::IEnumerable<global::Google.ProtocolBuffers.Compiler.PluginProto.CodeGeneratorResponse.Types.File> values) {
-        PrepareBuilder();
-        result.file_.Add(values);
-        return this;
-      }
-      public Builder ClearFile() {
-        PrepareBuilder();
-        result.file_.Clear();
-        return this;
-      }
-    }
-    static CodeGeneratorResponse() {
-      object.ReferenceEquals(global::Google.ProtocolBuffers.Compiler.PluginProto.Plugin.Descriptor, null);
-    }
-  }
-
-  #endregion
-
-}
-
-#endregion Designer generated code

+ 0 - 140
csharp/src/ProtoGen/PrimitiveFieldGenerator.cs

@@ -1,140 +0,0 @@
-#region Copyright notice and license
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://github.com/jskeet/dotnet-protobufs/
-// Original C++/Java/Python code:
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-#endregion
-
-using Google.ProtocolBuffers.Descriptors;
-
-namespace Google.ProtocolBuffers.ProtoGen
-{
-    // TODO(jonskeet): Refactor this. There's loads of common code here.
-    internal class PrimitiveFieldGenerator : FieldGeneratorBase, IFieldSourceGenerator
-    {
-        internal PrimitiveFieldGenerator(FieldDescriptor descriptor, int fieldOrdinal)
-            : base(descriptor, fieldOrdinal)
-        {
-        }
-
-        public void GenerateMembers(TextGenerator writer)
-        {
-            writer.WriteLine("private bool has{0};", PropertyName);
-            writer.WriteLine("private {0} {1}_{2};", TypeName, Name, HasDefaultValue ? " = " + DefaultValue : "");
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public bool Has{0} {{", PropertyName);
-            writer.WriteLine("  get {{ return has{0}; }}", PropertyName);
-            writer.WriteLine("}");
-            AddPublicMemberAttributes(writer);
-            writer.WriteLine("public {0} {1} {{", TypeName, PropertyName);
-            writer.WriteLine("  get {{ return {0}_; }}", Name);
-            writer.WriteLine("}");
-        }
-
-        public void GenerateBuilderMembers(TextGenerator writer)
-        {
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public bool Has{0} {{", PropertyName);
-            writer.WriteLine("  get {{ return result.has{0}; }}", PropertyName);
-            writer.WriteLine("}");
-            AddPublicMemberAttributes(writer);
-            writer.WriteLine("public {0} {1} {{", TypeName, PropertyName);
-            writer.WriteLine("  get {{ return result.{0}; }}", PropertyName);
-            writer.WriteLine("  set {{ Set{0}(value); }}", PropertyName);
-            writer.WriteLine("}");
-            AddPublicMemberAttributes(writer);
-            writer.WriteLine("public Builder Set{0}({1} value) {{", PropertyName, TypeName);
-            AddNullCheck(writer);
-            writer.WriteLine("  PrepareBuilder();");
-            writer.WriteLine("  result.has{0} = true;", PropertyName);
-            writer.WriteLine("  result.{0}_ = value;", Name);
-            writer.WriteLine("  return this;");
-            writer.WriteLine("}");
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public Builder Clear{0}() {{", PropertyName);
-            writer.WriteLine("  PrepareBuilder();");
-            writer.WriteLine("  result.has{0} = false;", PropertyName);
-            writer.WriteLine("  result.{0}_ = {1};", Name, DefaultValue);
-            writer.WriteLine("  return this;");
-            writer.WriteLine("}");
-        }
-
-        public void GenerateMergingCode(TextGenerator writer)
-        {
-            writer.WriteLine("if (other.Has{0}) {{", PropertyName);
-            writer.WriteLine("  {0} = other.{0};", PropertyName);
-            writer.WriteLine("}");
-        }
-
-        public void GenerateBuildingCode(TextGenerator writer)
-        {
-            // Nothing to do here for primitive types
-        }
-
-        public void GenerateParsingCode(TextGenerator writer)
-        {
-            writer.WriteLine("result.has{0} = input.Read{1}(ref result.{2}_);", PropertyName, CapitalizedTypeName, Name);
-        }
-
-        public void GenerateSerializationCode(TextGenerator writer)
-        {
-            writer.WriteLine("if (has{0}) {{", PropertyName);
-            writer.WriteLine("  output.Write{0}({1}, field_names[{3}], {2});", CapitalizedTypeName, Number, PropertyName,
-                             FieldOrdinal);
-            writer.WriteLine("}");
-        }
-
-        public void GenerateSerializedSizeCode(TextGenerator writer)
-        {
-            writer.WriteLine("if (has{0}) {{", PropertyName);
-            writer.WriteLine("  size += pb::CodedOutputStream.Compute{0}Size({1}, {2});",
-                             CapitalizedTypeName, Number, PropertyName);
-            writer.WriteLine("}");
-        }
-
-        public override void WriteHash(TextGenerator writer)
-        {
-            writer.WriteLine("if (has{0}) hash ^= {1}_.GetHashCode();", PropertyName, Name);
-        }
-
-        public override void WriteEquals(TextGenerator writer)
-        {
-            writer.WriteLine("if (has{0} != other.has{0} || (has{0} && !{1}_.Equals(other.{1}_))) return false;",
-                             PropertyName, Name);
-        }
-
-        public override void WriteToString(TextGenerator writer)
-        {
-            writer.WriteLine("PrintField(\"{0}\", has{1}, {2}_, writer);", Descriptor.Name, PropertyName, Name);
-        }
-    }
-}

+ 0 - 105
csharp/src/ProtoGen/Program.cs

@@ -1,105 +0,0 @@
-#region Copyright notice and license
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://github.com/jskeet/dotnet-protobufs/
-// Original C++/Java/Python code:
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-#endregion
-
-using System;
-using System.IO;
-using System.Collections.Generic;
-using Google.ProtocolBuffers.Compiler.PluginProto;
-using Google.ProtocolBuffers.DescriptorProtos;
-
-namespace Google.ProtocolBuffers.ProtoGen
-{
-    /// <summary>
-    /// Entry point for the Protocol Buffers generator.
-    /// </summary>
-    internal class Program
-    {
-        internal static int Main(string[] args)
-        {
-            try
-            {
-                // Hack to make sure everything's initialized
-                DescriptorProtoFile.Descriptor.ToString();
-                GeneratorOptions options = new GeneratorOptions {Arguments = args};
-
-                IList<string> validationFailures;
-                if (!options.TryValidate(out validationFailures))
-                {
-                    // We've already got the message-building logic in the exception...
-                    InvalidOptionsException exception = new InvalidOptionsException(validationFailures);
-                    Console.WriteLine(exception.Message);
-                    return 1;
-                }
-
-                var request = new CodeGeneratorRequest.Builder();
-                foreach (string inputFile in options.InputFiles)
-                {
-                    ExtensionRegistry extensionRegistry = ExtensionRegistry.CreateInstance();
-                    CSharpOptions.RegisterAllExtensions(extensionRegistry);
-                    using (Stream inputStream = File.OpenRead(inputFile))
-                    {
-                        var fileSet = FileDescriptorSet.ParseFrom(inputStream, extensionRegistry);
-                        foreach (var fileProto in fileSet.FileList)
-                        {
-                            request.AddFileToGenerate(fileProto.Name);
-                            request.AddProtoFile(fileProto);
-                        }
-                    }
-                }
-
-                Generator generator = Generator.CreateGenerator(options);
-                var response = new CodeGeneratorResponse.Builder();
-                generator.Generate(request.Build(), response);
-                if (response.HasError)
-                {
-                    throw new Exception(response.Error);
-                }
-                foreach (var file in response.FileList)
-                {
-                    File.WriteAllText(file.Name, file.Content);
-                }
-                return 0;
-            }
-            catch (Exception e)
-            {
-                Console.Error.WriteLine("Error: {0}", e.Message);
-                Console.Error.WriteLine();
-                Console.Error.WriteLine("Detailed exception information: {0}", e);
-                return 1;
-            }
-        }
-    }
-}

+ 0 - 276
csharp/src/ProtoGen/ProgramPreprocess.cs

@@ -1,276 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Diagnostics;
-using System.IO;
-using System.Text;
-using System.Text.RegularExpressions;
-
-namespace Google.ProtocolBuffers.ProtoGen
-{
-    /// <summary>
-    /// Preprocesses any input files with an extension of '.proto' by running protoc.exe.  If arguments
-    /// are supplied with '--' prefix they are provided to protoc.exe, otherwise they are assumed to
-    /// be used for ProtoGen.exe which is run on the resulting output proto buffer.  If the option
-    /// --descriptor_set_out= is specified the proto buffer file is kept, otherwise it will be removed
-    /// after code generation.
-    /// </summary>
-    public class ProgramPreprocess
-    {
-        private const string ProtocExecutable = "protoc.exe";
-        private const string ProtocDirectoryArg = "--protoc_dir=";
-
-        private static int Main(string[] args)
-        {
-            try
-            {
-                return Environment.ExitCode = Run(args);
-            }
-            catch (Exception ex)
-            {
-                Console.Error.WriteLine(ex);
-                return Environment.ExitCode = 2;
-            }
-        }
-
-        public static int Run(params string[] args)
-        {
-            bool deleteFile = false;
-            string tempFile = null;
-            int result;
-            bool doHelp = args.Length == 0;
-            try
-            {
-                List<string> protocArgs = new List<string>();
-                List<string> protoGenArgs = new List<string>();
-
-                string protocFile = GuessProtocFile(args);
-
-                foreach (string arg in args)
-                {
-                    doHelp |= StringComparer.OrdinalIgnoreCase.Equals(arg, "/?");
-                    doHelp |= StringComparer.OrdinalIgnoreCase.Equals(arg, "/help");
-                    doHelp |= StringComparer.OrdinalIgnoreCase.Equals(arg, "-?");
-                    doHelp |= StringComparer.OrdinalIgnoreCase.Equals(arg, "-help");
-
-                    if (arg.StartsWith("--descriptor_set_out="))
-                    {
-                        tempFile = arg.Substring("--descriptor_set_out=".Length);
-                        protoGenArgs.Add(tempFile);
-                    }
-                }
-
-                if (doHelp)
-                {
-                    Console.WriteLine();
-                    Console.WriteLine("PROTOC.exe: Use any of the following options that begin with '--':");
-                    Console.WriteLine();
-                    try
-                    {
-                        RunProtoc(protocFile, "--help");
-                    }
-                    catch (Exception ex)
-                    {
-                        Console.Error.WriteLine(ex.Message);
-                    }
-                    Console.WriteLine();
-                    Console.WriteLine();
-                    Console.WriteLine(
-                        "PROTOGEN.exe: The following options are used to specify defaults for code generation.");
-                    Console.WriteLine();
-                    Program.Main(new string[0]);
-                    Console.WriteLine();
-                    Console.WriteLine("The following option enables PROTOGEN.exe to find PROTOC.exe");
-                    Console.WriteLine("{0}<directory containing protoc.exe>", ProtocDirectoryArg);
-                    return 0;
-                }
-
-                string pathRoot = Environment.CurrentDirectory;
-                foreach(string arg in args)
-                {
-                    if (arg.StartsWith("--proto_path=", StringComparison.InvariantCultureIgnoreCase))
-                    {
-                        pathRoot = arg.Substring(13);
-                    }
-                }
-
-                foreach (string arg in args)
-                {
-                    if (arg.StartsWith(ProtocDirectoryArg))
-                    {
-                        // Handled earlier
-                        continue;
-                    }
-                    if (arg.StartsWith("--"))
-                    {
-                        protocArgs.Add(arg);
-                    }
-                    else if ((File.Exists(arg) || File.Exists(Path.Combine(pathRoot, arg))) &&
-                             StringComparer.OrdinalIgnoreCase.Equals(".proto", Path.GetExtension(arg)))
-                    {
-                        if (tempFile == null)
-                        {
-                            deleteFile = true;
-                            tempFile = Path.GetTempFileName();
-                            protocArgs.Add(String.Format("--descriptor_set_out={0}", tempFile));
-                            protoGenArgs.Add(tempFile);
-                        }
-                        string patharg = arg;
-                        if (!File.Exists(patharg))
-                        {
-                            patharg = Path.Combine(pathRoot, arg);
-                        }
-
-                        protocArgs.Add(patharg);
-                    }
-                    else
-                    {
-                        protoGenArgs.Add(arg);
-                    }
-                }
-
-                if (tempFile != null)
-                {
-                    result = RunProtoc(protocFile, protocArgs.ToArray());
-                    if (result != 0)
-                    {
-                        return result;
-                    }
-                }
-
-                result = Program.Main(protoGenArgs.ToArray());
-            }
-            finally
-            {
-                if (deleteFile && tempFile != null && File.Exists(tempFile))
-                {
-                    File.Delete(tempFile);
-                }
-            }
-            return result;
-        }
-
-        /// <summary>
-        /// Tries to work out where protoc is based on command line arguments, the current
-        /// directory, the directory containing protogen, and the path.
-        /// </summary>
-        /// <returns>The path to protoc.exe, or null if it can't be found.</returns>
-        private static string GuessProtocFile(params string[] args)
-        {
-            // Why oh why is this not in System.IO.Path or Environment...?
-            List<string> searchPath = new List<string>();
-            foreach (string arg in args)
-            {
-                if (arg.StartsWith("--protoc_dir="))
-                {
-                    searchPath.Add(arg.Substring(ProtocDirectoryArg.Length));
-                }
-            }
-            searchPath.Add(Environment.CurrentDirectory);
-            searchPath.Add(AppDomain.CurrentDomain.BaseDirectory);
-            searchPath.AddRange((Environment.GetEnvironmentVariable("PATH") ?? String.Empty).Split(Path.PathSeparator));
-
-            foreach (string path in searchPath)
-            {
-                string exeFile = Path.Combine(path, ProtocExecutable);
-                if (File.Exists(exeFile))
-                {
-                    return exeFile;
-                }
-            }
-            return null;
-        }
-
-        private static int RunProtoc(string exeFile, params string[] args)
-        {
-            if (exeFile == null)
-            {
-                throw new FileNotFoundException(
-                    "Unable to locate " + ProtocExecutable +
-                    " make sure it is in the PATH, cwd, or exe dir, or use --protoc_dir=...");
-            }
-
-            ProcessStartInfo psi = new ProcessStartInfo(exeFile);
-            psi.Arguments = EscapeArguments(args);
-            psi.RedirectStandardError = true;
-            psi.RedirectStandardInput = false;
-            psi.RedirectStandardOutput = true;
-            psi.ErrorDialog = false;
-            psi.CreateNoWindow = true;
-            psi.UseShellExecute = false;
-            psi.WorkingDirectory = Environment.CurrentDirectory;
-
-            Process process = Process.Start(psi);
-            if (process == null)
-            {
-                return 1;
-            }
-
-            process.WaitForExit();
-
-            string tmp = process.StandardOutput.ReadToEnd();
-            if (tmp.Trim().Length > 0)
-            {
-                Console.Out.WriteLine(tmp);
-            }
-            tmp = process.StandardError.ReadToEnd();
-            if (tmp.Trim().Length > 0)
-            {
-                // Replace protoc output with something more amenable to Visual Studio.
-                var regexMsvs = new Regex(@"(.*)\((\d+)\).* column=(\d+)\s*:\s*(.*)");
-                tmp = regexMsvs.Replace(tmp, "$1($2,$3): error CS9999: $4");
-                var regexGcc = new Regex(@"(.*):(\d+):(\d+):\s*(.*)");
-                tmp = regexGcc.Replace(tmp, "$1($2,$3): error CS9999: $4");
-                Console.Error.WriteLine(tmp);
-            }
-            return process.ExitCode;
-        }
-
-        /// <summary>
-        /// Quotes all arguments that contain whitespace, or begin with a quote and returns a single
-        /// argument string for use with Process.Start().
-        /// </summary>
-        /// <remarks>http://csharptest.net/?p=529</remarks>
-        /// <param name="args">A list of strings for arguments, may not contain null, '\0', '\r', or '\n'</param>
-        /// <returns>The combined list of escaped/quoted strings</returns>
-        /// <exception cref="System.ArgumentNullException">Raised when one of the arguments is null</exception>
-        /// <exception cref="System.ArgumentOutOfRangeException">Raised if an argument contains '\0', '\r', or '\n'</exception>
-        public static string EscapeArguments(params string[] args)
-        {
-            StringBuilder arguments = new StringBuilder();
-            Regex invalidChar = new Regex("[\x00\x0a\x0d]");//  these can not be escaped
-            Regex needsQuotes = new Regex(@"\s|""");//          contains whitespace or two quote characters
-            Regex escapeQuote = new Regex(@"(\\*)(""|$)");//    one or more '\' followed with a quote or end of string
-            for (int carg = 0; args != null && carg < args.Length; carg++)
-            {
-                if (args[carg] == null)
-                {
-                    throw new ArgumentNullException("args[" + carg + "]");
-                }
-                if (invalidChar.IsMatch(args[carg]))
-                {
-                    throw new ArgumentOutOfRangeException("args[" + carg + "]");
-                }
-                if (args[carg] == String.Empty)
-                {
-                    arguments.Append("\"\"");
-                }
-                else if (!needsQuotes.IsMatch(args[carg])) { arguments.Append(args[carg]); }
-                else
-                {
-                    arguments.Append('"');
-                    arguments.Append(escapeQuote.Replace(args[carg],
-                                                         m =>
-                                                         m.Groups[1].Value + m.Groups[1].Value +
-                                                         (m.Groups[2].Value == "\"" ? "\\\"" : "")
-                                         ));
-                    arguments.Append('"');
-                }
-                if (carg + 1 < args.Length)
-                {
-                    arguments.Append(' ');
-                }
-            }
-            return arguments.ToString();
-        }
-    }
-}

+ 0 - 29
csharp/src/ProtoGen/Properties/AssemblyInfo.cs

@@ -1,29 +0,0 @@
-using System.Reflection;
-using System.Runtime.InteropServices;
-
-// General Information about an assembly is controlled through the following 
-// set of attributes. Change these attribute values to modify the information
-// associated with an assembly.
-
-[assembly: AssemblyTitle("ProtoGen")]
-[assembly: AssemblyDescription("")]
-[assembly: AssemblyConfiguration("")]
-[assembly: AssemblyCompany("")]
-[assembly: AssemblyProduct("ProtoGen")]
-[assembly: AssemblyCopyright("Copyright ©  2008")]
-[assembly: AssemblyTrademark("")]
-[assembly: AssemblyCulture("")]
-
-// Version information for an assembly consists of the following four values:
-//
-//      Major Version
-//      Minor Version 
-//      Build Number
-//      Revision
-//
-// You can specify all the values or you can default the Build and Revision Numbers 
-// by using the '*' as shown below:
-// [assembly: AssemblyVersion("2.4.1.555")]
-
-[assembly: AssemblyVersion("2.4.1.555")]
-[assembly: AssemblyFileVersion("2.4.1.555")]

+ 0 - 98
csharp/src/ProtoGen/ProtoGen.csproj

@@ -1,98 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup>
-    <EnvironmentFlavor>CLIENTPROFILE</EnvironmentFlavor>
-    <EnvironmentTemplate>NET35</EnvironmentTemplate>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.30729</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{250ADE34-82FD-4BAE-86D5-985FBE589C4A}</ProjectGuid>
-    <OutputType>Exe</OutputType>
-    <AppDesignerFolder>Properties</AppDesignerFolder>
-    <RootNamespace>Google.ProtocolBuffers.ProtoGen</RootNamespace>
-    <AssemblyName>ProtoGen</AssemblyName>
-    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
-    <FileAlignment>512</FileAlignment>
-    <SignAssembly>true</SignAssembly>
-    <AssemblyOriginatorKeyFile>..\..\keys\Google.ProtocolBuffers.snk</AssemblyOriginatorKeyFile>
-    <StartupObject>Google.ProtocolBuffers.ProtoGen.ProgramPreprocess</StartupObject>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>bin\NET35\Debug</OutputPath>
-    <IntermediateOutputPath>obj\NET35\Debug\</IntermediateOutputPath>
-    <DefineConstants>DEBUG;TRACE</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>pdbonly</DebugType>
-    <Optimize>true</Optimize>
-    <OutputPath>bin\NET35\Release</OutputPath>
-    <IntermediateOutputPath>obj\NET35\Release\</IntermediateOutputPath>
-    <DefineConstants>TRACE</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="mscorlib" />
-    <Reference Include="System" />
-    <Reference Include="System.Data" />
-    <Reference Include="System.Xml" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="DescriptorUtil.cs" />
-    <Compile Include="EnumFieldGenerator.cs" />
-    <Compile Include="EnumGenerator.cs" />
-    <Compile Include="ExtensionGenerator.cs" />
-    <Compile Include="FieldGeneratorBase.cs" />
-    <Compile Include="IFieldSourceGenerator.cs" />
-    <Compile Include="ISourceGenerator.cs" />
-    <Compile Include="MessageFieldGenerator.cs" />
-    <Compile Include="MessageGenerator.cs" />
-    <Compile Include="PluginProtoFile.cs" />
-    <Compile Include="PrimitiveFieldGenerator.cs" />
-    <Compile Include="ProgramPreprocess.cs" />
-    <Compile Include="RepeatedEnumFieldGenerator.cs" />
-    <Compile Include="RepeatedMessageFieldGenerator.cs" />
-    <Compile Include="RepeatedPrimitiveFieldGenerator.cs" />
-    <Compile Include="ServiceGenerator.cs" />
-    <Compile Include="DependencyResolutionException.cs" />
-    <Compile Include="Generator.cs" />
-    <Compile Include="GeneratorOptions.cs" />
-    <Compile Include="Helpers.cs" />
-    <Compile Include="InvalidOptionsException.cs" />
-    <Compile Include="Program.cs" />
-    <Compile Include="Properties\AssemblyInfo.cs" />
-    <Compile Include="ServiceInterfaceGenerator.cs" />
-    <Compile Include="SourceGeneratorBase.cs" />
-    <Compile Include="SourceGenerators.cs" />
-    <Compile Include="UmbrellaClassGenerator.cs" />
-  </ItemGroup>
-  <ItemGroup>
-    <ProjectReference Include="..\ProtocolBuffers\ProtocolBuffers.csproj">
-      <Project>{6908BDCE-D925-43F3-94AC-A531E6DF2591}</Project>
-      <Name>ProtocolBuffers</Name>
-    </ProjectReference>
-  </ItemGroup>
-  <ItemGroup>
-    <None Include="app.config" />
-  </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 - 76
csharp/src/ProtoGen/ProtocGenCs.cs

@@ -1,76 +0,0 @@
-using Google.ProtocolBuffers.Compiler.PluginProto;
-using Google.ProtocolBuffers.DescriptorProtos;
-using System;
-using System.Collections.Generic;
-
-// Usage example:
-//   protoc.exe
-//     --plugin=path\to\protoc-gen-cs.exe
-//     --cs_out="-generated_code_attributes=true umbrella_namespace=TutorialProto :."
-//     --proto_path=.\protos\
-//     protos\tutorial\addressbook.proto
-
-namespace Google.ProtocolBuffers.ProtoGen
-{
-    public static class ProtocGenCs
-    {
-        internal static void Run(CodeGeneratorRequest request, CodeGeneratorResponse.Builder response)
-        {
-            var arguments = new List<string>();
-            foreach (var arg in request.Parameter.Split(' '))
-            {
-                var timmedArg = (arg ?? "").Trim();
-                if (!string.IsNullOrEmpty(timmedArg))
-                {
-                    arguments.Add(timmedArg);
-                }
-            }
-            // Adding fake input file to make TryValidate happy.
-            arguments.Add(System.Reflection.Assembly.GetExecutingAssembly().Location);
-
-            GeneratorOptions options = new GeneratorOptions
-            {
-                Arguments = arguments
-            };
-            IList<string> validationFailures;
-            if (!options.TryValidate(out validationFailures))
-            {
-                response.Error += new InvalidOptionsException(validationFailures).Message;
-                return;
-            }
-
-            Generator generator = Generator.CreateGenerator(options);
-            generator.Generate(request, response);
-        }
-
-        public static int Main(string[] args)
-        {
-            // Hack to make sure everything's initialized
-            DescriptorProtoFile.Descriptor.ToString();
-            ExtensionRegistry extensionRegistry = ExtensionRegistry.CreateInstance();
-            CSharpOptions.RegisterAllExtensions(extensionRegistry);
-
-            CodeGeneratorRequest request;
-            var response = new CodeGeneratorResponse.Builder();
-            try
-            {
-                using (var input = Console.OpenStandardInput())
-                {
-                    request = CodeGeneratorRequest.ParseFrom(input, extensionRegistry);
-                }
-                Run(request, response);
-            }
-            catch (Exception e)
-            {
-                response.Error += e.ToString();
-            }
-
-            using (var output = Console.OpenStandardOutput())
-            {
-                response.Build().WriteTo(output);
-                output.Flush();
-            }
-            return 0;
-        }
-    }
-}

+ 0 - 212
csharp/src/ProtoGen/RepeatedEnumFieldGenerator.cs

@@ -1,212 +0,0 @@
-#region Copyright notice and license
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://github.com/jskeet/dotnet-protobufs/
-// Original C++/Java/Python code:
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-#endregion
-
-using Google.ProtocolBuffers.Descriptors;
-
-namespace Google.ProtocolBuffers.ProtoGen
-{
-    internal class RepeatedEnumFieldGenerator : FieldGeneratorBase, IFieldSourceGenerator
-    {
-        internal RepeatedEnumFieldGenerator(FieldDescriptor descriptor, int fieldOrdinal)
-            : base(descriptor, fieldOrdinal)
-        {
-        }
-
-        public void GenerateMembers(TextGenerator writer)
-        {
-            if (Descriptor.IsPacked && OptimizeSpeed)
-            {
-                writer.WriteLine("private int {0}MemoizedSerializedSize;", Name);
-            }
-            writer.WriteLine("private pbc::PopsicleList<{0}> {1}_ = new pbc::PopsicleList<{0}>();", TypeName, Name);
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public scg::IList<{0}> {1}List {{", TypeName, PropertyName);
-            writer.WriteLine("  get {{ return pbc::Lists.AsReadOnly({0}_); }}", Name);
-            writer.WriteLine("}");
-
-            // TODO(jonskeet): Redundant API calls? Possibly - include for portability though. Maybe create an option.
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public int {0}Count {{", PropertyName);
-            writer.WriteLine("  get {{ return {0}_.Count; }}", Name);
-            writer.WriteLine("}");
-
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public {0} Get{1}(int index) {{", TypeName, PropertyName);
-            writer.WriteLine("  return {0}_[index];", Name);
-            writer.WriteLine("}");
-        }
-
-        public void GenerateBuilderMembers(TextGenerator writer)
-        {
-            // Note:  We can return the original list here, because we make it unmodifiable when we build
-            // We return it via IPopsicleList so that collection initializers work more pleasantly.
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public pbc::IPopsicleList<{0}> {1}List {{", TypeName, PropertyName);
-            writer.WriteLine("  get {{ return PrepareBuilder().{0}_; }}", Name);
-            writer.WriteLine("}");
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public int {0}Count {{", PropertyName);
-            writer.WriteLine("  get {{ return result.{0}Count; }}", PropertyName);
-            writer.WriteLine("}");
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public {0} Get{1}(int index) {{", TypeName, PropertyName);
-            writer.WriteLine("  return result.Get{0}(index);", PropertyName);
-            writer.WriteLine("}");
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public Builder Set{0}(int index, {1} value) {{", PropertyName, TypeName);
-            writer.WriteLine("  PrepareBuilder();");
-            writer.WriteLine("  result.{0}_[index] = value;", Name);
-            writer.WriteLine("  return this;");
-            writer.WriteLine("}");
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public Builder Add{0}({1} value) {{", PropertyName, TypeName);
-            writer.WriteLine("  PrepareBuilder();");
-            writer.WriteLine("  result.{0}_.Add(value);", Name, TypeName);
-            writer.WriteLine("  return this;");
-            writer.WriteLine("}");
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public Builder AddRange{0}(scg::IEnumerable<{1}> values) {{", PropertyName, TypeName);
-            writer.WriteLine("  PrepareBuilder();");
-            writer.WriteLine("  result.{0}_.Add(values);", Name);
-            writer.WriteLine("  return this;");
-            writer.WriteLine("}");
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public Builder Clear{0}() {{", PropertyName);
-            writer.WriteLine("  PrepareBuilder();");
-            writer.WriteLine("  result.{0}_.Clear();", Name);
-            writer.WriteLine("  return this;");
-            writer.WriteLine("}");
-        }
-
-        public void GenerateMergingCode(TextGenerator writer)
-        {
-            writer.WriteLine("if (other.{0}_.Count != 0) {{", Name);
-            writer.WriteLine("  result.{0}_.Add(other.{0}_);", Name);
-            writer.WriteLine("}");
-        }
-
-        public void GenerateBuildingCode(TextGenerator writer)
-        {
-            writer.WriteLine("{0}_.MakeReadOnly();", Name);
-        }
-
-        public void GenerateParsingCode(TextGenerator writer)
-        {
-            writer.WriteLine("scg::ICollection<object> unknownItems;");
-            writer.WriteLine("input.ReadEnumArray<{0}>(tag, field_name, result.{1}_, out unknownItems);", TypeName, Name);
-            if (!UseLiteRuntime)
-            {
-                writer.WriteLine("if (unknownItems != null) {");
-                writer.WriteLine("  if (unknownFields == null) {");
-                writer.WriteLine("    unknownFields = pb::UnknownFieldSet.CreateBuilder(this.UnknownFields);");
-                writer.WriteLine("  }");
-                writer.WriteLine("  foreach (object rawValue in unknownItems)");
-                writer.WriteLine("    if (rawValue is int)");
-                writer.WriteLine("      unknownFields.MergeVarintField({0}, (ulong)(int)rawValue);", Number);
-                writer.WriteLine("}");
-            }
-        }
-
-        public void GenerateSerializationCode(TextGenerator writer)
-        {
-            writer.WriteLine("if ({0}_.Count > 0) {{", Name);
-            writer.Indent();
-            if (Descriptor.IsPacked)
-            {
-                writer.WriteLine(
-                    "output.WritePackedEnumArray({0}, field_names[{2}], {1}MemoizedSerializedSize, {1}_);", Number, Name,
-                    FieldOrdinal, Descriptor.FieldType);
-            }
-            else
-            {
-                writer.WriteLine("output.WriteEnumArray({0}, field_names[{2}], {1}_);", Number, Name, FieldOrdinal,
-                                 Descriptor.FieldType);
-            }
-            writer.Outdent();
-            writer.WriteLine("}");
-        }
-
-        public void GenerateSerializedSizeCode(TextGenerator writer)
-        {
-            writer.WriteLine("{");
-            writer.Indent();
-            writer.WriteLine("int dataSize = 0;");
-            writer.WriteLine("if ({0}_.Count > 0) {{", Name);
-            writer.Indent();
-            writer.WriteLine("foreach ({0} element in {1}_) {{", TypeName, Name);
-            writer.WriteLine("  dataSize += pb::CodedOutputStream.ComputeEnumSizeNoTag((int) element);");
-            writer.WriteLine("}");
-            writer.WriteLine("size += dataSize;");
-            int tagSize = CodedOutputStream.ComputeTagSize(Descriptor.FieldNumber);
-            if (Descriptor.IsPacked)
-            {
-                writer.WriteLine("size += {0};", tagSize);
-                writer.WriteLine("size += pb::CodedOutputStream.ComputeRawVarint32Size((uint) dataSize);");
-            }
-            else
-            {
-                writer.WriteLine("size += {0} * {1}_.Count;", tagSize, Name);
-            }
-            writer.Outdent();
-            writer.WriteLine("}");
-            // cache the data size for packed fields.
-            if (Descriptor.IsPacked)
-            {
-                writer.WriteLine("{0}MemoizedSerializedSize = dataSize;", Name);
-            }
-            writer.Outdent();
-            writer.WriteLine("}");
-        }
-
-        public override void WriteHash(TextGenerator writer)
-        {
-            writer.WriteLine("foreach({0} i in {1}_)", TypeName, Name);
-            writer.WriteLine("  hash ^= i.GetHashCode();");
-        }
-
-        public override void WriteEquals(TextGenerator writer)
-        {
-            writer.WriteLine("if({0}_.Count != other.{0}_.Count) return false;", Name);
-            writer.WriteLine("for(int ix=0; ix < {0}_.Count; ix++)", Name);
-            writer.WriteLine("  if(!{0}_[ix].Equals(other.{0}_[ix])) return false;", Name);
-        }
-
-        public override void WriteToString(TextGenerator writer)
-        {
-            writer.WriteLine("PrintField(\"{0}\", {1}_, writer);", Descriptor.Name, Name);
-        }
-    }
-}

+ 0 - 184
csharp/src/ProtoGen/RepeatedMessageFieldGenerator.cs

@@ -1,184 +0,0 @@
-#region Copyright notice and license
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://github.com/jskeet/dotnet-protobufs/
-// Original C++/Java/Python code:
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-#endregion
-
-using Google.ProtocolBuffers.Descriptors;
-
-namespace Google.ProtocolBuffers.ProtoGen
-{
-    internal class RepeatedMessageFieldGenerator : FieldGeneratorBase, IFieldSourceGenerator
-    {
-        internal RepeatedMessageFieldGenerator(FieldDescriptor descriptor, int fieldOrdinal)
-            : base(descriptor, fieldOrdinal)
-        {
-        }
-
-        public void GenerateMembers(TextGenerator writer)
-        {
-            writer.WriteLine("private pbc::PopsicleList<{0}> {1}_ = new pbc::PopsicleList<{0}>();", TypeName, Name);
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public scg::IList<{0}> {1}List {{", TypeName, PropertyName);
-            writer.WriteLine("  get {{ return {0}_; }}", Name);
-            writer.WriteLine("}");
-
-            // TODO(jonskeet): Redundant API calls? Possibly - include for portability though. Maybe create an option.
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public int {0}Count {{", PropertyName);
-            writer.WriteLine("  get {{ return {0}_.Count; }}", Name);
-            writer.WriteLine("}");
-
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public {0} Get{1}(int index) {{", TypeName, PropertyName);
-            writer.WriteLine("  return {0}_[index];", Name);
-            writer.WriteLine("}");
-        }
-
-        public void GenerateBuilderMembers(TextGenerator writer)
-        {
-            // Note:  We can return the original list here, because we make it unmodifiable when we build
-            // We return it via IPopsicleList so that collection initializers work more pleasantly.
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public pbc::IPopsicleList<{0}> {1}List {{", TypeName, PropertyName);
-            writer.WriteLine("  get {{ return PrepareBuilder().{0}_; }}", Name);
-            writer.WriteLine("}");
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public int {0}Count {{", PropertyName);
-            writer.WriteLine("  get {{ return result.{0}Count; }}", PropertyName);
-            writer.WriteLine("}");
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public {0} Get{1}(int index) {{", TypeName, PropertyName);
-            writer.WriteLine("  return result.Get{0}(index);", PropertyName);
-            writer.WriteLine("}");
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public Builder Set{0}(int index, {1} value) {{", PropertyName, TypeName);
-            AddNullCheck(writer);
-            writer.WriteLine("  PrepareBuilder();");
-            writer.WriteLine("  result.{0}_[index] = value;", Name);
-            writer.WriteLine("  return this;");
-            writer.WriteLine("}");
-            // Extra overload for builder (just on messages)
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public Builder Set{0}(int index, {1}.Builder builderForValue) {{", PropertyName, TypeName);
-            AddNullCheck(writer, "builderForValue");
-            writer.WriteLine("  PrepareBuilder();");
-            writer.WriteLine("  result.{0}_[index] = builderForValue.Build();", Name);
-            writer.WriteLine("  return this;");
-            writer.WriteLine("}");
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public Builder Add{0}({1} value) {{", PropertyName, TypeName);
-            AddNullCheck(writer);
-            writer.WriteLine("  PrepareBuilder();");
-            writer.WriteLine("  result.{0}_.Add(value);", Name, TypeName);
-            writer.WriteLine("  return this;");
-            writer.WriteLine("}");
-            // Extra overload for builder (just on messages)
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public Builder Add{0}({1}.Builder builderForValue) {{", PropertyName, TypeName);
-            AddNullCheck(writer, "builderForValue");
-            writer.WriteLine("  PrepareBuilder();");
-            writer.WriteLine("  result.{0}_.Add(builderForValue.Build());", Name);
-            writer.WriteLine("  return this;");
-            writer.WriteLine("}");
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public Builder AddRange{0}(scg::IEnumerable<{1}> values) {{", PropertyName, TypeName);
-            writer.WriteLine("  PrepareBuilder();");
-            writer.WriteLine("  result.{0}_.Add(values);", Name);
-            writer.WriteLine("  return this;");
-            writer.WriteLine("}");
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public Builder Clear{0}() {{", PropertyName);
-            writer.WriteLine("  PrepareBuilder();");
-            writer.WriteLine("  result.{0}_.Clear();", Name);
-            writer.WriteLine("  return this;");
-            writer.WriteLine("}");
-        }
-
-        public void GenerateMergingCode(TextGenerator writer)
-        {
-            writer.WriteLine("if (other.{0}_.Count != 0) {{", Name);
-            writer.WriteLine("  result.{0}_.Add(other.{0}_);", Name);
-            writer.WriteLine("}");
-        }
-
-        public void GenerateBuildingCode(TextGenerator writer)
-        {
-            writer.WriteLine("{0}_.MakeReadOnly();", Name);
-        }
-
-        public void GenerateParsingCode(TextGenerator writer)
-        {
-            writer.WriteLine(
-                "input.Read{0}Array(tag, field_name, result.{1}_, {2}.DefaultInstance, extensionRegistry);",
-                MessageOrGroup, Name, TypeName);
-        }
-
-        public void GenerateSerializationCode(TextGenerator writer)
-        {
-            writer.WriteLine("if ({0}_.Count > 0) {{", Name);
-            writer.Indent();
-            writer.WriteLine("output.Write{0}Array({1}, field_names[{3}], {2}_);", MessageOrGroup, Number, Name,
-                             FieldOrdinal, Descriptor.FieldType);
-            writer.Outdent();
-            writer.WriteLine("}");
-        }
-
-        public void GenerateSerializedSizeCode(TextGenerator writer)
-        {
-            writer.WriteLine("foreach ({0} element in {1}List) {{", TypeName, PropertyName);
-            writer.WriteLine("  size += pb::CodedOutputStream.Compute{0}Size({1}, element);", MessageOrGroup, Number);
-            writer.WriteLine("}");
-        }
-
-        public override void WriteHash(TextGenerator writer)
-        {
-            writer.WriteLine("foreach({0} i in {1}_)", TypeName, Name);
-            writer.WriteLine("  hash ^= i.GetHashCode();");
-        }
-
-        public override void WriteEquals(TextGenerator writer)
-        {
-            writer.WriteLine("if({0}_.Count != other.{0}_.Count) return false;", Name);
-            writer.WriteLine("for(int ix=0; ix < {0}_.Count; ix++)", Name);
-            writer.WriteLine("  if(!{0}_[ix].Equals(other.{0}_[ix])) return false;", Name);
-        }
-
-        public override void WriteToString(TextGenerator writer)
-        {
-            writer.WriteLine("PrintField(\"{0}\", {1}_, writer);",
-                             Descriptor.FieldType == FieldType.Group ? Descriptor.MessageType.Name : Descriptor.Name,
-                             Name);
-        }
-    }
-}

+ 0 - 207
csharp/src/ProtoGen/RepeatedPrimitiveFieldGenerator.cs

@@ -1,207 +0,0 @@
-#region Copyright notice and license
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://github.com/jskeet/dotnet-protobufs/
-// Original C++/Java/Python code:
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-#endregion
-
-using Google.ProtocolBuffers.Descriptors;
-
-namespace Google.ProtocolBuffers.ProtoGen
-{
-    internal class RepeatedPrimitiveFieldGenerator : FieldGeneratorBase, IFieldSourceGenerator
-    {
-        internal RepeatedPrimitiveFieldGenerator(FieldDescriptor descriptor, int fieldOrdinal)
-            : base(descriptor, fieldOrdinal)
-        {
-        }
-
-        public void GenerateMembers(TextGenerator writer)
-        {
-            if (Descriptor.IsPacked && OptimizeSpeed)
-            {
-                writer.WriteLine("private int {0}MemoizedSerializedSize;", Name);
-            }
-            writer.WriteLine("private pbc::PopsicleList<{0}> {1}_ = new pbc::PopsicleList<{0}>();", TypeName, Name);
-            AddPublicMemberAttributes(writer);
-            writer.WriteLine("public scg::IList<{0}> {1}List {{", TypeName, PropertyName);
-            writer.WriteLine("  get {{ return pbc::Lists.AsReadOnly({0}_); }}", Name);
-            writer.WriteLine("}");
-
-            // TODO(jonskeet): Redundant API calls? Possibly - include for portability though. Maybe create an option.
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public int {0}Count {{", PropertyName);
-            writer.WriteLine("  get {{ return {0}_.Count; }}", Name);
-            writer.WriteLine("}");
-
-            AddPublicMemberAttributes(writer);
-            writer.WriteLine("public {0} Get{1}(int index) {{", TypeName, PropertyName);
-            writer.WriteLine("  return {0}_[index];", Name);
-            writer.WriteLine("}");
-        }
-
-        public void GenerateBuilderMembers(TextGenerator writer)
-        {
-            // Note:  We can return the original list here, because we make it unmodifiable when we build
-            // We return it via IPopsicleList so that collection initializers work more pleasantly.
-            AddPublicMemberAttributes(writer);
-            writer.WriteLine("public pbc::IPopsicleList<{0}> {1}List {{", TypeName, PropertyName);
-            writer.WriteLine("  get {{ return PrepareBuilder().{0}_; }}", Name);
-            writer.WriteLine("}");
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public int {0}Count {{", PropertyName);
-            writer.WriteLine("  get {{ return result.{0}Count; }}", PropertyName);
-            writer.WriteLine("}");
-            AddPublicMemberAttributes(writer);
-            writer.WriteLine("public {0} Get{1}(int index) {{", TypeName, PropertyName);
-            writer.WriteLine("  return result.Get{0}(index);", PropertyName);
-            writer.WriteLine("}");
-            AddPublicMemberAttributes(writer);
-            writer.WriteLine("public Builder Set{0}(int index, {1} value) {{", PropertyName, TypeName);
-            AddNullCheck(writer);
-            writer.WriteLine("  PrepareBuilder();");
-            writer.WriteLine("  result.{0}_[index] = value;", Name);
-            writer.WriteLine("  return this;");
-            writer.WriteLine("}");
-            AddPublicMemberAttributes(writer);
-            writer.WriteLine("public Builder Add{0}({1} value) {{", PropertyName, TypeName);
-            AddNullCheck(writer);
-            writer.WriteLine("  PrepareBuilder();");
-            writer.WriteLine("  result.{0}_.Add(value);", Name, TypeName);
-            writer.WriteLine("  return this;");
-            writer.WriteLine("}");
-            AddPublicMemberAttributes(writer);
-            writer.WriteLine("public Builder AddRange{0}(scg::IEnumerable<{1}> values) {{", PropertyName, TypeName);
-            writer.WriteLine("  PrepareBuilder();");
-            writer.WriteLine("  result.{0}_.Add(values);", Name);
-            writer.WriteLine("  return this;");
-            writer.WriteLine("}");
-            AddDeprecatedFlag(writer);
-            writer.WriteLine("public Builder Clear{0}() {{", PropertyName);
-            writer.WriteLine("  PrepareBuilder();");
-            writer.WriteLine("  result.{0}_.Clear();", Name);
-            writer.WriteLine("  return this;");
-            writer.WriteLine("}");
-        }
-
-        public void GenerateMergingCode(TextGenerator writer)
-        {
-            writer.WriteLine("if (other.{0}_.Count != 0) {{", Name);
-            writer.WriteLine("  result.{0}_.Add(other.{0}_);", Name);
-            writer.WriteLine("}");
-        }
-
-        public void GenerateBuildingCode(TextGenerator writer)
-        {
-            writer.WriteLine("{0}_.MakeReadOnly();", Name);
-        }
-
-        public void GenerateParsingCode(TextGenerator writer)
-        {
-            writer.WriteLine("input.Read{0}Array(tag, field_name, result.{1}_);", CapitalizedTypeName, Name,
-                             Descriptor.FieldType);
-        }
-
-        public void GenerateSerializationCode(TextGenerator writer)
-        {
-            writer.WriteLine("if ({0}_.Count > 0) {{", Name);
-            writer.Indent();
-            if (Descriptor.IsPacked)
-            {
-                writer.WriteLine("output.WritePacked{0}Array({1}, field_names[{3}], {2}MemoizedSerializedSize, {2}_);",
-                                 CapitalizedTypeName, Number, Name, FieldOrdinal, Descriptor.FieldType);
-            }
-            else
-            {
-                writer.WriteLine("output.Write{0}Array({1}, field_names[{3}], {2}_);", CapitalizedTypeName, Number, Name,
-                                 FieldOrdinal, Descriptor.FieldType);
-            }
-            writer.Outdent();
-            writer.WriteLine("}");
-        }
-
-        public void GenerateSerializedSizeCode(TextGenerator writer)
-        {
-            writer.WriteLine("{");
-            writer.Indent();
-            writer.WriteLine("int dataSize = 0;");
-            if (FixedSize == -1)
-            {
-                writer.WriteLine("foreach ({0} element in {1}List) {{", TypeName, PropertyName);
-                writer.WriteLine("  dataSize += pb::CodedOutputStream.Compute{0}SizeNoTag(element);",
-                                 CapitalizedTypeName, Number);
-                writer.WriteLine("}");
-            }
-            else
-            {
-                writer.WriteLine("dataSize = {0} * {1}_.Count;", FixedSize, Name);
-            }
-            writer.WriteLine("size += dataSize;");
-            int tagSize = CodedOutputStream.ComputeTagSize(Descriptor.FieldNumber);
-            if (Descriptor.IsPacked)
-            {
-                writer.WriteLine("if ({0}_.Count != 0) {{", Name);
-                writer.WriteLine("  size += {0} + pb::CodedOutputStream.ComputeInt32SizeNoTag(dataSize);", tagSize);
-                writer.WriteLine("}");
-            }
-            else
-            {
-                writer.WriteLine("size += {0} * {1}_.Count;", tagSize, Name);
-            }
-            // cache the data size for packed fields.
-            if (Descriptor.IsPacked)
-            {
-                writer.WriteLine("{0}MemoizedSerializedSize = dataSize;", Name);
-            }
-            writer.Outdent();
-            writer.WriteLine("}");
-        }
-
-        public override void WriteHash(TextGenerator writer)
-        {
-            writer.WriteLine("foreach({0} i in {1}_)", TypeName, Name);
-            writer.WriteLine("  hash ^= i.GetHashCode();");
-        }
-
-        public override void WriteEquals(TextGenerator writer)
-        {
-            writer.WriteLine("if({0}_.Count != other.{0}_.Count) return false;", Name);
-            writer.WriteLine("for(int ix=0; ix < {0}_.Count; ix++)", Name);
-            writer.WriteLine("  if(!{0}_[ix].Equals(other.{0}_[ix])) return false;", Name);
-        }
-
-        public override void WriteToString(TextGenerator writer)
-        {
-            writer.WriteLine("PrintField(\"{0}\", {1}_, writer);", Descriptor.Name, Name);
-        }
-    }
-}

+ 0 - 190
csharp/src/ProtoGen/ServiceGenerator.cs

@@ -1,190 +0,0 @@
-#region Copyright notice and license
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://github.com/jskeet/dotnet-protobufs/
-// Original C++/Java/Python code:
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-#endregion
-
-using Google.ProtocolBuffers.Descriptors;
-
-namespace Google.ProtocolBuffers.ProtoGen
-{
-    internal class GenericServiceGenerator : SourceGeneratorBase<ServiceDescriptor>, ISourceGenerator
-    {
-        private enum RequestOrResponse
-        {
-            Request,
-            Response
-        }
-
-        internal GenericServiceGenerator(ServiceDescriptor descriptor)
-            : base(descriptor)
-        {
-        }
-
-        public void Generate(TextGenerator writer)
-        {
-            writer.WriteLine("[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]");
-            WriteGeneratedCodeAttributes(writer);
-            writer.WriteLine("{0} abstract class {1} : pb::IService {{", ClassAccessLevel, Descriptor.Name);
-            writer.Indent();
-
-            foreach (MethodDescriptor method in Descriptor.Methods)
-            {
-                writer.WriteLine("{0} abstract void {1}(", ClassAccessLevel,
-                                 NameHelpers.UnderscoresToPascalCase(method.Name));
-                writer.WriteLine("    pb::IRpcController controller,");
-                writer.WriteLine("    {0} request,", GetClassName(method.InputType));
-                writer.WriteLine("    global::System.Action<{0}> done);", GetClassName(method.OutputType));
-            }
-
-            // Generate Descriptor and DescriptorForType.
-            writer.WriteLine();
-            writer.WriteLine("{0} static pbd::ServiceDescriptor Descriptor {{", ClassAccessLevel);
-            writer.WriteLine("  get {{ return {0}.Descriptor.Services[{1}]; }}",
-                             DescriptorUtil.GetQualifiedUmbrellaClassName(Descriptor.File.CSharpOptions),
-                             Descriptor.Index);
-            writer.WriteLine("}");
-            writer.WriteLine("public pbd::ServiceDescriptor DescriptorForType {");
-            writer.WriteLine("  get { return Descriptor; }");
-            writer.WriteLine("}");
-
-            GenerateCallMethod(writer);
-            GenerateGetPrototype(RequestOrResponse.Request, writer);
-            GenerateGetPrototype(RequestOrResponse.Response, writer);
-            GenerateStub(writer);
-
-            writer.Outdent();
-            writer.WriteLine("}");
-        }
-
-        private void GenerateCallMethod(TextGenerator writer)
-        {
-            writer.WriteLine();
-            writer.WriteLine("public void CallMethod(");
-            writer.WriteLine("    pbd::MethodDescriptor method,");
-            writer.WriteLine("    pb::IRpcController controller,");
-            writer.WriteLine("    pb::IMessage request,");
-            writer.WriteLine("    global::System.Action<pb::IMessage> done) {");
-            writer.Indent();
-            writer.WriteLine("if (method.Service != Descriptor) {");
-            writer.WriteLine("  throw new global::System.ArgumentException(");
-            writer.WriteLine("      \"Service.CallMethod() given method descriptor for wrong service type.\");");
-            writer.WriteLine("}");
-            writer.WriteLine("switch(method.Index) {");
-            writer.Indent();
-            foreach (MethodDescriptor method in Descriptor.Methods)
-            {
-                writer.WriteLine("case {0}:", method.Index);
-                writer.WriteLine("  this.{0}(controller, ({1}) request,",
-                                 NameHelpers.UnderscoresToPascalCase(method.Name), GetClassName(method.InputType));
-                writer.WriteLine("      pb::RpcUtil.SpecializeCallback<{0}>(", GetClassName(method.OutputType));
-                writer.WriteLine("      done));");
-                writer.WriteLine("  return;");
-            }
-            writer.WriteLine("default:");
-            writer.WriteLine("  throw new global::System.InvalidOperationException(\"Can't get here.\");");
-            writer.Outdent();
-            writer.WriteLine("}");
-            writer.Outdent();
-            writer.WriteLine("}");
-            writer.WriteLine();
-        }
-
-        private void GenerateGetPrototype(RequestOrResponse which, TextGenerator writer)
-        {
-            writer.WriteLine("public pb::IMessage Get{0}Prototype(pbd::MethodDescriptor method) {{", which);
-            writer.Indent();
-            writer.WriteLine("if (method.Service != Descriptor) {");
-            writer.WriteLine("  throw new global::System.ArgumentException(");
-            writer.WriteLine("      \"Service.Get{0}Prototype() given method descriptor for wrong service type.\");",
-                             which);
-            writer.WriteLine("}");
-            writer.WriteLine("switch(method.Index) {");
-            writer.Indent();
-
-            foreach (MethodDescriptor method in Descriptor.Methods)
-            {
-                writer.WriteLine("case {0}:", method.Index);
-                writer.WriteLine("  return {0}.DefaultInstance;",
-                                 GetClassName(which == RequestOrResponse.Request ? method.InputType : method.OutputType));
-            }
-            writer.WriteLine("default:");
-            writer.WriteLine("  throw new global::System.InvalidOperationException(\"Can't get here.\");");
-            writer.Outdent();
-            writer.WriteLine("}");
-            writer.Outdent();
-            writer.WriteLine("}");
-            writer.WriteLine();
-        }
-
-        private void GenerateStub(TextGenerator writer)
-        {
-            writer.WriteLine("public static Stub CreateStub(pb::IRpcChannel channel) {");
-            writer.WriteLine("  return new Stub(channel);");
-            writer.WriteLine("}");
-            writer.WriteLine();
-            writer.WriteLine("[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]");
-            WriteGeneratedCodeAttributes(writer);
-            writer.WriteLine("{0} class Stub : {1} {{", ClassAccessLevel, GetClassName(Descriptor));
-            writer.Indent();
-            writer.WriteLine("internal Stub(pb::IRpcChannel channel) {");
-            writer.WriteLine("  this.channel = channel;");
-            writer.WriteLine("}");
-            writer.WriteLine();
-            writer.WriteLine("private readonly pb::IRpcChannel channel;");
-            writer.WriteLine();
-            writer.WriteLine("public pb::IRpcChannel Channel {");
-            writer.WriteLine("  get { return channel; }");
-            writer.WriteLine("}");
-
-            foreach (MethodDescriptor method in Descriptor.Methods)
-            {
-                writer.WriteLine();
-                writer.WriteLine("{0} override void {1}(", ClassAccessLevel, 
-                                 NameHelpers.UnderscoresToPascalCase(method.Name));
-                writer.WriteLine("    pb::IRpcController controller,");
-                writer.WriteLine("    {0} request,", GetClassName(method.InputType));
-                writer.WriteLine("    global::System.Action<{0}> done) {{", GetClassName(method.OutputType));
-                writer.Indent();
-                writer.WriteLine("channel.CallMethod(Descriptor.Methods[{0}],", method.Index);
-                writer.WriteLine("    controller, request, {0}.DefaultInstance,", GetClassName(method.OutputType));
-                writer.WriteLine("    pb::RpcUtil.GeneralizeCallback<{0}, {0}.Builder>(done, {0}.DefaultInstance));",
-                                 GetClassName(method.OutputType));
-                writer.Outdent();
-                writer.WriteLine("}");
-            }
-            writer.Outdent();
-            writer.WriteLine("}");
-        }
-    }
-}

+ 0 - 300
csharp/src/ProtoGen/ServiceInterfaceGenerator.cs

@@ -1,300 +0,0 @@
-#region Copyright notice and license
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://github.com/jskeet/dotnet-protobufs/
-// Original C++/Java/Python code:
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-#endregion
-
-using System;
-using Google.ProtocolBuffers.DescriptorProtos;
-using Google.ProtocolBuffers.Descriptors;
-
-namespace Google.ProtocolBuffers.ProtoGen
-{
-    internal class ServiceGenerator : SourceGeneratorBase<ServiceDescriptor>, ISourceGenerator
-    {
-        private readonly CSharpServiceType svcType;
-        private ISourceGenerator _generator;
-
-        internal ServiceGenerator(ServiceDescriptor descriptor)
-            : base(descriptor)
-        {
-            svcType = descriptor.File.CSharpOptions.ServiceGeneratorType;
-            switch (svcType)
-            {
-                case CSharpServiceType.NONE:
-                    _generator = new NoServicesGenerator(descriptor);
-                    break;
-                case CSharpServiceType.GENERIC:
-                    _generator = new GenericServiceGenerator(descriptor);
-                    break;
-                case CSharpServiceType.INTERFACE:
-                    _generator = new ServiceInterfaceGenerator(descriptor);
-                    break;
-                case CSharpServiceType.IRPCDISPATCH:
-                    _generator = new RpcServiceGenerator(descriptor);
-                    break;
-                default:
-                    throw new ApplicationException("Unknown ServiceGeneratorType = " + svcType.ToString());
-            }
-        }
-
-        public void Generate(TextGenerator writer)
-        {
-            _generator.Generate(writer);
-        }
-
-        private class NoServicesGenerator : SourceGeneratorBase<ServiceDescriptor>, ISourceGenerator
-        {
-            public NoServicesGenerator(ServiceDescriptor descriptor)
-                : base(descriptor)
-            {
-            }
-
-            public virtual void Generate(TextGenerator writer)
-            {
-                writer.WriteLine("/*");
-                writer.WriteLine("* Service generation is now disabled by default, use the following option to enable:");
-                writer.WriteLine("* option (google.protobuf.csharp_file_options).service_generator_type = GENERIC;");
-                writer.WriteLine("*/");
-            }
-        }
-
-        private class ServiceInterfaceGenerator : SourceGeneratorBase<ServiceDescriptor>, ISourceGenerator
-        {
-            public ServiceInterfaceGenerator(ServiceDescriptor descriptor)
-                : base(descriptor)
-            {
-            }
-
-            public virtual void Generate(TextGenerator writer)
-            {
-                CSharpServiceOptions options = Descriptor.Options.GetExtension(CSharpOptions.CsharpServiceOptions);
-                if (options != null && options.HasInterfaceId)
-                {
-                    writer.WriteLine("[global::System.Runtime.InteropServices.GuidAttribute(\"{0}\")]",
-                                     new Guid(options.InterfaceId));
-                }
-                WriteGeneratedCodeAttributes(writer);
-                writer.WriteLine("{0} partial interface I{1} {{", ClassAccessLevel, Descriptor.Name);
-                writer.Indent();
-
-                foreach (MethodDescriptor method in Descriptor.Methods)
-                {
-                    CSharpMethodOptions mth = method.Options.GetExtension(CSharpOptions.CsharpMethodOptions);
-                    if (mth.HasDispatchId)
-                    {
-                        writer.WriteLine("[global::System.Runtime.InteropServices.DispId({0})]", mth.DispatchId);
-                    }
-                    writer.WriteLine("{0} {1}({2} {3});", GetClassName(method.OutputType),
-                                     NameHelpers.UnderscoresToPascalCase(method.Name), GetClassName(method.InputType),
-                                     NameHelpers.UnderscoresToCamelCase(method.InputType.Name));
-                }
-
-                writer.Outdent();
-                writer.WriteLine("}");
-            }
-        }
-
-        private class RpcServiceGenerator : ServiceInterfaceGenerator
-        {
-            public RpcServiceGenerator(ServiceDescriptor descriptor)
-                : base(descriptor)
-            {
-            }
-
-            public override void Generate(TextGenerator writer)
-            {
-                base.Generate(writer);
-
-                writer.WriteLine();
-
-                // CLIENT Proxy
-                {
-                    if (Descriptor.File.CSharpOptions.ClsCompliance)
-                    {
-                        writer.WriteLine("[global::System.CLSCompliant(false)]");
-                    }
-                    writer.WriteLine("[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]");
-                    WriteGeneratedCodeAttributes(writer);
-                    writer.WriteLine("{0} partial class {1} : I{1}, pb::IRpcDispatch, global::System.IDisposable {{",
-                                     ClassAccessLevel, Descriptor.Name);
-                    writer.Indent();
-                    writer.WriteLine("private readonly bool dispose;");
-                    writer.WriteLine("private readonly pb::IRpcDispatch dispatch;");
-
-                    writer.WriteLine("public {0}(pb::IRpcDispatch dispatch) : this(dispatch, true) {{", Descriptor.Name);
-                    writer.WriteLine("}");
-                    writer.WriteLine("public {0}(pb::IRpcDispatch dispatch, bool dispose) {{", Descriptor.Name);
-                    writer.WriteLine("  pb::ThrowHelper.ThrowIfNull(this.dispatch = dispatch, \"dispatch\");");
-                    writer.WriteLine("  this.dispose = dispose && dispatch is global::System.IDisposable;");
-                    writer.WriteLine("}");
-                    writer.WriteLine();
-
-                    writer.WriteLine("public void Dispose() {");
-                    writer.WriteLine("  if (dispose) ((global::System.IDisposable)dispatch).Dispose();");
-                    writer.WriteLine("}");
-                    writer.WriteLine();
-                    writer.WriteLine(
-                        "TMessage pb::IRpcDispatch.CallMethod<TMessage, TBuilder>(string method, pb::IMessageLite request, pb::IBuilderLite<TMessage, TBuilder> response) {");
-                    writer.WriteLine("  return dispatch.CallMethod(method, request, response);");
-                    writer.WriteLine("}");
-                    writer.WriteLine();
-
-                    foreach (MethodDescriptor method in Descriptor.Methods)
-                    {
-                        writer.WriteLine("public {0} {1}({2} {3}) {{", GetClassName(method.OutputType),
-                                         NameHelpers.UnderscoresToPascalCase(method.Name),
-                                         GetClassName(method.InputType),
-                                         NameHelpers.UnderscoresToCamelCase(method.InputType.Name));
-                        writer.WriteLine("   return dispatch.CallMethod(\"{0}\", {1}, {2}.CreateBuilder());",
-                                         method.Name,
-                                         NameHelpers.UnderscoresToCamelCase(method.InputType.Name),
-                                         GetClassName(method.OutputType)
-                            );
-                        writer.WriteLine("}");
-                        writer.WriteLine();
-                    }
-                }
-                // SERVER - DISPATCH
-                {
-                    if (Descriptor.File.CSharpOptions.ClsCompliance)
-                    {
-                        writer.WriteLine("[global::System.CLSCompliant(false)]");
-                    }
-                    writer.WriteLine("[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]");
-                    WriteGeneratedCodeAttributes(writer);
-                    writer.WriteLine("public partial class Dispatch : pb::IRpcDispatch, global::System.IDisposable {");
-                    writer.Indent();
-                    writer.WriteLine("private readonly bool dispose;");
-                    writer.WriteLine("private readonly I{0} implementation;", Descriptor.Name);
-
-                    writer.WriteLine("public Dispatch(I{0} implementation) : this(implementation, true) {{",
-                                     Descriptor.Name);
-                    writer.WriteLine("}");
-                    writer.WriteLine("public Dispatch(I{0} implementation, bool dispose) {{", Descriptor.Name);
-                    writer.WriteLine("  pb::ThrowHelper.ThrowIfNull(this.implementation = implementation, \"implementation\");");
-                    writer.WriteLine("  this.dispose = dispose && implementation is global::System.IDisposable;");
-                    writer.WriteLine("}");
-                    writer.WriteLine();
-
-                    writer.WriteLine("public void Dispose() {");
-                    writer.WriteLine("  if (dispose) ((global::System.IDisposable)implementation).Dispose();");
-                    writer.WriteLine("}");
-                    writer.WriteLine();
-
-                    writer.WriteLine(
-                        "public TMessage CallMethod<TMessage, TBuilder>(string methodName, pb::IMessageLite request, pb::IBuilderLite<TMessage, TBuilder> response)");
-                    writer.WriteLine("  where TMessage : pb::IMessageLite<TMessage, TBuilder>");
-                    writer.WriteLine("  where TBuilder : pb::IBuilderLite<TMessage, TBuilder> {");
-                    writer.Indent();
-                    writer.WriteLine("switch(methodName) {");
-                    writer.Indent();
-
-                    foreach (MethodDescriptor method in Descriptor.Methods)
-                    {
-                        writer.WriteLine(
-                            "case \"{0}\": return response.MergeFrom(implementation.{1}(({2})request)).Build();",
-                            method.Name, NameHelpers.UnderscoresToPascalCase(method.Name),
-                            GetClassName(method.InputType));
-                    }
-                    writer.WriteLine("default: throw pb::ThrowHelper.CreateMissingMethod(typeof(I{0}), methodName);", Descriptor.Name);
-                    writer.Outdent();
-                    writer.WriteLine("}"); //end switch
-                    writer.Outdent();
-                    writer.WriteLine("}"); //end invoke
-                    writer.Outdent();
-                    writer.WriteLine("}"); //end server
-                }
-                // SERVER - STUB
-                {
-                    if (Descriptor.File.CSharpOptions.ClsCompliance)
-                    {
-                        writer.WriteLine("[global::System.CLSCompliant(false)]");
-                    }
-                    writer.WriteLine("[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]");
-                    WriteGeneratedCodeAttributes(writer);
-                    writer.WriteLine(
-                        "public partial class ServerStub : pb::IRpcServerStub, global::System.IDisposable {");
-                    writer.Indent();
-                    writer.WriteLine("private readonly bool dispose;");
-                    writer.WriteLine("private readonly pb::IRpcDispatch implementation;", Descriptor.Name);
-
-                    writer.WriteLine("public ServerStub(I{0} implementation) : this(implementation, true) {{",
-                                     Descriptor.Name);
-                    writer.WriteLine("}");
-                    writer.WriteLine(
-                        "public ServerStub(I{0} implementation, bool dispose) : this(new Dispatch(implementation, dispose), dispose) {{",
-                        Descriptor.Name);
-                    writer.WriteLine("}");
-
-                    writer.WriteLine("public ServerStub(pb::IRpcDispatch implementation) : this(implementation, true) {");
-                    writer.WriteLine("}");
-                    writer.WriteLine("public ServerStub(pb::IRpcDispatch implementation, bool dispose) {");
-                    writer.WriteLine("  pb::ThrowHelper.ThrowIfNull(this.implementation = implementation, \"implementation\");");
-                    writer.WriteLine("  this.dispose = dispose && implementation is global::System.IDisposable;");
-                    writer.WriteLine("}");
-                    writer.WriteLine();
-
-                    writer.WriteLine("public void Dispose() {");
-                    writer.WriteLine("  if (dispose) ((global::System.IDisposable)implementation).Dispose();");
-                    writer.WriteLine("}");
-                    writer.WriteLine();
-
-                    writer.WriteLine(
-                        "public pb::IMessageLite CallMethod(string methodName, pb::ICodedInputStream input, pb::ExtensionRegistry registry) {{",
-                        Descriptor.Name);
-                    writer.Indent();
-                    writer.WriteLine("switch(methodName) {");
-                    writer.Indent();
-
-                    foreach (MethodDescriptor method in Descriptor.Methods)
-                    {
-                        writer.WriteLine(
-                            "case \"{0}\": return implementation.CallMethod(methodName, {1}.ParseFrom(input, registry), {2}.CreateBuilder());",
-                            method.Name, GetClassName(method.InputType), GetClassName(method.OutputType));
-                    }
-                    writer.WriteLine("default: throw pb::ThrowHelper.CreateMissingMethod(typeof(I{0}), methodName);", Descriptor.Name);
-                    writer.Outdent();
-                    writer.WriteLine("}"); //end switch
-                    writer.Outdent();
-                    writer.WriteLine("}"); //end invoke
-                    writer.Outdent();
-                    writer.WriteLine("}"); //end server
-                }
-
-                writer.Outdent();
-                writer.WriteLine("}");
-            }
-        }
-    }
-}

+ 0 - 167
csharp/src/ProtoGen/SourceGeneratorBase.cs

@@ -1,167 +0,0 @@
-#region Copyright notice and license
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://github.com/jskeet/dotnet-protobufs/
-// Original C++/Java/Python code:
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-#endregion
-
-using System.Collections.Generic;
-using Google.ProtocolBuffers.DescriptorProtos;
-using Google.ProtocolBuffers.Descriptors;
-
-namespace Google.ProtocolBuffers.ProtoGen
-{
-    internal abstract class SourceGeneratorBase<T> where T : IDescriptor
-    {
-        private readonly T descriptor;
-
-        protected readonly bool OptimizeSpeed;
-        protected readonly bool OptimizeSize;
-        protected readonly bool UseLiteRuntime;
-        protected readonly string RuntimeSuffix;
-
-        protected SourceGeneratorBase(T descriptor)
-        {
-            this.descriptor = descriptor;
-
-            OptimizeSize = descriptor.File.Options.OptimizeFor ==
-                           FileOptions.Types.OptimizeMode.CODE_SIZE;
-            OptimizeSpeed = descriptor.File.Options.OptimizeFor ==
-                            FileOptions.Types.OptimizeMode.SPEED;
-            UseLiteRuntime = descriptor.File.Options.OptimizeFor ==
-                             FileOptions.Types.OptimizeMode.LITE_RUNTIME;
-            //Lite runtime uses OptimizeSpeed code branches
-            OptimizeSpeed |= UseLiteRuntime;
-            RuntimeSuffix = UseLiteRuntime ? "Lite" : "";
-        }
-
-        protected T Descriptor
-        {
-            get { return descriptor; }
-        }
-
-        internal static string GetClassName(IDescriptor descriptor)
-        {
-            return ToCSharpName(descriptor.FullName, descriptor.File);
-        }
-
-        // Groups are hacky:  The name of the field is just the lower-cased name
-        // of the group type.  In C#, though, we would like to retain the original
-        // capitalization of the type name.
-        internal static string GetFieldName(FieldDescriptor descriptor)
-        {
-            if (descriptor.FieldType == FieldType.Group)
-            {
-                return descriptor.MessageType.Name;
-            }
-            else
-            {
-                return descriptor.Name;
-            }
-        }
-
-        internal static string GetFieldConstantName(FieldDescriptor field)
-        {
-            return field.CSharpOptions.PropertyName + "FieldNumber";
-        }
-
-        private static string ToCSharpName(string name, FileDescriptor file)
-        {
-            string result = file.CSharpOptions.Namespace;
-            if (file.CSharpOptions.NestClasses)
-            {
-                if (result != "")
-                {
-                    result += ".";
-                }
-                result += file.CSharpOptions.UmbrellaClassname;
-            }
-            if (result != "")
-            {
-                result += '.';
-            }
-            string classname;
-            if (file.Package == "")
-            {
-                classname = name;
-            }
-            else
-            {
-                // Strip the proto package from full_name since we've replaced it with
-                // the C# namespace.
-                classname = name.Substring(file.Package.Length + 1);
-            }
-            result += classname.Replace(".", ".Types.");
-            return "global::" + result;
-        }
-
-        protected string ClassAccessLevel
-        {
-            get { return descriptor.File.CSharpOptions.PublicClasses ? "public" : "internal"; }
-        }
-
-        protected void WriteGeneratedCodeAttributes(TextGenerator writer)
-        {
-            if (descriptor.File.CSharpOptions.GeneratedCodeAttributes)
-            {
-                writer.WriteLine("[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]");
-                writer.WriteLine("[global::System.CodeDom.Compiler.GeneratedCodeAttribute(\"{0}\", \"{1}\")]",
-                                 GetType().Assembly.GetName().Name, GetType().Assembly.GetName().Version);
-            }
-        }
-
-        protected void WriteChildren<TChild>(TextGenerator writer, string region, IEnumerable<TChild> children)
-            where TChild : IDescriptor
-        {
-            // Copy the set of children; makes access easier
-            List<TChild> copy = new List<TChild>(children);
-            if (copy.Count == 0)
-            {
-                return;
-            }
-
-            if (region != null)
-            {
-                writer.WriteLine("#region {0}", region);
-            }
-            foreach (TChild child in children)
-            {
-                SourceGenerators.CreateGenerator(child).Generate(writer);
-            }
-            if (region != null)
-            {
-                writer.WriteLine("#endregion");
-                writer.WriteLine();
-            }
-        }
-    }
-}

+ 0 - 87
csharp/src/ProtoGen/SourceGenerators.cs

@@ -1,87 +0,0 @@
-#region Copyright notice and license
-
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://github.com/jskeet/dotnet-protobufs/
-// Original C++/Java/Python code:
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-
-#endregion
-
-using System;
-using System.Collections.Generic;
-using Google.ProtocolBuffers.Descriptors;
-
-namespace Google.ProtocolBuffers.ProtoGen
-{
-    public delegate TResult Func<T, TResult>(T arg);
-
-    internal static class SourceGenerators
-    {
-        private static readonly Dictionary<Type, Func<IDescriptor, ISourceGenerator>> GeneratorFactories =
-            new Dictionary<Type, Func<IDescriptor, ISourceGenerator>>
-                {
-                    {typeof(FileDescriptor), descriptor => new UmbrellaClassGenerator((FileDescriptor) descriptor)},
-                    {typeof(EnumDescriptor), descriptor => new EnumGenerator((EnumDescriptor) descriptor)},
-                    {typeof(ServiceDescriptor), descriptor => new ServiceGenerator((ServiceDescriptor) descriptor)},
-                    {typeof(MessageDescriptor), descriptor => new MessageGenerator((MessageDescriptor) descriptor)},
-                    // For other fields, we have IFieldSourceGenerators.
-                    {typeof(FieldDescriptor), descriptor => new ExtensionGenerator((FieldDescriptor) descriptor)}
-                };
-
-        public static IFieldSourceGenerator CreateFieldGenerator(FieldDescriptor field, int fieldOrdinal)
-        {
-            switch (field.MappedType)
-            {
-                case MappedType.Message:
-                    return field.IsRepeated
-                               ? (IFieldSourceGenerator) new RepeatedMessageFieldGenerator(field, fieldOrdinal)
-                               : new MessageFieldGenerator(field, fieldOrdinal);
-                case MappedType.Enum:
-                    return field.IsRepeated
-                               ? (IFieldSourceGenerator) new RepeatedEnumFieldGenerator(field, fieldOrdinal)
-                               : new EnumFieldGenerator(field, fieldOrdinal);
-                default:
-                    return field.IsRepeated
-                               ? (IFieldSourceGenerator) new RepeatedPrimitiveFieldGenerator(field, fieldOrdinal)
-                               : new PrimitiveFieldGenerator(field, fieldOrdinal);
-            }
-        }
-
-        public static ISourceGenerator CreateGenerator<T>(T descriptor) where T : IDescriptor
-        {
-            Func<IDescriptor, ISourceGenerator> factory;
-            if (!GeneratorFactories.TryGetValue(typeof(T), out factory))
-            {
-                throw new ArgumentException("No generator registered for " + typeof(T).Name);
-            }
-            return factory(descriptor);
-        }
-    }
-}

+ 0 - 294
csharp/src/ProtoGen/UmbrellaClassGenerator.cs

@@ -1,294 +0,0 @@
-// Protocol Buffers - Google's data interchange format
-// Copyright 2008 Google Inc.  All rights reserved.
-// http://github.com/jskeet/dotnet-protobufs/
-// Original C++/Java/Python code:
-// http://code.google.com/p/protobuf/
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are
-// met:
-//
-//     * Redistributions of source code must retain the above copyright
-// notice, this list of conditions and the following disclaimer.
-//     * Redistributions in binary form must reproduce the above
-// copyright notice, this list of conditions and the following disclaimer
-// in the documentation and/or other materials provided with the
-// distribution.
-//     * Neither the name of Google Inc. nor the names of its
-// contributors may be used to endorse or promote products derived from
-// this software without specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
-// "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
-// LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
-// A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
-// OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
-// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
-// LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
-// DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
-// THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
-// (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
-// OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-using System;
-using System.Collections;
-using System.Collections.Generic;
-using Google.ProtocolBuffers.Descriptors;
-
-namespace Google.ProtocolBuffers.ProtoGen
-{
-    /// <summary>
-    /// Generator for the class describing the .proto file in general,
-    /// containing things like the message descriptor.
-    /// </summary>
-    internal sealed class UmbrellaClassGenerator : SourceGeneratorBase<FileDescriptor>, ISourceGenerator
-    {
-        internal UmbrellaClassGenerator(FileDescriptor descriptor)
-            : base(descriptor)
-        {
-        }
-
-        // Recursively searches the given message to see if it contains any extensions.
-        private static bool UsesExtensions(IMessage message)
-        {
-            // We conservatively assume that unknown fields are extensions.
-            if (message.UnknownFields.FieldDictionary.Count > 0)
-            {
-                return true;
-            }
-
-            foreach (KeyValuePair<FieldDescriptor, object> keyValue in message.AllFields)
-            {
-                FieldDescriptor field = keyValue.Key;
-                if (field.IsExtension)
-                {
-                    return true;
-                }
-                if (field.MappedType == MappedType.Message)
-                {
-                    if (field.IsRepeated)
-                    {
-                        foreach (IMessage subMessage in (IEnumerable) keyValue.Value)
-                        {
-                            if (UsesExtensions(subMessage))
-                            {
-                                return true;
-                            }
-                        }
-                    }
-                    else
-                    {
-                        if (UsesExtensions((IMessage) keyValue.Value))
-                        {
-                            return true;
-                        }
-                    }
-                }
-            }
-            return false;
-        }
-
-        public void Generate(TextGenerator writer)
-        {
-            WriteIntroduction(writer);
-            WriteExtensionRegistration(writer);
-            WriteChildren(writer, "Extensions", Descriptor.Extensions);
-            writer.WriteLine("#region Static variables");
-            foreach (MessageDescriptor message in Descriptor.MessageTypes)
-            {
-                new MessageGenerator(message).GenerateStaticVariables(writer);
-            }
-            writer.WriteLine("#endregion");
-            if (!UseLiteRuntime)
-            {
-                WriteDescriptor(writer);
-            }
-            else
-            {
-                WriteLiteExtensions(writer);
-            }
-            // The class declaration either gets closed before or after the children are written.
-            if (!Descriptor.CSharpOptions.NestClasses)
-            {
-                writer.Outdent();
-                writer.WriteLine("}");
-
-                // Close the namespace around the umbrella class if defined
-                if (!Descriptor.CSharpOptions.NestClasses && Descriptor.CSharpOptions.UmbrellaNamespace != "")
-                {
-                    writer.Outdent();
-                    writer.WriteLine("}");
-                }
-            }
-            WriteChildren(writer, "Enums", Descriptor.EnumTypes);
-            WriteChildren(writer, "Messages", Descriptor.MessageTypes);
-            WriteChildren(writer, "Services", Descriptor.Services);
-            if (Descriptor.CSharpOptions.NestClasses)
-            {
-                writer.Outdent();
-                writer.WriteLine("}");
-            }
-            if (Descriptor.CSharpOptions.Namespace != "")
-            {
-                writer.Outdent();
-                writer.WriteLine("}");
-            }
-            writer.WriteLine();
-            writer.WriteLine("#endregion Designer generated code");
-        }
-
-        private void WriteIntroduction(TextGenerator writer)
-        {
-            writer.WriteLine("// Generated by {0}.  DO NOT EDIT!", this.GetType().Assembly.FullName);
-            writer.WriteLine("#pragma warning disable 1591, 0612, 3021");
-            writer.WriteLine("#region Designer generated code");
-
-            writer.WriteLine();
-            writer.WriteLine("using pb = global::Google.ProtocolBuffers;");
-            writer.WriteLine("using pbc = global::Google.ProtocolBuffers.Collections;");
-            writer.WriteLine("using pbd = global::Google.ProtocolBuffers.Descriptors;");
-            writer.WriteLine("using scg = global::System.Collections.Generic;");
-
-            if (Descriptor.CSharpOptions.Namespace != "")
-            {
-                writer.WriteLine("namespace {0} {{", Descriptor.CSharpOptions.Namespace);
-                writer.Indent();
-                writer.WriteLine();
-            }
-            // Add the namespace around the umbrella class if defined
-            if (!Descriptor.CSharpOptions.NestClasses && Descriptor.CSharpOptions.UmbrellaNamespace != "")
-            {
-                writer.WriteLine("namespace {0} {{", Descriptor.CSharpOptions.UmbrellaNamespace);
-                writer.Indent();
-                writer.WriteLine();
-            }
-
-            if (Descriptor.CSharpOptions.CodeContracts)
-            {
-                writer.WriteLine("[global::System.Diagnostics.Contracts.ContractVerificationAttribute(false)]");
-            }
-            writer.WriteLine("[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]");
-            WriteGeneratedCodeAttributes(writer);
-            writer.WriteLine("{0} static partial class {1} {{", ClassAccessLevel,
-                             Descriptor.CSharpOptions.UmbrellaClassname);
-            writer.WriteLine();
-            writer.Indent();
-        }
-
-        private void WriteExtensionRegistration(TextGenerator writer)
-        {
-            writer.WriteLine("#region Extension registration");
-            writer.WriteLine("public static void RegisterAllExtensions(pb::ExtensionRegistry registry) {");
-            writer.Indent();
-            foreach (FieldDescriptor extension in Descriptor.Extensions)
-            {
-                new ExtensionGenerator(extension).GenerateExtensionRegistrationCode(writer);
-            }
-            foreach (MessageDescriptor message in Descriptor.MessageTypes)
-            {
-                new MessageGenerator(message).GenerateExtensionRegistrationCode(writer);
-            }
-            writer.Outdent();
-            writer.WriteLine("}");
-            writer.WriteLine("#endregion");
-        }
-
-        private void WriteDescriptor(TextGenerator writer)
-        {
-            writer.WriteLine("#region Descriptor");
-
-            writer.WriteLine("public static pbd::FileDescriptor Descriptor {");
-            writer.WriteLine("  get { return descriptor; }");
-            writer.WriteLine("}");
-            writer.WriteLine("private static pbd::FileDescriptor descriptor;");
-            writer.WriteLine();
-            writer.WriteLine("static {0}() {{", Descriptor.CSharpOptions.UmbrellaClassname);
-            writer.Indent();
-            writer.WriteLine("byte[] descriptorData = global::System.Convert.FromBase64String(");
-            writer.Indent();
-            writer.Indent();
-            writer.WriteLine("string.Concat(");
-            writer.Indent();
-            // TODO(jonskeet): Consider a C#-escaping format here instead of just Base64.
-            byte[] bytes = Descriptor.Proto.ToByteArray();
-            string base64 = Convert.ToBase64String(bytes);
-
-            while (base64.Length > 60)
-            {
-                writer.WriteLine("\"{0}\", ", base64.Substring(0, 60));
-                base64 = base64.Substring(60);
-            }
-            writer.Outdent();
-            writer.WriteLine("\"{0}\"));", base64);
-            writer.Outdent();
-            writer.Outdent();
-            writer.WriteLine(
-                "pbd::FileDescriptor.InternalDescriptorAssigner assigner = delegate(pbd::FileDescriptor root) {");
-            writer.Indent();
-            writer.WriteLine("descriptor = root;");
-            foreach (MessageDescriptor message in Descriptor.MessageTypes)
-            {
-                new MessageGenerator(message).GenerateStaticVariableInitializers(writer);
-            }
-            foreach (FieldDescriptor extension in Descriptor.Extensions)
-            {
-                new ExtensionGenerator(extension).GenerateStaticVariableInitializers(writer);
-            }
-
-            if (UsesExtensions(Descriptor.Proto))
-            {
-                // Must construct an ExtensionRegistry containing all possible extensions
-                // and return it.
-                writer.WriteLine("pb::ExtensionRegistry registry = pb::ExtensionRegistry.CreateInstance();");
-                writer.WriteLine("RegisterAllExtensions(registry);");
-                foreach (FileDescriptor dependency in Descriptor.Dependencies)
-                {
-                    writer.WriteLine("{0}.RegisterAllExtensions(registry);",
-                                     DescriptorUtil.GetFullUmbrellaClassName(dependency));
-                }
-                writer.WriteLine("return registry;");
-            }
-            else
-            {
-                writer.WriteLine("return null;");
-            }
-            writer.Outdent();
-            writer.WriteLine("};");
-
-            // -----------------------------------------------------------------
-            // Invoke internalBuildGeneratedFileFrom() to build the file.
-            writer.WriteLine("pbd::FileDescriptor.InternalBuildGeneratedFileFrom(descriptorData,");
-            writer.WriteLine("    new pbd::FileDescriptor[] {");
-            foreach (FileDescriptor dependency in Descriptor.Dependencies)
-            {
-                writer.WriteLine("    {0}.Descriptor, ", DescriptorUtil.GetFullUmbrellaClassName(dependency));
-            }
-            writer.WriteLine("    }, assigner);");
-            writer.Outdent();
-            writer.WriteLine("}");
-            writer.WriteLine("#endregion");
-            writer.WriteLine();
-        }
-
-        private void WriteLiteExtensions(TextGenerator writer)
-        {
-            writer.WriteLine("#region Extensions");
-            writer.WriteLine("internal static readonly object Descriptor;");
-            writer.WriteLine("static {0}() {{", Descriptor.CSharpOptions.UmbrellaClassname);
-            writer.Indent();
-            writer.WriteLine("Descriptor = null;");
-
-            foreach (MessageDescriptor message in Descriptor.MessageTypes)
-            {
-                new MessageGenerator(message).GenerateStaticVariableInitializers(writer);
-            }
-            foreach (FieldDescriptor extension in Descriptor.Extensions)
-            {
-                new ExtensionGenerator(extension).GenerateStaticVariableInitializers(writer);
-            }
-            writer.Outdent();
-            writer.WriteLine("}");
-            writer.WriteLine("#endregion");
-            writer.WriteLine();
-        }
-    }
-}

+ 0 - 7
csharp/src/ProtoGen/app.config

@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="utf-8" ?>
-<configuration>
-  <startup useLegacyV2RuntimeActivationPolicy="true">
-    <supportedRuntime version="v2.0.50727" />
-    <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0,Profile=Client" />
-  </startup>
-</configuration>

+ 0 - 101
csharp/src/ProtoGen/protoc-gen-cs.csproj

@@ -1,101 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup>
-    <EnvironmentFlavor>CLIENTPROFILE</EnvironmentFlavor>
-    <EnvironmentTemplate>NET35</EnvironmentTemplate>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.30729</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{250ADE34-82FD-4BAE-86D5-985FBE589C4B}</ProjectGuid>
-    <OutputType>Exe</OutputType>
-    <AppDesignerFolder>Properties</AppDesignerFolder>
-    <RootNamespace>Google.ProtocolBuffers.ProtoGen</RootNamespace>
-    <AssemblyName>protoc-gen-cs</AssemblyName>
-    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
-    <FileAlignment>512</FileAlignment>
-    <SignAssembly>true</SignAssembly>
-    <AssemblyOriginatorKeyFile>..\..\keys\Google.ProtocolBuffers.snk</AssemblyOriginatorKeyFile>
-    <StartupObject>Google.ProtocolBuffers.ProtoGen.ProtocGenCs</StartupObject>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>bin\NET35\Debug</OutputPath>
-    <IntermediateOutputPath>obj\NET35\Debug\</IntermediateOutputPath>
-    <DefineConstants>DEBUG;TRACE</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>pdbonly</DebugType>
-    <Optimize>true</Optimize>
-    <OutputPath>bin\NET35\Release</OutputPath>
-    <IntermediateOutputPath>obj\NET35\Release\</IntermediateOutputPath>
-    <DefineConstants>TRACE</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <TreatWarningsAsErrors>true</TreatWarningsAsErrors>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="mscorlib" />
-    <Reference Include="System" />
-    <Reference Include="System.Data" />
-    <Reference Include="System.Xml" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="DescriptorUtil.cs" />
-    <Compile Include="EnumFieldGenerator.cs" />
-    <Compile Include="EnumGenerator.cs" />
-    <Compile Include="ExtensionGenerator.cs" />
-    <Compile Include="FieldGeneratorBase.cs" />
-    <Compile Include="IFieldSourceGenerator.cs" />
-    <Compile Include="ISourceGenerator.cs" />
-    <Compile Include="MessageFieldGenerator.cs" />
-    <Compile Include="MessageGenerator.cs" />
-    <Compile Include="PluginProtoFile.cs" />
-    <Compile Include="PrimitiveFieldGenerator.cs" />
-    <Compile Include="ProtocGenCs.cs" />
-    <Compile Include="RepeatedEnumFieldGenerator.cs" />
-    <Compile Include="RepeatedMessageFieldGenerator.cs" />
-    <Compile Include="RepeatedPrimitiveFieldGenerator.cs" />
-    <Compile Include="ServiceGenerator.cs" />
-    <Compile Include="DependencyResolutionException.cs" />
-    <Compile Include="Generator.cs" />
-    <Compile Include="GeneratorOptions.cs" />
-    <Compile Include="Helpers.cs" />
-    <Compile Include="InvalidOptionsException.cs" />
-    <Compile Include="Properties\AssemblyInfo.cs" />
-    <Compile Include="ServiceInterfaceGenerator.cs" />
-    <Compile Include="SourceGeneratorBase.cs" />
-    <Compile Include="SourceGenerators.cs" />
-    <Compile Include="UmbrellaClassGenerator.cs" />
-  </ItemGroup>
-  <ItemGroup>
-    <ProjectReference Include="..\ProtocolBuffers.Serialization\ProtocolBuffers.Serialization.csproj">
-      <Project>{231391af-449c-4a39-986c-ad7f270f4750}</Project>
-      <Name>ProtocolBuffers.Serialization</Name>
-    </ProjectReference>
-    <ProjectReference Include="..\ProtocolBuffers\ProtocolBuffers.csproj">
-      <Project>{6908BDCE-D925-43F3-94AC-A531E6DF2591}</Project>
-      <Name>ProtocolBuffers</Name>
-    </ProjectReference>
-  </ItemGroup>
-  <ItemGroup>
-    <None Include="app.config" />
-  </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 - 166
csharp/src/ProtocolBuffers/ProtocolBuffers.CF20.csproj

@@ -1,166 +0,0 @@
-<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup>
-    <EnvironmentFlavor>COMPACT_FRAMEWORK</EnvironmentFlavor>
-    <EnvironmentTemplate>CF20</EnvironmentTemplate>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.30729</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{6908BDCE-D925-43F3-94AC-A531E6DF2591}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <AppDesignerFolder>Properties</AppDesignerFolder>
-    <RootNamespace>Google.ProtocolBuffers</RootNamespace>
-    <AssemblyName>Google.ProtocolBuffers</AssemblyName>
-    <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
-    <FileAlignment>512</FileAlignment>
-    <SignAssembly>true</SignAssembly>
-    <AssemblyOriginatorKeyFile>..\..\keys\Google.ProtocolBuffers.snk</AssemblyOriginatorKeyFile>
-    <OldToolsVersion>3.5</OldToolsVersion>
-    <ProjectTypeGuids>{4D628B5B-2FBC-4AA6-8C16-197242AEB884};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
-    <PlatformFamilyName>Smartphone</PlatformFamilyName>
-    <PlatformID>f27da329-3269-4191-98e0-c87d3d7f1db9</PlatformID>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>bin\CF20\Debug</OutputPath>
-    <IntermediateOutputPath>obj\CF20\Debug\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>DEBUG;TRACE;$(EnvironmentFlavor);$(EnvironmentTemplate);NOSERIALIZABLE;NOFILEVERSION;NOEXTENSIONS</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-    <NoConfig>true</NoConfig>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>pdbonly</DebugType>
-    <Optimize>true</Optimize>
-    <OutputPath>bin\CF20\Release</OutputPath>
-    <IntermediateOutputPath>obj\CF20\Release\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>TRACE;$(EnvironmentFlavor);$(EnvironmentTemplate);NOSERIALIZABLE;NOFILEVERSION;NOEXTENSIONS</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-    <NoConfig>true</NoConfig>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="mscorlib" />
-    <Reference Include="System" />
-    <Reference Include="System.Xml" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="AbstractBuilder.cs" />
-    <Compile Include="AbstractBuilderLite.cs" />
-    <Compile Include="AbstractMessage.cs" />
-    <Compile Include="AbstractMessageLite.cs" />
-    <Compile Include="ByteArray.cs" />
-    <Compile Include="ByteString.cs" />
-    <Compile Include="Collections\Enumerables.cs" />
-    <Compile Include="Collections\IPopsicleList.cs" />
-    <Compile Include="Collections\PopsicleList.cs" />
-    <Compile Include="CodedOutputStream.ComputeSize.cs" />
-    <Compile Include="CustomSerialization.cs" />
-    <Compile Include="Delegates.cs" />
-    <Compile Include="CodedInputStream.cs" />
-    <Compile Include="CodedOutputStream.cs" />
-    <Compile Include="Collections\Dictionaries.cs" />
-    <Compile Include="Collections\Lists.cs" />
-    <Compile Include="Collections\ReadOnlyDictionary.cs" />
-    <Compile Include="DescriptorProtos\CSharpOptions.cs" />
-    <Compile Include="DescriptorProtos\DescriptorProtoFile.cs" />
-    <Compile Include="DescriptorProtos\IDescriptorProto.cs" />
-    <Compile Include="DescriptorProtos\PartialClasses.cs" />
-    <Compile Include="Descriptors\DescriptorBase.cs" />
-    <Compile Include="Descriptors\DescriptorPool.cs" />
-    <Compile Include="Descriptors\DescriptorUtil.cs" />
-    <Compile Include="Descriptors\DescriptorValidationException.cs" />
-    <Compile Include="Descriptors\EnumDescriptor.cs" />
-    <Compile Include="Descriptors\EnumValueDescriptor.cs" />
-    <Compile Include="Descriptors\FieldDescriptor.cs" />
-    <Compile Include="Descriptors\FieldMappingAttribute.cs" />
-    <Compile Include="Descriptors\FieldType.cs" />
-    <Compile Include="Descriptors\FileDescriptor.cs" />
-    <Compile Include="Descriptors\IDescriptor.cs" />
-    <Compile Include="Descriptors\IndexedDescriptorBase.cs" />
-    <Compile Include="Descriptors\MappedType.cs" />
-    <Compile Include="Descriptors\MessageDescriptor.cs" />
-    <Compile Include="Descriptors\MethodDescriptor.cs" />
-    <Compile Include="Descriptors\PackageDescriptor.cs" />
-    <Compile Include="Descriptors\ServiceDescriptor.cs" />
-    <Compile Include="DynamicMessage.cs" />
-    <Compile Include="EnumLite.cs" />
-    <Compile Include="ExtendableBuilder.cs" />
-    <Compile Include="ExtendableBuilderLite.cs" />
-    <Compile Include="ExtendableMessage.cs" />
-    <Compile Include="ExtendableMessageLite.cs" />
-    <Compile Include="ExtensionInfo.cs" />
-    <Compile Include="ExtensionRegistry.cs" />
-    <Compile Include="ExtensionRegistryLite.cs" />
-    <Compile Include="FieldAccess\ReflectionUtil.cs" />
-    <Compile Include="FieldAccess\SingleEnumAccessor.cs" />
-    <Compile Include="FieldAccess\SingleMessageAccessor.cs" />
-    <Compile Include="FieldAccess\SinglePrimitiveAccessor.cs" />
-    <Compile Include="FieldAccess\RepeatedPrimitiveAccessor.cs" />
-    <Compile Include="FieldAccess\RepeatedEnumAccessor.cs" />
-    <Compile Include="FieldAccess\IFieldAccessor.cs" />
-    <Compile Include="FieldAccess\FieldAccessorTable.cs" />
-    <Compile Include="FieldAccess\RepeatedMessageAccessor.cs" />
-    <Compile Include="FieldSet.cs" />
-    <Compile Include="FrameworkPortability.cs" />
-    <Compile Include="GeneratedBuilder.cs" />
-    <Compile Include="GeneratedBuilderLite.cs" />
-    <Compile Include="GeneratedExtensionLite.cs" />
-    <Compile Include="GeneratedMessageLite.cs" />
-    <Compile Include="GeneratedRepeatExtension.cs" />
-    <Compile Include="GeneratedSingleExtension.cs" />
-    <Compile Include="GeneratedMessage.cs" />
-    <Compile Include="IBuilder.cs" />
-    <Compile Include="GeneratedExtensionBase.cs" />
-    <Compile Include="IBuilderLite.cs" />
-    <Compile Include="ICodedInputStream.cs" />
-    <Compile Include="ICodedOutputStream.cs" />
-    <Compile Include="IMessage.cs" />
-    <Compile Include="IMessageLite.cs" />
-    <Compile Include="InvalidProtocolBufferException.cs" />
-    <Compile Include="IRpcChannel.cs" />
-    <Compile Include="IRpcController.cs" />
-    <Compile Include="IRpcDispatch.cs" />
-    <Compile Include="IService.cs" />
-    <Compile Include="MessageStreamIterator.cs" />
-    <Compile Include="MessageStreamWriter.cs" />
-    <Compile Include="MessageUtil.cs" />
-    <Compile Include="NameHelpers.cs" />
-    <Compile Include="Properties\AssemblyInfo.cs" />
-    <Compile Include="RpcUtil.cs" />
-    <Compile Include="SortedList.cs" />
-    <Compile Include="TextFormat.cs" />
-    <Compile Include="TextGenerator.cs" />
-    <Compile Include="TextTokenizer.cs" />
-    <Compile Include="ThrowHelper.cs" />
-    <Compile Include="UninitializedMessageException.cs" />
-    <Compile Include="UnknownField.cs" />
-    <Compile Include="UnknownFieldSet.cs" />
-    <Compile Include="WireFormat.cs" />
-  </ItemGroup>
-  <Import Project="$(MSBuildBinPath)\Microsoft.CompactFramework.CSharp.targets" />
-  <ProjectExtensions>
-    <VisualStudio>
-      <FlavorProperties GUID="{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}">
-        <HostingProcess disable="1" />
-      </FlavorProperties>
-    </VisualStudio>
-  </ProjectExtensions>
-  <!-- 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 - 167
csharp/src/ProtocolBuffers/ProtocolBuffers.CF35.csproj

@@ -1,167 +0,0 @@
-<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup>
-    <EnvironmentFlavor>COMPACT_FRAMEWORK</EnvironmentFlavor>
-    <EnvironmentTemplate>CF35</EnvironmentTemplate>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.30729</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{6908BDCE-D925-43F3-94AC-A531E6DF2591}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <AppDesignerFolder>Properties</AppDesignerFolder>
-    <RootNamespace>Google.ProtocolBuffers</RootNamespace>
-    <AssemblyName>Google.ProtocolBuffers</AssemblyName>
-    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
-    <FileAlignment>512</FileAlignment>
-    <SignAssembly>true</SignAssembly>
-    <AssemblyOriginatorKeyFile>..\..\keys\Google.ProtocolBuffers.snk</AssemblyOriginatorKeyFile>
-    <OldToolsVersion>3.5</OldToolsVersion>
-    <ProjectTypeGuids>{4D628B5B-2FBC-4AA6-8C16-197242AEB884};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
-    <PlatformFamilyName>Smartphone</PlatformFamilyName>
-    <PlatformID>f27da329-3269-4191-98e0-c87d3d7f1db9</PlatformID>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>bin\CF35\Debug</OutputPath>
-    <IntermediateOutputPath>obj\CF35\Debug\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>DEBUG;TRACE;$(EnvironmentFlavor);$(EnvironmentTemplate);NOSERIALIZABLE;NOFILEVERSION</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-    <NoConfig>true</NoConfig>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>pdbonly</DebugType>
-    <Optimize>true</Optimize>
-    <OutputPath>bin\CF35\Release</OutputPath>
-    <IntermediateOutputPath>obj\CF35\Release\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>TRACE;$(EnvironmentFlavor);$(EnvironmentTemplate);NOSERIALIZABLE;NOFILEVERSION</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-    <NoConfig>true</NoConfig>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="mscorlib" />
-    <Reference Include="System" />
-    <Reference Include="System.Xml" />
-    <Reference Include="System.Core" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="AbstractBuilder.cs" />
-    <Compile Include="AbstractBuilderLite.cs" />
-    <Compile Include="AbstractMessage.cs" />
-    <Compile Include="AbstractMessageLite.cs" />
-    <Compile Include="ByteArray.cs" />
-    <Compile Include="ByteString.cs" />
-    <Compile Include="Collections\Enumerables.cs" />
-    <Compile Include="Collections\IPopsicleList.cs" />
-    <Compile Include="Collections\PopsicleList.cs" />
-    <Compile Include="CodedOutputStream.ComputeSize.cs" />
-    <Compile Include="CustomSerialization.cs" />
-    <Compile Include="Delegates.cs" />
-    <Compile Include="CodedInputStream.cs" />
-    <Compile Include="CodedOutputStream.cs" />
-    <Compile Include="Collections\Dictionaries.cs" />
-    <Compile Include="Collections\Lists.cs" />
-    <Compile Include="Collections\ReadOnlyDictionary.cs" />
-    <Compile Include="DescriptorProtos\CSharpOptions.cs" />
-    <Compile Include="DescriptorProtos\DescriptorProtoFile.cs" />
-    <Compile Include="DescriptorProtos\IDescriptorProto.cs" />
-    <Compile Include="DescriptorProtos\PartialClasses.cs" />
-    <Compile Include="Descriptors\DescriptorBase.cs" />
-    <Compile Include="Descriptors\DescriptorPool.cs" />
-    <Compile Include="Descriptors\DescriptorUtil.cs" />
-    <Compile Include="Descriptors\DescriptorValidationException.cs" />
-    <Compile Include="Descriptors\EnumDescriptor.cs" />
-    <Compile Include="Descriptors\EnumValueDescriptor.cs" />
-    <Compile Include="Descriptors\FieldDescriptor.cs" />
-    <Compile Include="Descriptors\FieldMappingAttribute.cs" />
-    <Compile Include="Descriptors\FieldType.cs" />
-    <Compile Include="Descriptors\FileDescriptor.cs" />
-    <Compile Include="Descriptors\IDescriptor.cs" />
-    <Compile Include="Descriptors\IndexedDescriptorBase.cs" />
-    <Compile Include="Descriptors\MappedType.cs" />
-    <Compile Include="Descriptors\MessageDescriptor.cs" />
-    <Compile Include="Descriptors\MethodDescriptor.cs" />
-    <Compile Include="Descriptors\PackageDescriptor.cs" />
-    <Compile Include="Descriptors\ServiceDescriptor.cs" />
-    <Compile Include="DynamicMessage.cs" />
-    <Compile Include="EnumLite.cs" />
-    <Compile Include="ExtendableBuilder.cs" />
-    <Compile Include="ExtendableBuilderLite.cs" />
-    <Compile Include="ExtendableMessage.cs" />
-    <Compile Include="ExtendableMessageLite.cs" />
-    <Compile Include="ExtensionInfo.cs" />
-    <Compile Include="ExtensionRegistry.cs" />
-    <Compile Include="ExtensionRegistryLite.cs" />
-    <Compile Include="FieldAccess\ReflectionUtil.cs" />
-    <Compile Include="FieldAccess\SingleEnumAccessor.cs" />
-    <Compile Include="FieldAccess\SingleMessageAccessor.cs" />
-    <Compile Include="FieldAccess\SinglePrimitiveAccessor.cs" />
-    <Compile Include="FieldAccess\RepeatedPrimitiveAccessor.cs" />
-    <Compile Include="FieldAccess\RepeatedEnumAccessor.cs" />
-    <Compile Include="FieldAccess\IFieldAccessor.cs" />
-    <Compile Include="FieldAccess\FieldAccessorTable.cs" />
-    <Compile Include="FieldAccess\RepeatedMessageAccessor.cs" />
-    <Compile Include="FieldSet.cs" />
-    <Compile Include="FrameworkPortability.cs" />
-    <Compile Include="GeneratedBuilder.cs" />
-    <Compile Include="GeneratedBuilderLite.cs" />
-    <Compile Include="GeneratedExtensionLite.cs" />
-    <Compile Include="GeneratedMessageLite.cs" />
-    <Compile Include="GeneratedRepeatExtension.cs" />
-    <Compile Include="GeneratedSingleExtension.cs" />
-    <Compile Include="GeneratedMessage.cs" />
-    <Compile Include="IBuilder.cs" />
-    <Compile Include="GeneratedExtensionBase.cs" />
-    <Compile Include="IBuilderLite.cs" />
-    <Compile Include="ICodedInputStream.cs" />
-    <Compile Include="ICodedOutputStream.cs" />
-    <Compile Include="IMessage.cs" />
-    <Compile Include="IMessageLite.cs" />
-    <Compile Include="InvalidProtocolBufferException.cs" />
-    <Compile Include="IRpcChannel.cs" />
-    <Compile Include="IRpcController.cs" />
-    <Compile Include="IRpcDispatch.cs" />
-    <Compile Include="IService.cs" />
-    <Compile Include="MessageStreamIterator.cs" />
-    <Compile Include="MessageStreamWriter.cs" />
-    <Compile Include="MessageUtil.cs" />
-    <Compile Include="NameHelpers.cs" />
-    <Compile Include="Properties\AssemblyInfo.cs" />
-    <Compile Include="RpcUtil.cs" />
-    <Compile Include="SortedList.cs" />
-    <Compile Include="TextFormat.cs" />
-    <Compile Include="TextGenerator.cs" />
-    <Compile Include="TextTokenizer.cs" />
-    <Compile Include="ThrowHelper.cs" />
-    <Compile Include="UninitializedMessageException.cs" />
-    <Compile Include="UnknownField.cs" />
-    <Compile Include="UnknownFieldSet.cs" />
-    <Compile Include="WireFormat.cs" />
-  </ItemGroup>
-  <Import Project="$(MSBuildBinPath)\Microsoft.CompactFramework.CSharp.targets" />
-  <ProjectExtensions>
-    <VisualStudio>
-      <FlavorProperties GUID="{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}">
-        <HostingProcess disable="1" />
-      </FlavorProperties>
-    </VisualStudio>
-  </ProjectExtensions>
-  <!-- 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 - 154
csharp/src/ProtocolBuffers/ProtocolBuffers.NET20.csproj

@@ -1,154 +0,0 @@
-<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup>
-    <EnvironmentFlavor>CLIENTPROFILE</EnvironmentFlavor>
-    <EnvironmentTemplate>NET20</EnvironmentTemplate>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.30729</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{6908BDCE-D925-43F3-94AC-A531E6DF2591}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <AppDesignerFolder>Properties</AppDesignerFolder>
-    <RootNamespace>Google.ProtocolBuffers</RootNamespace>
-    <AssemblyName>Google.ProtocolBuffers</AssemblyName>
-    <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
-    <FileAlignment>512</FileAlignment>
-    <SignAssembly>true</SignAssembly>
-    <AssemblyOriginatorKeyFile>..\..\keys\Google.ProtocolBuffers.snk</AssemblyOriginatorKeyFile>
-    <OldToolsVersion>3.5</OldToolsVersion>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>bin\NET20\Debug</OutputPath>
-    <IntermediateOutputPath>obj\NET20\Debug\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>DEBUG;TRACE;$(EnvironmentFlavor);$(EnvironmentTemplate);NOEXTENSIONS</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>pdbonly</DebugType>
-    <Optimize>true</Optimize>
-    <OutputPath>bin\NET20\Release</OutputPath>
-    <IntermediateOutputPath>obj\NET20\Release\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>TRACE;$(EnvironmentFlavor);$(EnvironmentTemplate);NOEXTENSIONS</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="mscorlib" />
-    <Reference Include="System" />
-    <Reference Include="System.Xml" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="AbstractBuilder.cs" />
-    <Compile Include="AbstractBuilderLite.cs" />
-    <Compile Include="AbstractMessage.cs" />
-    <Compile Include="AbstractMessageLite.cs" />
-    <Compile Include="ByteArray.cs" />
-    <Compile Include="ByteString.cs" />
-    <Compile Include="Collections\Enumerables.cs" />
-    <Compile Include="Collections\IPopsicleList.cs" />
-    <Compile Include="Collections\PopsicleList.cs" />
-    <Compile Include="CodedOutputStream.ComputeSize.cs" />
-    <Compile Include="CustomSerialization.cs" />
-    <Compile Include="Delegates.cs" />
-    <Compile Include="CodedInputStream.cs" />
-    <Compile Include="CodedOutputStream.cs" />
-    <Compile Include="Collections\Dictionaries.cs" />
-    <Compile Include="Collections\Lists.cs" />
-    <Compile Include="Collections\ReadOnlyDictionary.cs" />
-    <Compile Include="DescriptorProtos\CSharpOptions.cs" />
-    <Compile Include="DescriptorProtos\DescriptorProtoFile.cs" />
-    <Compile Include="DescriptorProtos\IDescriptorProto.cs" />
-    <Compile Include="DescriptorProtos\PartialClasses.cs" />
-    <Compile Include="Descriptors\DescriptorBase.cs" />
-    <Compile Include="Descriptors\DescriptorPool.cs" />
-    <Compile Include="Descriptors\DescriptorUtil.cs" />
-    <Compile Include="Descriptors\DescriptorValidationException.cs" />
-    <Compile Include="Descriptors\EnumDescriptor.cs" />
-    <Compile Include="Descriptors\EnumValueDescriptor.cs" />
-    <Compile Include="Descriptors\FieldDescriptor.cs" />
-    <Compile Include="Descriptors\FieldMappingAttribute.cs" />
-    <Compile Include="Descriptors\FieldType.cs" />
-    <Compile Include="Descriptors\FileDescriptor.cs" />
-    <Compile Include="Descriptors\IDescriptor.cs" />
-    <Compile Include="Descriptors\IndexedDescriptorBase.cs" />
-    <Compile Include="Descriptors\MappedType.cs" />
-    <Compile Include="Descriptors\MessageDescriptor.cs" />
-    <Compile Include="Descriptors\MethodDescriptor.cs" />
-    <Compile Include="Descriptors\PackageDescriptor.cs" />
-    <Compile Include="Descriptors\ServiceDescriptor.cs" />
-    <Compile Include="DynamicMessage.cs" />
-    <Compile Include="EnumLite.cs" />
-    <Compile Include="ExtendableBuilder.cs" />
-    <Compile Include="ExtendableBuilderLite.cs" />
-    <Compile Include="ExtendableMessage.cs" />
-    <Compile Include="ExtendableMessageLite.cs" />
-    <Compile Include="ExtensionInfo.cs" />
-    <Compile Include="ExtensionRegistry.cs" />
-    <Compile Include="ExtensionRegistryLite.cs" />
-    <Compile Include="FieldAccess\ReflectionUtil.cs" />
-    <Compile Include="FieldAccess\SingleEnumAccessor.cs" />
-    <Compile Include="FieldAccess\SingleMessageAccessor.cs" />
-    <Compile Include="FieldAccess\SinglePrimitiveAccessor.cs" />
-    <Compile Include="FieldAccess\RepeatedPrimitiveAccessor.cs" />
-    <Compile Include="FieldAccess\RepeatedEnumAccessor.cs" />
-    <Compile Include="FieldAccess\IFieldAccessor.cs" />
-    <Compile Include="FieldAccess\FieldAccessorTable.cs" />
-    <Compile Include="FieldAccess\RepeatedMessageAccessor.cs" />
-    <Compile Include="FieldSet.cs" />
-    <Compile Include="FrameworkPortability.cs" />
-    <Compile Include="GeneratedBuilder.cs" />
-    <Compile Include="GeneratedBuilderLite.cs" />
-    <Compile Include="GeneratedExtensionLite.cs" />
-    <Compile Include="GeneratedMessageLite.cs" />
-    <Compile Include="GeneratedRepeatExtension.cs" />
-    <Compile Include="GeneratedSingleExtension.cs" />
-    <Compile Include="GeneratedMessage.cs" />
-    <Compile Include="IBuilder.cs" />
-    <Compile Include="GeneratedExtensionBase.cs" />
-    <Compile Include="IBuilderLite.cs" />
-    <Compile Include="ICodedInputStream.cs" />
-    <Compile Include="ICodedOutputStream.cs" />
-    <Compile Include="IMessage.cs" />
-    <Compile Include="IMessageLite.cs" />
-    <Compile Include="InvalidProtocolBufferException.cs" />
-    <Compile Include="IRpcChannel.cs" />
-    <Compile Include="IRpcController.cs" />
-    <Compile Include="IRpcDispatch.cs" />
-    <Compile Include="IService.cs" />
-    <Compile Include="MessageStreamIterator.cs" />
-    <Compile Include="MessageStreamWriter.cs" />
-    <Compile Include="MessageUtil.cs" />
-    <Compile Include="NameHelpers.cs" />
-    <Compile Include="Properties\AssemblyInfo.cs" />
-    <Compile Include="RpcUtil.cs" />
-    <Compile Include="SortedList.cs" />
-    <Compile Include="TextFormat.cs" />
-    <Compile Include="TextGenerator.cs" />
-    <Compile Include="TextTokenizer.cs" />
-    <Compile Include="ThrowHelper.cs" />
-    <Compile Include="UninitializedMessageException.cs" />
-    <Compile Include="UnknownField.cs" />
-    <Compile Include="UnknownFieldSet.cs" />
-    <Compile Include="WireFormat.cs" />
-  </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 - 155
csharp/src/ProtocolBuffers/ProtocolBuffers.NET35.csproj

@@ -1,155 +0,0 @@
-<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup>
-    <EnvironmentFlavor>CLIENTPROFILE</EnvironmentFlavor>
-    <EnvironmentTemplate>NET35</EnvironmentTemplate>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.30729</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{6908BDCE-D925-43F3-94AC-A531E6DF2591}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <AppDesignerFolder>Properties</AppDesignerFolder>
-    <RootNamespace>Google.ProtocolBuffers</RootNamespace>
-    <AssemblyName>Google.ProtocolBuffers</AssemblyName>
-    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
-    <FileAlignment>512</FileAlignment>
-    <SignAssembly>true</SignAssembly>
-    <AssemblyOriginatorKeyFile>..\..\keys\Google.ProtocolBuffers.snk</AssemblyOriginatorKeyFile>
-    <OldToolsVersion>3.5</OldToolsVersion>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>bin\NET35\Debug</OutputPath>
-    <IntermediateOutputPath>obj\NET35\Debug\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>DEBUG;TRACE;$(EnvironmentFlavor);$(EnvironmentTemplate)</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>pdbonly</DebugType>
-    <Optimize>true</Optimize>
-    <OutputPath>bin\NET35\Release</OutputPath>
-    <IntermediateOutputPath>obj\NET35\Release\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>TRACE;$(EnvironmentFlavor);$(EnvironmentTemplate)</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="mscorlib" />
-    <Reference Include="System" />
-    <Reference Include="System.Xml" />
-    <Reference Include="System.Core" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="AbstractBuilder.cs" />
-    <Compile Include="AbstractBuilderLite.cs" />
-    <Compile Include="AbstractMessage.cs" />
-    <Compile Include="AbstractMessageLite.cs" />
-    <Compile Include="ByteArray.cs" />
-    <Compile Include="ByteString.cs" />
-    <Compile Include="Collections\Enumerables.cs" />
-    <Compile Include="Collections\IPopsicleList.cs" />
-    <Compile Include="Collections\PopsicleList.cs" />
-    <Compile Include="CodedOutputStream.ComputeSize.cs" />
-    <Compile Include="CustomSerialization.cs" />
-    <Compile Include="Delegates.cs" />
-    <Compile Include="CodedInputStream.cs" />
-    <Compile Include="CodedOutputStream.cs" />
-    <Compile Include="Collections\Dictionaries.cs" />
-    <Compile Include="Collections\Lists.cs" />
-    <Compile Include="Collections\ReadOnlyDictionary.cs" />
-    <Compile Include="DescriptorProtos\CSharpOptions.cs" />
-    <Compile Include="DescriptorProtos\DescriptorProtoFile.cs" />
-    <Compile Include="DescriptorProtos\IDescriptorProto.cs" />
-    <Compile Include="DescriptorProtos\PartialClasses.cs" />
-    <Compile Include="Descriptors\DescriptorBase.cs" />
-    <Compile Include="Descriptors\DescriptorPool.cs" />
-    <Compile Include="Descriptors\DescriptorUtil.cs" />
-    <Compile Include="Descriptors\DescriptorValidationException.cs" />
-    <Compile Include="Descriptors\EnumDescriptor.cs" />
-    <Compile Include="Descriptors\EnumValueDescriptor.cs" />
-    <Compile Include="Descriptors\FieldDescriptor.cs" />
-    <Compile Include="Descriptors\FieldMappingAttribute.cs" />
-    <Compile Include="Descriptors\FieldType.cs" />
-    <Compile Include="Descriptors\FileDescriptor.cs" />
-    <Compile Include="Descriptors\IDescriptor.cs" />
-    <Compile Include="Descriptors\IndexedDescriptorBase.cs" />
-    <Compile Include="Descriptors\MappedType.cs" />
-    <Compile Include="Descriptors\MessageDescriptor.cs" />
-    <Compile Include="Descriptors\MethodDescriptor.cs" />
-    <Compile Include="Descriptors\PackageDescriptor.cs" />
-    <Compile Include="Descriptors\ServiceDescriptor.cs" />
-    <Compile Include="DynamicMessage.cs" />
-    <Compile Include="EnumLite.cs" />
-    <Compile Include="ExtendableBuilder.cs" />
-    <Compile Include="ExtendableBuilderLite.cs" />
-    <Compile Include="ExtendableMessage.cs" />
-    <Compile Include="ExtendableMessageLite.cs" />
-    <Compile Include="ExtensionInfo.cs" />
-    <Compile Include="ExtensionRegistry.cs" />
-    <Compile Include="ExtensionRegistryLite.cs" />
-    <Compile Include="FieldAccess\ReflectionUtil.cs" />
-    <Compile Include="FieldAccess\SingleEnumAccessor.cs" />
-    <Compile Include="FieldAccess\SingleMessageAccessor.cs" />
-    <Compile Include="FieldAccess\SinglePrimitiveAccessor.cs" />
-    <Compile Include="FieldAccess\RepeatedPrimitiveAccessor.cs" />
-    <Compile Include="FieldAccess\RepeatedEnumAccessor.cs" />
-    <Compile Include="FieldAccess\IFieldAccessor.cs" />
-    <Compile Include="FieldAccess\FieldAccessorTable.cs" />
-    <Compile Include="FieldAccess\RepeatedMessageAccessor.cs" />
-    <Compile Include="FieldSet.cs" />
-    <Compile Include="FrameworkPortability.cs" />
-    <Compile Include="GeneratedBuilder.cs" />
-    <Compile Include="GeneratedBuilderLite.cs" />
-    <Compile Include="GeneratedExtensionLite.cs" />
-    <Compile Include="GeneratedMessageLite.cs" />
-    <Compile Include="GeneratedRepeatExtension.cs" />
-    <Compile Include="GeneratedSingleExtension.cs" />
-    <Compile Include="GeneratedMessage.cs" />
-    <Compile Include="IBuilder.cs" />
-    <Compile Include="GeneratedExtensionBase.cs" />
-    <Compile Include="IBuilderLite.cs" />
-    <Compile Include="ICodedInputStream.cs" />
-    <Compile Include="ICodedOutputStream.cs" />
-    <Compile Include="IMessage.cs" />
-    <Compile Include="IMessageLite.cs" />
-    <Compile Include="InvalidProtocolBufferException.cs" />
-    <Compile Include="IRpcChannel.cs" />
-    <Compile Include="IRpcController.cs" />
-    <Compile Include="IRpcDispatch.cs" />
-    <Compile Include="IService.cs" />
-    <Compile Include="MessageStreamIterator.cs" />
-    <Compile Include="MessageStreamWriter.cs" />
-    <Compile Include="MessageUtil.cs" />
-    <Compile Include="NameHelpers.cs" />
-    <Compile Include="Properties\AssemblyInfo.cs" />
-    <Compile Include="RpcUtil.cs" />
-    <Compile Include="SortedList.cs" />
-    <Compile Include="TextFormat.cs" />
-    <Compile Include="TextGenerator.cs" />
-    <Compile Include="TextTokenizer.cs" />
-    <Compile Include="ThrowHelper.cs" />
-    <Compile Include="UninitializedMessageException.cs" />
-    <Compile Include="UnknownField.cs" />
-    <Compile Include="UnknownFieldSet.cs" />
-    <Compile Include="WireFormat.cs" />
-  </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 - 155
csharp/src/ProtocolBuffers/ProtocolBuffers.NET40.csproj

@@ -1,155 +0,0 @@
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup>
-    <EnvironmentFlavor>CLIENTPROFILE</EnvironmentFlavor>
-    <EnvironmentTemplate>NET40</EnvironmentTemplate>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.30729</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{6908BDCE-D925-43F3-94AC-A531E6DF2591}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <AppDesignerFolder>Properties</AppDesignerFolder>
-    <RootNamespace>Google.ProtocolBuffers</RootNamespace>
-    <AssemblyName>Google.ProtocolBuffers</AssemblyName>
-    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
-    <FileAlignment>512</FileAlignment>
-    <SignAssembly>true</SignAssembly>
-    <AssemblyOriginatorKeyFile>..\..\keys\Google.ProtocolBuffers.snk</AssemblyOriginatorKeyFile>
-    <OldToolsVersion>3.5</OldToolsVersion>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>bin\NET40\Debug</OutputPath>
-    <IntermediateOutputPath>obj\NET40\Debug\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>DEBUG;TRACE;$(EnvironmentFlavor);$(EnvironmentTemplate)</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>pdbonly</DebugType>
-    <Optimize>true</Optimize>
-    <OutputPath>bin\NET40\Release</OutputPath>
-    <IntermediateOutputPath>obj\NET40\Release\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>TRACE;$(EnvironmentFlavor);$(EnvironmentTemplate)</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="mscorlib" />
-    <Reference Include="System" />
-    <Reference Include="System.Xml" />
-    <Reference Include="System.Core" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="AbstractBuilder.cs" />
-    <Compile Include="AbstractBuilderLite.cs" />
-    <Compile Include="AbstractMessage.cs" />
-    <Compile Include="AbstractMessageLite.cs" />
-    <Compile Include="ByteArray.cs" />
-    <Compile Include="ByteString.cs" />
-    <Compile Include="Collections\Enumerables.cs" />
-    <Compile Include="Collections\IPopsicleList.cs" />
-    <Compile Include="Collections\PopsicleList.cs" />
-    <Compile Include="CodedOutputStream.ComputeSize.cs" />
-    <Compile Include="CustomSerialization.cs" />
-    <Compile Include="Delegates.cs" />
-    <Compile Include="CodedInputStream.cs" />
-    <Compile Include="CodedOutputStream.cs" />
-    <Compile Include="Collections\Dictionaries.cs" />
-    <Compile Include="Collections\Lists.cs" />
-    <Compile Include="Collections\ReadOnlyDictionary.cs" />
-    <Compile Include="DescriptorProtos\CSharpOptions.cs" />
-    <Compile Include="DescriptorProtos\DescriptorProtoFile.cs" />
-    <Compile Include="DescriptorProtos\IDescriptorProto.cs" />
-    <Compile Include="DescriptorProtos\PartialClasses.cs" />
-    <Compile Include="Descriptors\DescriptorBase.cs" />
-    <Compile Include="Descriptors\DescriptorPool.cs" />
-    <Compile Include="Descriptors\DescriptorUtil.cs" />
-    <Compile Include="Descriptors\DescriptorValidationException.cs" />
-    <Compile Include="Descriptors\EnumDescriptor.cs" />
-    <Compile Include="Descriptors\EnumValueDescriptor.cs" />
-    <Compile Include="Descriptors\FieldDescriptor.cs" />
-    <Compile Include="Descriptors\FieldMappingAttribute.cs" />
-    <Compile Include="Descriptors\FieldType.cs" />
-    <Compile Include="Descriptors\FileDescriptor.cs" />
-    <Compile Include="Descriptors\IDescriptor.cs" />
-    <Compile Include="Descriptors\IndexedDescriptorBase.cs" />
-    <Compile Include="Descriptors\MappedType.cs" />
-    <Compile Include="Descriptors\MessageDescriptor.cs" />
-    <Compile Include="Descriptors\MethodDescriptor.cs" />
-    <Compile Include="Descriptors\PackageDescriptor.cs" />
-    <Compile Include="Descriptors\ServiceDescriptor.cs" />
-    <Compile Include="DynamicMessage.cs" />
-    <Compile Include="EnumLite.cs" />
-    <Compile Include="ExtendableBuilder.cs" />
-    <Compile Include="ExtendableBuilderLite.cs" />
-    <Compile Include="ExtendableMessage.cs" />
-    <Compile Include="ExtendableMessageLite.cs" />
-    <Compile Include="ExtensionInfo.cs" />
-    <Compile Include="ExtensionRegistry.cs" />
-    <Compile Include="ExtensionRegistryLite.cs" />
-    <Compile Include="FieldAccess\ReflectionUtil.cs" />
-    <Compile Include="FieldAccess\SingleEnumAccessor.cs" />
-    <Compile Include="FieldAccess\SingleMessageAccessor.cs" />
-    <Compile Include="FieldAccess\SinglePrimitiveAccessor.cs" />
-    <Compile Include="FieldAccess\RepeatedPrimitiveAccessor.cs" />
-    <Compile Include="FieldAccess\RepeatedEnumAccessor.cs" />
-    <Compile Include="FieldAccess\IFieldAccessor.cs" />
-    <Compile Include="FieldAccess\FieldAccessorTable.cs" />
-    <Compile Include="FieldAccess\RepeatedMessageAccessor.cs" />
-    <Compile Include="FieldSet.cs" />
-    <Compile Include="FrameworkPortability.cs" />
-    <Compile Include="GeneratedBuilder.cs" />
-    <Compile Include="GeneratedBuilderLite.cs" />
-    <Compile Include="GeneratedExtensionLite.cs" />
-    <Compile Include="GeneratedMessageLite.cs" />
-    <Compile Include="GeneratedRepeatExtension.cs" />
-    <Compile Include="GeneratedSingleExtension.cs" />
-    <Compile Include="GeneratedMessage.cs" />
-    <Compile Include="IBuilder.cs" />
-    <Compile Include="GeneratedExtensionBase.cs" />
-    <Compile Include="IBuilderLite.cs" />
-    <Compile Include="ICodedInputStream.cs" />
-    <Compile Include="ICodedOutputStream.cs" />
-    <Compile Include="IMessage.cs" />
-    <Compile Include="IMessageLite.cs" />
-    <Compile Include="InvalidProtocolBufferException.cs" />
-    <Compile Include="IRpcChannel.cs" />
-    <Compile Include="IRpcController.cs" />
-    <Compile Include="IRpcDispatch.cs" />
-    <Compile Include="IService.cs" />
-    <Compile Include="MessageStreamIterator.cs" />
-    <Compile Include="MessageStreamWriter.cs" />
-    <Compile Include="MessageUtil.cs" />
-    <Compile Include="NameHelpers.cs" />
-    <Compile Include="Properties\AssemblyInfo.cs" />
-    <Compile Include="RpcUtil.cs" />
-    <Compile Include="SortedList.cs" />
-    <Compile Include="TextFormat.cs" />
-    <Compile Include="TextGenerator.cs" />
-    <Compile Include="TextTokenizer.cs" />
-    <Compile Include="ThrowHelper.cs" />
-    <Compile Include="UninitializedMessageException.cs" />
-    <Compile Include="UnknownField.cs" />
-    <Compile Include="UnknownFieldSet.cs" />
-    <Compile Include="WireFormat.cs" />
-  </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 - 158
csharp/src/ProtocolBuffers/ProtocolBuffers.PL40.csproj

@@ -1,158 +0,0 @@
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" xmlns:cs="urn:schemas-csharp-project:template">
-  <PropertyGroup>
-    <EnvironmentFlavor>PORTABLE_LIBRARY</EnvironmentFlavor>
-    <EnvironmentTemplate>PL40</EnvironmentTemplate>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.30729</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{6908BDCE-D925-43F3-94AC-A531E6DF2591}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <AppDesignerFolder>Properties</AppDesignerFolder>
-    <RootNamespace>Google.ProtocolBuffers</RootNamespace>
-    <AssemblyName>Google.ProtocolBuffers</AssemblyName>
-    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
-    <FileAlignment>512</FileAlignment>
-    <SignAssembly>true</SignAssembly>
-    <AssemblyOriginatorKeyFile>..\..\keys\Google.ProtocolBuffers.snk</AssemblyOriginatorKeyFile>
-    <OldToolsVersion>3.5</OldToolsVersion>
-    <MinimumVisualStudioVersion>10.0</MinimumVisualStudioVersion>
-    <ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
-    <TargetFrameworkProfile>Profile1</TargetFrameworkProfile>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>bin\PL40\Debug</OutputPath>
-    <IntermediateOutputPath>obj\PL40\Debug\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>DEBUG;TRACE;$(EnvironmentFlavor);$(EnvironmentTemplate);NOSERIALIZABLE;NOSORTEDLIST</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>pdbonly</DebugType>
-    <Optimize>true</Optimize>
-    <OutputPath>bin\PL40\Release</OutputPath>
-    <IntermediateOutputPath>obj\PL40\Release\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>TRACE;$(EnvironmentFlavor);$(EnvironmentTemplate);NOSERIALIZABLE;NOSORTEDLIST</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="mscorlib" />
-    <Reference Include="System" />
-    <Reference Include="System.Xml" />
-    <Reference Include="System.Core" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="AbstractBuilder.cs" />
-    <Compile Include="AbstractBuilderLite.cs" />
-    <Compile Include="AbstractMessage.cs" />
-    <Compile Include="AbstractMessageLite.cs" />
-    <Compile Include="ByteArray.cs" />
-    <Compile Include="ByteString.cs" />
-    <Compile Include="Collections\Enumerables.cs" />
-    <Compile Include="Collections\IPopsicleList.cs" />
-    <Compile Include="Collections\PopsicleList.cs" />
-    <Compile Include="CodedOutputStream.ComputeSize.cs" />
-    <Compile Include="CustomSerialization.cs" />
-    <Compile Include="Delegates.cs" />
-    <Compile Include="CodedInputStream.cs" />
-    <Compile Include="CodedOutputStream.cs" />
-    <Compile Include="Collections\Dictionaries.cs" />
-    <Compile Include="Collections\Lists.cs" />
-    <Compile Include="Collections\ReadOnlyDictionary.cs" />
-    <Compile Include="DescriptorProtos\CSharpOptions.cs" />
-    <Compile Include="DescriptorProtos\DescriptorProtoFile.cs" />
-    <Compile Include="DescriptorProtos\IDescriptorProto.cs" />
-    <Compile Include="DescriptorProtos\PartialClasses.cs" />
-    <Compile Include="Descriptors\DescriptorBase.cs" />
-    <Compile Include="Descriptors\DescriptorPool.cs" />
-    <Compile Include="Descriptors\DescriptorUtil.cs" />
-    <Compile Include="Descriptors\DescriptorValidationException.cs" />
-    <Compile Include="Descriptors\EnumDescriptor.cs" />
-    <Compile Include="Descriptors\EnumValueDescriptor.cs" />
-    <Compile Include="Descriptors\FieldDescriptor.cs" />
-    <Compile Include="Descriptors\FieldMappingAttribute.cs" />
-    <Compile Include="Descriptors\FieldType.cs" />
-    <Compile Include="Descriptors\FileDescriptor.cs" />
-    <Compile Include="Descriptors\IDescriptor.cs" />
-    <Compile Include="Descriptors\IndexedDescriptorBase.cs" />
-    <Compile Include="Descriptors\MappedType.cs" />
-    <Compile Include="Descriptors\MessageDescriptor.cs" />
-    <Compile Include="Descriptors\MethodDescriptor.cs" />
-    <Compile Include="Descriptors\PackageDescriptor.cs" />
-    <Compile Include="Descriptors\ServiceDescriptor.cs" />
-    <Compile Include="DynamicMessage.cs" />
-    <Compile Include="EnumLite.cs" />
-    <Compile Include="ExtendableBuilder.cs" />
-    <Compile Include="ExtendableBuilderLite.cs" />
-    <Compile Include="ExtendableMessage.cs" />
-    <Compile Include="ExtendableMessageLite.cs" />
-    <Compile Include="ExtensionInfo.cs" />
-    <Compile Include="ExtensionRegistry.cs" />
-    <Compile Include="ExtensionRegistryLite.cs" />
-    <Compile Include="FieldAccess\ReflectionUtil.cs" />
-    <Compile Include="FieldAccess\SingleEnumAccessor.cs" />
-    <Compile Include="FieldAccess\SingleMessageAccessor.cs" />
-    <Compile Include="FieldAccess\SinglePrimitiveAccessor.cs" />
-    <Compile Include="FieldAccess\RepeatedPrimitiveAccessor.cs" />
-    <Compile Include="FieldAccess\RepeatedEnumAccessor.cs" />
-    <Compile Include="FieldAccess\IFieldAccessor.cs" />
-    <Compile Include="FieldAccess\FieldAccessorTable.cs" />
-    <Compile Include="FieldAccess\RepeatedMessageAccessor.cs" />
-    <Compile Include="FieldSet.cs" />
-    <Compile Include="FrameworkPortability.cs" />
-    <Compile Include="GeneratedBuilder.cs" />
-    <Compile Include="GeneratedBuilderLite.cs" />
-    <Compile Include="GeneratedExtensionLite.cs" />
-    <Compile Include="GeneratedMessageLite.cs" />
-    <Compile Include="GeneratedRepeatExtension.cs" />
-    <Compile Include="GeneratedSingleExtension.cs" />
-    <Compile Include="GeneratedMessage.cs" />
-    <Compile Include="IBuilder.cs" />
-    <Compile Include="GeneratedExtensionBase.cs" />
-    <Compile Include="IBuilderLite.cs" />
-    <Compile Include="ICodedInputStream.cs" />
-    <Compile Include="ICodedOutputStream.cs" />
-    <Compile Include="IMessage.cs" />
-    <Compile Include="IMessageLite.cs" />
-    <Compile Include="InvalidProtocolBufferException.cs" />
-    <Compile Include="IRpcChannel.cs" />
-    <Compile Include="IRpcController.cs" />
-    <Compile Include="IRpcDispatch.cs" />
-    <Compile Include="IService.cs" />
-    <Compile Include="MessageStreamIterator.cs" />
-    <Compile Include="MessageStreamWriter.cs" />
-    <Compile Include="MessageUtil.cs" />
-    <Compile Include="NameHelpers.cs" />
-    <Compile Include="Properties\AssemblyInfo.cs" />
-    <Compile Include="RpcUtil.cs" />
-    <Compile Include="SortedList.cs" />
-    <Compile Include="TextFormat.cs" />
-    <Compile Include="TextGenerator.cs" />
-    <Compile Include="TextTokenizer.cs" />
-    <Compile Include="ThrowHelper.cs" />
-    <Compile Include="UninitializedMessageException.cs" />
-    <Compile Include="UnknownField.cs" />
-    <Compile Include="UnknownFieldSet.cs" />
-    <Compile Include="WireFormat.cs" />
-  </ItemGroup>
-  <Import Project="$(MSBuildExtensionsPath32)\Microsoft\Portable\$(TargetFrameworkVersion)\Microsoft.Portable.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 - 169
csharp/src/ProtocolBuffers/ProtocolBuffers.SL20.csproj

@@ -1,169 +0,0 @@
-<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" xmlns:cs="urn:schemas-csharp-project:template">
-  <PropertyGroup>
-    <EnvironmentFlavor>SILVERLIGHT</EnvironmentFlavor>
-    <EnvironmentTemplate>SL20</EnvironmentTemplate>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.30729</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{6908BDCE-D925-43F3-94AC-A531E6DF2591}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <AppDesignerFolder>Properties</AppDesignerFolder>
-    <RootNamespace>Google.ProtocolBuffers</RootNamespace>
-    <AssemblyName>Google.ProtocolBuffers</AssemblyName>
-    <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
-    <FileAlignment>512</FileAlignment>
-    <SignAssembly>true</SignAssembly>
-    <AssemblyOriginatorKeyFile>..\..\keys\Google.ProtocolBuffers.snk</AssemblyOriginatorKeyFile>
-    <OldToolsVersion>3.5</OldToolsVersion>
-    <ProjectTypeGuids>{A1591282-1198-4647-A2B1-27E5FF5F6F3B};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
-    <SilverlightApplication>false</SilverlightApplication>
-    <ValidateXaml>false</ValidateXaml>
-    <ThrowErrorsInValidation>false</ThrowErrorsInValidation>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>bin\SL20\Debug</OutputPath>
-    <IntermediateOutputPath>obj\SL20\Debug\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>DEBUG;TRACE;$(EnvironmentFlavor);$(EnvironmentTemplate);NOSERIALIZABLE;NOSORTEDLIST;NOEXTENSIONS</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-    <NoConfig>true</NoConfig>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>pdbonly</DebugType>
-    <Optimize>true</Optimize>
-    <OutputPath>bin\SL20\Release</OutputPath>
-    <IntermediateOutputPath>obj\SL20\Release\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>TRACE;$(EnvironmentFlavor);$(EnvironmentTemplate);NOSERIALIZABLE;NOSORTEDLIST;NOEXTENSIONS</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-    <NoConfig>true</NoConfig>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="mscorlib" />
-    <Reference Include="System" />
-    <Reference Include="System.Xml" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="AbstractBuilder.cs" />
-    <Compile Include="AbstractBuilderLite.cs" />
-    <Compile Include="AbstractMessage.cs" />
-    <Compile Include="AbstractMessageLite.cs" />
-    <Compile Include="ByteArray.cs" />
-    <Compile Include="ByteString.cs" />
-    <Compile Include="Collections\Enumerables.cs" />
-    <Compile Include="Collections\IPopsicleList.cs" />
-    <Compile Include="Collections\PopsicleList.cs" />
-    <Compile Include="CodedOutputStream.ComputeSize.cs" />
-    <Compile Include="CustomSerialization.cs" />
-    <Compile Include="Delegates.cs" />
-    <Compile Include="CodedInputStream.cs" />
-    <Compile Include="CodedOutputStream.cs" />
-    <Compile Include="Collections\Dictionaries.cs" />
-    <Compile Include="Collections\Lists.cs" />
-    <Compile Include="Collections\ReadOnlyDictionary.cs" />
-    <Compile Include="DescriptorProtos\CSharpOptions.cs" />
-    <Compile Include="DescriptorProtos\DescriptorProtoFile.cs" />
-    <Compile Include="DescriptorProtos\IDescriptorProto.cs" />
-    <Compile Include="DescriptorProtos\PartialClasses.cs" />
-    <Compile Include="Descriptors\DescriptorBase.cs" />
-    <Compile Include="Descriptors\DescriptorPool.cs" />
-    <Compile Include="Descriptors\DescriptorUtil.cs" />
-    <Compile Include="Descriptors\DescriptorValidationException.cs" />
-    <Compile Include="Descriptors\EnumDescriptor.cs" />
-    <Compile Include="Descriptors\EnumValueDescriptor.cs" />
-    <Compile Include="Descriptors\FieldDescriptor.cs" />
-    <Compile Include="Descriptors\FieldMappingAttribute.cs" />
-    <Compile Include="Descriptors\FieldType.cs" />
-    <Compile Include="Descriptors\FileDescriptor.cs" />
-    <Compile Include="Descriptors\IDescriptor.cs" />
-    <Compile Include="Descriptors\IndexedDescriptorBase.cs" />
-    <Compile Include="Descriptors\MappedType.cs" />
-    <Compile Include="Descriptors\MessageDescriptor.cs" />
-    <Compile Include="Descriptors\MethodDescriptor.cs" />
-    <Compile Include="Descriptors\PackageDescriptor.cs" />
-    <Compile Include="Descriptors\ServiceDescriptor.cs" />
-    <Compile Include="DynamicMessage.cs" />
-    <Compile Include="EnumLite.cs" />
-    <Compile Include="ExtendableBuilder.cs" />
-    <Compile Include="ExtendableBuilderLite.cs" />
-    <Compile Include="ExtendableMessage.cs" />
-    <Compile Include="ExtendableMessageLite.cs" />
-    <Compile Include="ExtensionInfo.cs" />
-    <Compile Include="ExtensionRegistry.cs" />
-    <Compile Include="ExtensionRegistryLite.cs" />
-    <Compile Include="FieldAccess\ReflectionUtil.cs" />
-    <Compile Include="FieldAccess\SingleEnumAccessor.cs" />
-    <Compile Include="FieldAccess\SingleMessageAccessor.cs" />
-    <Compile Include="FieldAccess\SinglePrimitiveAccessor.cs" />
-    <Compile Include="FieldAccess\RepeatedPrimitiveAccessor.cs" />
-    <Compile Include="FieldAccess\RepeatedEnumAccessor.cs" />
-    <Compile Include="FieldAccess\IFieldAccessor.cs" />
-    <Compile Include="FieldAccess\FieldAccessorTable.cs" />
-    <Compile Include="FieldAccess\RepeatedMessageAccessor.cs" />
-    <Compile Include="FieldSet.cs" />
-    <Compile Include="FrameworkPortability.cs" />
-    <Compile Include="GeneratedBuilder.cs" />
-    <Compile Include="GeneratedBuilderLite.cs" />
-    <Compile Include="GeneratedExtensionLite.cs" />
-    <Compile Include="GeneratedMessageLite.cs" />
-    <Compile Include="GeneratedRepeatExtension.cs" />
-    <Compile Include="GeneratedSingleExtension.cs" />
-    <Compile Include="GeneratedMessage.cs" />
-    <Compile Include="IBuilder.cs" />
-    <Compile Include="GeneratedExtensionBase.cs" />
-    <Compile Include="IBuilderLite.cs" />
-    <Compile Include="ICodedInputStream.cs" />
-    <Compile Include="ICodedOutputStream.cs" />
-    <Compile Include="IMessage.cs" />
-    <Compile Include="IMessageLite.cs" />
-    <Compile Include="InvalidProtocolBufferException.cs" />
-    <Compile Include="IRpcChannel.cs" />
-    <Compile Include="IRpcController.cs" />
-    <Compile Include="IRpcDispatch.cs" />
-    <Compile Include="IService.cs" />
-    <Compile Include="MessageStreamIterator.cs" />
-    <Compile Include="MessageStreamWriter.cs" />
-    <Compile Include="MessageUtil.cs" />
-    <Compile Include="NameHelpers.cs" />
-    <Compile Include="Properties\AssemblyInfo.cs" />
-    <Compile Include="RpcUtil.cs" />
-    <Compile Include="SortedList.cs" />
-    <Compile Include="TextFormat.cs" />
-    <Compile Include="TextGenerator.cs" />
-    <Compile Include="TextTokenizer.cs" />
-    <Compile Include="ThrowHelper.cs" />
-    <Compile Include="UninitializedMessageException.cs" />
-    <Compile Include="UnknownField.cs" />
-    <Compile Include="UnknownFieldSet.cs" />
-    <Compile Include="WireFormat.cs" />
-  </ItemGroup>
-  <Import Project="$(MSBuildExtensionsPath32)\Microsoft\Silverlight\v2.0\Microsoft.Silverlight.CSharp.targets" />
-  <ProjectExtensions>
-    <VisualStudio>
-      <FlavorProperties GUID="{A1591282-1198-4647-A2B1-27E5FF5F6F3B}">
-        <SilverlightProjectProperties>
-          <StartAction>OfflineApplication</StartAction>
-        </SilverlightProjectProperties>
-      </FlavorProperties>
-    </VisualStudio>
-  </ProjectExtensions>
-  <!-- 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 - 170
csharp/src/ProtocolBuffers/ProtocolBuffers.SL30.csproj

@@ -1,170 +0,0 @@
-<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" xmlns:cs="urn:schemas-csharp-project:template">
-  <PropertyGroup>
-    <EnvironmentFlavor>SILVERLIGHT</EnvironmentFlavor>
-    <EnvironmentTemplate>SL30</EnvironmentTemplate>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.30729</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{6908BDCE-D925-43F3-94AC-A531E6DF2591}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <AppDesignerFolder>Properties</AppDesignerFolder>
-    <RootNamespace>Google.ProtocolBuffers</RootNamespace>
-    <AssemblyName>Google.ProtocolBuffers</AssemblyName>
-    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
-    <FileAlignment>512</FileAlignment>
-    <SignAssembly>true</SignAssembly>
-    <AssemblyOriginatorKeyFile>..\..\keys\Google.ProtocolBuffers.snk</AssemblyOriginatorKeyFile>
-    <OldToolsVersion>3.5</OldToolsVersion>
-    <ProjectTypeGuids>{A1591282-1198-4647-A2B1-27E5FF5F6F3B};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
-    <SilverlightApplication>false</SilverlightApplication>
-    <ValidateXaml>false</ValidateXaml>
-    <ThrowErrorsInValidation>false</ThrowErrorsInValidation>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>bin\SL30\Debug</OutputPath>
-    <IntermediateOutputPath>obj\SL30\Debug\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>DEBUG;TRACE;$(EnvironmentFlavor);$(EnvironmentTemplate);NOSERIALIZABLE;NOSORTEDLIST</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-    <NoConfig>true</NoConfig>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>pdbonly</DebugType>
-    <Optimize>true</Optimize>
-    <OutputPath>bin\SL30\Release</OutputPath>
-    <IntermediateOutputPath>obj\SL30\Release\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>TRACE;$(EnvironmentFlavor);$(EnvironmentTemplate);NOSERIALIZABLE;NOSORTEDLIST</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-    <NoConfig>true</NoConfig>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="mscorlib" />
-    <Reference Include="System" />
-    <Reference Include="System.Xml" />
-    <Reference Include="System.Core" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="AbstractBuilder.cs" />
-    <Compile Include="AbstractBuilderLite.cs" />
-    <Compile Include="AbstractMessage.cs" />
-    <Compile Include="AbstractMessageLite.cs" />
-    <Compile Include="ByteArray.cs" />
-    <Compile Include="ByteString.cs" />
-    <Compile Include="Collections\Enumerables.cs" />
-    <Compile Include="Collections\IPopsicleList.cs" />
-    <Compile Include="Collections\PopsicleList.cs" />
-    <Compile Include="CodedOutputStream.ComputeSize.cs" />
-    <Compile Include="CustomSerialization.cs" />
-    <Compile Include="Delegates.cs" />
-    <Compile Include="CodedInputStream.cs" />
-    <Compile Include="CodedOutputStream.cs" />
-    <Compile Include="Collections\Dictionaries.cs" />
-    <Compile Include="Collections\Lists.cs" />
-    <Compile Include="Collections\ReadOnlyDictionary.cs" />
-    <Compile Include="DescriptorProtos\CSharpOptions.cs" />
-    <Compile Include="DescriptorProtos\DescriptorProtoFile.cs" />
-    <Compile Include="DescriptorProtos\IDescriptorProto.cs" />
-    <Compile Include="DescriptorProtos\PartialClasses.cs" />
-    <Compile Include="Descriptors\DescriptorBase.cs" />
-    <Compile Include="Descriptors\DescriptorPool.cs" />
-    <Compile Include="Descriptors\DescriptorUtil.cs" />
-    <Compile Include="Descriptors\DescriptorValidationException.cs" />
-    <Compile Include="Descriptors\EnumDescriptor.cs" />
-    <Compile Include="Descriptors\EnumValueDescriptor.cs" />
-    <Compile Include="Descriptors\FieldDescriptor.cs" />
-    <Compile Include="Descriptors\FieldMappingAttribute.cs" />
-    <Compile Include="Descriptors\FieldType.cs" />
-    <Compile Include="Descriptors\FileDescriptor.cs" />
-    <Compile Include="Descriptors\IDescriptor.cs" />
-    <Compile Include="Descriptors\IndexedDescriptorBase.cs" />
-    <Compile Include="Descriptors\MappedType.cs" />
-    <Compile Include="Descriptors\MessageDescriptor.cs" />
-    <Compile Include="Descriptors\MethodDescriptor.cs" />
-    <Compile Include="Descriptors\PackageDescriptor.cs" />
-    <Compile Include="Descriptors\ServiceDescriptor.cs" />
-    <Compile Include="DynamicMessage.cs" />
-    <Compile Include="EnumLite.cs" />
-    <Compile Include="ExtendableBuilder.cs" />
-    <Compile Include="ExtendableBuilderLite.cs" />
-    <Compile Include="ExtendableMessage.cs" />
-    <Compile Include="ExtendableMessageLite.cs" />
-    <Compile Include="ExtensionInfo.cs" />
-    <Compile Include="ExtensionRegistry.cs" />
-    <Compile Include="ExtensionRegistryLite.cs" />
-    <Compile Include="FieldAccess\ReflectionUtil.cs" />
-    <Compile Include="FieldAccess\SingleEnumAccessor.cs" />
-    <Compile Include="FieldAccess\SingleMessageAccessor.cs" />
-    <Compile Include="FieldAccess\SinglePrimitiveAccessor.cs" />
-    <Compile Include="FieldAccess\RepeatedPrimitiveAccessor.cs" />
-    <Compile Include="FieldAccess\RepeatedEnumAccessor.cs" />
-    <Compile Include="FieldAccess\IFieldAccessor.cs" />
-    <Compile Include="FieldAccess\FieldAccessorTable.cs" />
-    <Compile Include="FieldAccess\RepeatedMessageAccessor.cs" />
-    <Compile Include="FieldSet.cs" />
-    <Compile Include="FrameworkPortability.cs" />
-    <Compile Include="GeneratedBuilder.cs" />
-    <Compile Include="GeneratedBuilderLite.cs" />
-    <Compile Include="GeneratedExtensionLite.cs" />
-    <Compile Include="GeneratedMessageLite.cs" />
-    <Compile Include="GeneratedRepeatExtension.cs" />
-    <Compile Include="GeneratedSingleExtension.cs" />
-    <Compile Include="GeneratedMessage.cs" />
-    <Compile Include="IBuilder.cs" />
-    <Compile Include="GeneratedExtensionBase.cs" />
-    <Compile Include="IBuilderLite.cs" />
-    <Compile Include="ICodedInputStream.cs" />
-    <Compile Include="ICodedOutputStream.cs" />
-    <Compile Include="IMessage.cs" />
-    <Compile Include="IMessageLite.cs" />
-    <Compile Include="InvalidProtocolBufferException.cs" />
-    <Compile Include="IRpcChannel.cs" />
-    <Compile Include="IRpcController.cs" />
-    <Compile Include="IRpcDispatch.cs" />
-    <Compile Include="IService.cs" />
-    <Compile Include="MessageStreamIterator.cs" />
-    <Compile Include="MessageStreamWriter.cs" />
-    <Compile Include="MessageUtil.cs" />
-    <Compile Include="NameHelpers.cs" />
-    <Compile Include="Properties\AssemblyInfo.cs" />
-    <Compile Include="RpcUtil.cs" />
-    <Compile Include="SortedList.cs" />
-    <Compile Include="TextFormat.cs" />
-    <Compile Include="TextGenerator.cs" />
-    <Compile Include="TextTokenizer.cs" />
-    <Compile Include="ThrowHelper.cs" />
-    <Compile Include="UninitializedMessageException.cs" />
-    <Compile Include="UnknownField.cs" />
-    <Compile Include="UnknownFieldSet.cs" />
-    <Compile Include="WireFormat.cs" />
-  </ItemGroup>
-  <Import Project="$(MSBuildExtensionsPath32)\Microsoft\Silverlight\v3.0\Microsoft.Silverlight.CSharp.targets" />
-  <ProjectExtensions>
-    <VisualStudio>
-      <FlavorProperties GUID="{A1591282-1198-4647-A2B1-27E5FF5F6F3B}">
-        <SilverlightProjectProperties>
-          <StartAction>OfflineApplication</StartAction>
-        </SilverlightProjectProperties>
-      </FlavorProperties>
-    </VisualStudio>
-  </ProjectExtensions>
-  <!-- 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 - 171
csharp/src/ProtocolBuffers/ProtocolBuffers.SL40.csproj

@@ -1,171 +0,0 @@
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" xmlns:cs="urn:schemas-csharp-project:template">
-  <PropertyGroup>
-    <EnvironmentFlavor>SILVERLIGHT</EnvironmentFlavor>
-    <EnvironmentTemplate>SL40</EnvironmentTemplate>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.30729</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{6908BDCE-D925-43F3-94AC-A531E6DF2591}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <AppDesignerFolder>Properties</AppDesignerFolder>
-    <RootNamespace>Google.ProtocolBuffers</RootNamespace>
-    <AssemblyName>Google.ProtocolBuffers</AssemblyName>
-    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
-    <FileAlignment>512</FileAlignment>
-    <SignAssembly>true</SignAssembly>
-    <AssemblyOriginatorKeyFile>..\..\keys\Google.ProtocolBuffers.snk</AssemblyOriginatorKeyFile>
-    <OldToolsVersion>3.5</OldToolsVersion>
-    <ProjectTypeGuids>{A1591282-1198-4647-A2B1-27E5FF5F6F3B};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
-    <SilverlightApplication>false</SilverlightApplication>
-    <ValidateXaml>false</ValidateXaml>
-    <ThrowErrorsInValidation>false</ThrowErrorsInValidation>
-    <SilverlightVersion>v4.0</SilverlightVersion>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>bin\SL40\Debug</OutputPath>
-    <IntermediateOutputPath>obj\SL40\Debug\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>DEBUG;TRACE;$(EnvironmentFlavor);$(EnvironmentTemplate);NOSERIALIZABLE;NOSORTEDLIST</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-    <NoConfig>true</NoConfig>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>pdbonly</DebugType>
-    <Optimize>true</Optimize>
-    <OutputPath>bin\SL40\Release</OutputPath>
-    <IntermediateOutputPath>obj\SL40\Release\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>TRACE;$(EnvironmentFlavor);$(EnvironmentTemplate);NOSERIALIZABLE;NOSORTEDLIST</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-    <NoConfig>true</NoConfig>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="mscorlib" />
-    <Reference Include="System" />
-    <Reference Include="System.Xml" />
-    <Reference Include="System.Core" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="AbstractBuilder.cs" />
-    <Compile Include="AbstractBuilderLite.cs" />
-    <Compile Include="AbstractMessage.cs" />
-    <Compile Include="AbstractMessageLite.cs" />
-    <Compile Include="ByteArray.cs" />
-    <Compile Include="ByteString.cs" />
-    <Compile Include="Collections\Enumerables.cs" />
-    <Compile Include="Collections\IPopsicleList.cs" />
-    <Compile Include="Collections\PopsicleList.cs" />
-    <Compile Include="CodedOutputStream.ComputeSize.cs" />
-    <Compile Include="CustomSerialization.cs" />
-    <Compile Include="Delegates.cs" />
-    <Compile Include="CodedInputStream.cs" />
-    <Compile Include="CodedOutputStream.cs" />
-    <Compile Include="Collections\Dictionaries.cs" />
-    <Compile Include="Collections\Lists.cs" />
-    <Compile Include="Collections\ReadOnlyDictionary.cs" />
-    <Compile Include="DescriptorProtos\CSharpOptions.cs" />
-    <Compile Include="DescriptorProtos\DescriptorProtoFile.cs" />
-    <Compile Include="DescriptorProtos\IDescriptorProto.cs" />
-    <Compile Include="DescriptorProtos\PartialClasses.cs" />
-    <Compile Include="Descriptors\DescriptorBase.cs" />
-    <Compile Include="Descriptors\DescriptorPool.cs" />
-    <Compile Include="Descriptors\DescriptorUtil.cs" />
-    <Compile Include="Descriptors\DescriptorValidationException.cs" />
-    <Compile Include="Descriptors\EnumDescriptor.cs" />
-    <Compile Include="Descriptors\EnumValueDescriptor.cs" />
-    <Compile Include="Descriptors\FieldDescriptor.cs" />
-    <Compile Include="Descriptors\FieldMappingAttribute.cs" />
-    <Compile Include="Descriptors\FieldType.cs" />
-    <Compile Include="Descriptors\FileDescriptor.cs" />
-    <Compile Include="Descriptors\IDescriptor.cs" />
-    <Compile Include="Descriptors\IndexedDescriptorBase.cs" />
-    <Compile Include="Descriptors\MappedType.cs" />
-    <Compile Include="Descriptors\MessageDescriptor.cs" />
-    <Compile Include="Descriptors\MethodDescriptor.cs" />
-    <Compile Include="Descriptors\PackageDescriptor.cs" />
-    <Compile Include="Descriptors\ServiceDescriptor.cs" />
-    <Compile Include="DynamicMessage.cs" />
-    <Compile Include="EnumLite.cs" />
-    <Compile Include="ExtendableBuilder.cs" />
-    <Compile Include="ExtendableBuilderLite.cs" />
-    <Compile Include="ExtendableMessage.cs" />
-    <Compile Include="ExtendableMessageLite.cs" />
-    <Compile Include="ExtensionInfo.cs" />
-    <Compile Include="ExtensionRegistry.cs" />
-    <Compile Include="ExtensionRegistryLite.cs" />
-    <Compile Include="FieldAccess\ReflectionUtil.cs" />
-    <Compile Include="FieldAccess\SingleEnumAccessor.cs" />
-    <Compile Include="FieldAccess\SingleMessageAccessor.cs" />
-    <Compile Include="FieldAccess\SinglePrimitiveAccessor.cs" />
-    <Compile Include="FieldAccess\RepeatedPrimitiveAccessor.cs" />
-    <Compile Include="FieldAccess\RepeatedEnumAccessor.cs" />
-    <Compile Include="FieldAccess\IFieldAccessor.cs" />
-    <Compile Include="FieldAccess\FieldAccessorTable.cs" />
-    <Compile Include="FieldAccess\RepeatedMessageAccessor.cs" />
-    <Compile Include="FieldSet.cs" />
-    <Compile Include="FrameworkPortability.cs" />
-    <Compile Include="GeneratedBuilder.cs" />
-    <Compile Include="GeneratedBuilderLite.cs" />
-    <Compile Include="GeneratedExtensionLite.cs" />
-    <Compile Include="GeneratedMessageLite.cs" />
-    <Compile Include="GeneratedRepeatExtension.cs" />
-    <Compile Include="GeneratedSingleExtension.cs" />
-    <Compile Include="GeneratedMessage.cs" />
-    <Compile Include="IBuilder.cs" />
-    <Compile Include="GeneratedExtensionBase.cs" />
-    <Compile Include="IBuilderLite.cs" />
-    <Compile Include="ICodedInputStream.cs" />
-    <Compile Include="ICodedOutputStream.cs" />
-    <Compile Include="IMessage.cs" />
-    <Compile Include="IMessageLite.cs" />
-    <Compile Include="InvalidProtocolBufferException.cs" />
-    <Compile Include="IRpcChannel.cs" />
-    <Compile Include="IRpcController.cs" />
-    <Compile Include="IRpcDispatch.cs" />
-    <Compile Include="IService.cs" />
-    <Compile Include="MessageStreamIterator.cs" />
-    <Compile Include="MessageStreamWriter.cs" />
-    <Compile Include="MessageUtil.cs" />
-    <Compile Include="NameHelpers.cs" />
-    <Compile Include="Properties\AssemblyInfo.cs" />
-    <Compile Include="RpcUtil.cs" />
-    <Compile Include="SortedList.cs" />
-    <Compile Include="TextFormat.cs" />
-    <Compile Include="TextGenerator.cs" />
-    <Compile Include="TextTokenizer.cs" />
-    <Compile Include="ThrowHelper.cs" />
-    <Compile Include="UninitializedMessageException.cs" />
-    <Compile Include="UnknownField.cs" />
-    <Compile Include="UnknownFieldSet.cs" />
-    <Compile Include="WireFormat.cs" />
-  </ItemGroup>
-  <Import Project="$(MSBuildExtensionsPath32)\Microsoft\Silverlight\$(SilverlightVersion)\Microsoft.Silverlight.CSharp.targets" />
-  <ProjectExtensions>
-    <VisualStudio>
-      <FlavorProperties GUID="{A1591282-1198-4647-A2B1-27E5FF5F6F3B}">
-        <SilverlightProjectProperties>
-          <StartAction>OfflineApplication</StartAction>
-        </SilverlightProjectProperties>
-      </FlavorProperties>
-    </VisualStudio>
-  </ProjectExtensions>
-  <!-- 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 - 111
csharp/src/ProtocolBuffers/ProtocolBuffersLite.CF20.csproj

@@ -1,111 +0,0 @@
-<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup>
-    <EnvironmentFlavor>COMPACT_FRAMEWORK</EnvironmentFlavor>
-    <EnvironmentTemplate>CF20</EnvironmentTemplate>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.30729</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{6969BDCE-D925-43F3-94AC-A531E6DF2591}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <AppDesignerFolder>Properties</AppDesignerFolder>
-    <RootNamespace>Google.ProtocolBuffers</RootNamespace>
-    <AssemblyName>Google.ProtocolBuffersLite</AssemblyName>
-    <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
-    <FileAlignment>512</FileAlignment>
-    <SignAssembly>true</SignAssembly>
-    <AssemblyOriginatorKeyFile>..\..\keys\Google.ProtocolBuffers.snk</AssemblyOriginatorKeyFile>
-    <OldToolsVersion>3.5</OldToolsVersion>
-    <ProjectTypeGuids>{4D628B5B-2FBC-4AA6-8C16-197242AEB884};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
-    <PlatformFamilyName>Smartphone</PlatformFamilyName>
-    <PlatformID>f27da329-3269-4191-98e0-c87d3d7f1db9</PlatformID>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>bin\CF20\Debug</OutputPath>
-    <IntermediateOutputPath>obj\CF20\Debug\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>DEBUG;TRACE;LITE;$(EnvironmentFlavor);$(EnvironmentTemplate);NOSERIALIZABLE;NOFILEVERSION;NOEXTENSIONS</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-    <NoConfig>true</NoConfig>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>pdbonly</DebugType>
-    <Optimize>true</Optimize>
-    <OutputPath>bin\CF20\Release</OutputPath>
-    <IntermediateOutputPath>obj\CF20\Release\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>TRACE;LITE;$(EnvironmentFlavor);$(EnvironmentTemplate);NOSERIALIZABLE;NOFILEVERSION;NOEXTENSIONS</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-    <NoConfig>true</NoConfig>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="mscorlib" />
-    <Reference Include="System" />
-    <Reference Include="System.Xml" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="AbstractBuilderLite.cs" />
-    <Compile Include="AbstractMessageLite.cs" />
-    <Compile Include="ByteArray.cs" />
-    <Compile Include="CodedOutputStream.ComputeSize.cs" />
-    <Compile Include="Collections\Dictionaries.cs" />
-    <Compile Include="Collections\Enumerables.cs" />
-    <Compile Include="Collections\IPopsicleList.cs" />
-    <Compile Include="Collections\Lists.cs" />
-    <Compile Include="Collections\PopsicleList.cs" />
-    <Compile Include="Collections\ReadOnlyDictionary.cs" />
-    <Compile Include="CustomSerialization.cs" />
-    <Compile Include="Descriptors\FieldMappingAttribute.cs" />
-    <Compile Include="Descriptors\FieldType.cs" />
-    <Compile Include="Descriptors\MappedType.cs" />
-    <Compile Include="EnumLite.cs" />
-    <Compile Include="ExtendableBuilderLite.cs" />
-    <Compile Include="ExtendableMessageLite.cs" />
-    <Compile Include="FieldSet.cs" />
-    <Compile Include="FrameworkPortability.cs" />
-    <Compile Include="GeneratedBuilderLite.cs" />
-    <Compile Include="GeneratedExtensionLite.cs" />
-    <Compile Include="GeneratedMessageLite.cs" />
-    <Compile Include="ICodedInputStream.cs" />
-    <Compile Include="ICodedOutputStream.cs" />
-    <Compile Include="IRpcDispatch.cs" />
-    <Compile Include="Properties\AssemblyInfo.cs" />
-    <Compile Include="ByteString.cs" />
-    <Compile Include="CodedInputStream.cs" />
-    <Compile Include="CodedOutputStream.cs" />
-    <Compile Include="ExtensionRegistryLite.cs" />
-    <Compile Include="IBuilderLite.cs" />
-    <Compile Include="IMessageLite.cs" />
-    <Compile Include="InvalidProtocolBufferException.cs" />
-    <Compile Include="SortedList.cs" />
-    <Compile Include="ThrowHelper.cs" />
-    <Compile Include="UninitializedMessageException.cs" />
-    <Compile Include="WireFormat.cs" />
-  </ItemGroup>
-  <Import Project="$(MSBuildBinPath)\Microsoft.CompactFramework.CSharp.targets" />
-  <ProjectExtensions>
-    <VisualStudio>
-      <FlavorProperties GUID="{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}">
-        <HostingProcess disable="1" />
-      </FlavorProperties>
-    </VisualStudio>
-  </ProjectExtensions>
-  <!-- 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 - 112
csharp/src/ProtocolBuffers/ProtocolBuffersLite.CF35.csproj

@@ -1,112 +0,0 @@
-<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup>
-    <EnvironmentFlavor>COMPACT_FRAMEWORK</EnvironmentFlavor>
-    <EnvironmentTemplate>CF35</EnvironmentTemplate>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.30729</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{6969BDCE-D925-43F3-94AC-A531E6DF2591}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <AppDesignerFolder>Properties</AppDesignerFolder>
-    <RootNamespace>Google.ProtocolBuffers</RootNamespace>
-    <AssemblyName>Google.ProtocolBuffersLite</AssemblyName>
-    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
-    <FileAlignment>512</FileAlignment>
-    <SignAssembly>true</SignAssembly>
-    <AssemblyOriginatorKeyFile>..\..\keys\Google.ProtocolBuffers.snk</AssemblyOriginatorKeyFile>
-    <OldToolsVersion>3.5</OldToolsVersion>
-    <ProjectTypeGuids>{4D628B5B-2FBC-4AA6-8C16-197242AEB884};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
-    <PlatformFamilyName>Smartphone</PlatformFamilyName>
-    <PlatformID>f27da329-3269-4191-98e0-c87d3d7f1db9</PlatformID>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>bin\CF35\Debug</OutputPath>
-    <IntermediateOutputPath>obj\CF35\Debug\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>DEBUG;TRACE;LITE;$(EnvironmentFlavor);$(EnvironmentTemplate);NOSERIALIZABLE;NOFILEVERSION</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-    <NoConfig>true</NoConfig>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>pdbonly</DebugType>
-    <Optimize>true</Optimize>
-    <OutputPath>bin\CF35\Release</OutputPath>
-    <IntermediateOutputPath>obj\CF35\Release\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>TRACE;LITE;$(EnvironmentFlavor);$(EnvironmentTemplate);NOSERIALIZABLE;NOFILEVERSION</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-    <NoConfig>true</NoConfig>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="mscorlib" />
-    <Reference Include="System" />
-    <Reference Include="System.Xml" />
-    <Reference Include="System.Core" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="AbstractBuilderLite.cs" />
-    <Compile Include="AbstractMessageLite.cs" />
-    <Compile Include="ByteArray.cs" />
-    <Compile Include="CodedOutputStream.ComputeSize.cs" />
-    <Compile Include="Collections\Dictionaries.cs" />
-    <Compile Include="Collections\Enumerables.cs" />
-    <Compile Include="Collections\IPopsicleList.cs" />
-    <Compile Include="Collections\Lists.cs" />
-    <Compile Include="Collections\PopsicleList.cs" />
-    <Compile Include="Collections\ReadOnlyDictionary.cs" />
-    <Compile Include="CustomSerialization.cs" />
-    <Compile Include="Descriptors\FieldMappingAttribute.cs" />
-    <Compile Include="Descriptors\FieldType.cs" />
-    <Compile Include="Descriptors\MappedType.cs" />
-    <Compile Include="EnumLite.cs" />
-    <Compile Include="ExtendableBuilderLite.cs" />
-    <Compile Include="ExtendableMessageLite.cs" />
-    <Compile Include="FieldSet.cs" />
-    <Compile Include="FrameworkPortability.cs" />
-    <Compile Include="GeneratedBuilderLite.cs" />
-    <Compile Include="GeneratedExtensionLite.cs" />
-    <Compile Include="GeneratedMessageLite.cs" />
-    <Compile Include="ICodedInputStream.cs" />
-    <Compile Include="ICodedOutputStream.cs" />
-    <Compile Include="IRpcDispatch.cs" />
-    <Compile Include="Properties\AssemblyInfo.cs" />
-    <Compile Include="ByteString.cs" />
-    <Compile Include="CodedInputStream.cs" />
-    <Compile Include="CodedOutputStream.cs" />
-    <Compile Include="ExtensionRegistryLite.cs" />
-    <Compile Include="IBuilderLite.cs" />
-    <Compile Include="IMessageLite.cs" />
-    <Compile Include="InvalidProtocolBufferException.cs" />
-    <Compile Include="SortedList.cs" />
-    <Compile Include="ThrowHelper.cs" />
-    <Compile Include="UninitializedMessageException.cs" />
-    <Compile Include="WireFormat.cs" />
-  </ItemGroup>
-  <Import Project="$(MSBuildBinPath)\Microsoft.CompactFramework.CSharp.targets" />
-  <ProjectExtensions>
-    <VisualStudio>
-      <FlavorProperties GUID="{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}">
-        <HostingProcess disable="1" />
-      </FlavorProperties>
-    </VisualStudio>
-  </ProjectExtensions>
-  <!-- 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 - 99
csharp/src/ProtocolBuffers/ProtocolBuffersLite.NET20.csproj

@@ -1,99 +0,0 @@
-<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup>
-    <EnvironmentFlavor>CLIENTPROFILE</EnvironmentFlavor>
-    <EnvironmentTemplate>NET20</EnvironmentTemplate>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.30729</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{6969BDCE-D925-43F3-94AC-A531E6DF2591}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <AppDesignerFolder>Properties</AppDesignerFolder>
-    <RootNamespace>Google.ProtocolBuffers</RootNamespace>
-    <AssemblyName>Google.ProtocolBuffersLite</AssemblyName>
-    <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
-    <FileAlignment>512</FileAlignment>
-    <SignAssembly>true</SignAssembly>
-    <AssemblyOriginatorKeyFile>..\..\keys\Google.ProtocolBuffers.snk</AssemblyOriginatorKeyFile>
-    <OldToolsVersion>3.5</OldToolsVersion>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>bin\NET20\Debug</OutputPath>
-    <IntermediateOutputPath>obj\NET20\Debug\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>DEBUG;TRACE;LITE;$(EnvironmentFlavor);$(EnvironmentTemplate);NOEXTENSIONS</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>pdbonly</DebugType>
-    <Optimize>true</Optimize>
-    <OutputPath>bin\NET20\Release</OutputPath>
-    <IntermediateOutputPath>obj\NET20\Release\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>TRACE;LITE;$(EnvironmentFlavor);$(EnvironmentTemplate);NOEXTENSIONS</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="mscorlib" />
-    <Reference Include="System" />
-    <Reference Include="System.Xml" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="AbstractBuilderLite.cs" />
-    <Compile Include="AbstractMessageLite.cs" />
-    <Compile Include="ByteArray.cs" />
-    <Compile Include="CodedOutputStream.ComputeSize.cs" />
-    <Compile Include="Collections\Dictionaries.cs" />
-    <Compile Include="Collections\Enumerables.cs" />
-    <Compile Include="Collections\IPopsicleList.cs" />
-    <Compile Include="Collections\Lists.cs" />
-    <Compile Include="Collections\PopsicleList.cs" />
-    <Compile Include="Collections\ReadOnlyDictionary.cs" />
-    <Compile Include="CustomSerialization.cs" />
-    <Compile Include="Descriptors\FieldMappingAttribute.cs" />
-    <Compile Include="Descriptors\FieldType.cs" />
-    <Compile Include="Descriptors\MappedType.cs" />
-    <Compile Include="EnumLite.cs" />
-    <Compile Include="ExtendableBuilderLite.cs" />
-    <Compile Include="ExtendableMessageLite.cs" />
-    <Compile Include="FieldSet.cs" />
-    <Compile Include="FrameworkPortability.cs" />
-    <Compile Include="GeneratedBuilderLite.cs" />
-    <Compile Include="GeneratedExtensionLite.cs" />
-    <Compile Include="GeneratedMessageLite.cs" />
-    <Compile Include="ICodedInputStream.cs" />
-    <Compile Include="ICodedOutputStream.cs" />
-    <Compile Include="IRpcDispatch.cs" />
-    <Compile Include="Properties\AssemblyInfo.cs" />
-    <Compile Include="ByteString.cs" />
-    <Compile Include="CodedInputStream.cs" />
-    <Compile Include="CodedOutputStream.cs" />
-    <Compile Include="ExtensionRegistryLite.cs" />
-    <Compile Include="IBuilderLite.cs" />
-    <Compile Include="IMessageLite.cs" />
-    <Compile Include="InvalidProtocolBufferException.cs" />
-    <Compile Include="SortedList.cs" />
-    <Compile Include="ThrowHelper.cs" />
-    <Compile Include="UninitializedMessageException.cs" />
-    <Compile Include="WireFormat.cs" />
-  </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 - 100
csharp/src/ProtocolBuffers/ProtocolBuffersLite.NET35.csproj

@@ -1,100 +0,0 @@
-<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup>
-    <EnvironmentFlavor>CLIENTPROFILE</EnvironmentFlavor>
-    <EnvironmentTemplate>NET35</EnvironmentTemplate>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.30729</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{6969BDCE-D925-43F3-94AC-A531E6DF2591}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <AppDesignerFolder>Properties</AppDesignerFolder>
-    <RootNamespace>Google.ProtocolBuffers</RootNamespace>
-    <AssemblyName>Google.ProtocolBuffersLite</AssemblyName>
-    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
-    <FileAlignment>512</FileAlignment>
-    <SignAssembly>true</SignAssembly>
-    <AssemblyOriginatorKeyFile>..\..\keys\Google.ProtocolBuffers.snk</AssemblyOriginatorKeyFile>
-    <OldToolsVersion>3.5</OldToolsVersion>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>bin\NET35\Debug</OutputPath>
-    <IntermediateOutputPath>obj\NET35\Debug\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>DEBUG;TRACE;LITE;$(EnvironmentFlavor);$(EnvironmentTemplate)</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>pdbonly</DebugType>
-    <Optimize>true</Optimize>
-    <OutputPath>bin\NET35\Release</OutputPath>
-    <IntermediateOutputPath>obj\NET35\Release\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>TRACE;LITE;$(EnvironmentFlavor);$(EnvironmentTemplate)</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="mscorlib" />
-    <Reference Include="System" />
-    <Reference Include="System.Xml" />
-    <Reference Include="System.Core" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="AbstractBuilderLite.cs" />
-    <Compile Include="AbstractMessageLite.cs" />
-    <Compile Include="ByteArray.cs" />
-    <Compile Include="CodedOutputStream.ComputeSize.cs" />
-    <Compile Include="Collections\Dictionaries.cs" />
-    <Compile Include="Collections\Enumerables.cs" />
-    <Compile Include="Collections\IPopsicleList.cs" />
-    <Compile Include="Collections\Lists.cs" />
-    <Compile Include="Collections\PopsicleList.cs" />
-    <Compile Include="Collections\ReadOnlyDictionary.cs" />
-    <Compile Include="CustomSerialization.cs" />
-    <Compile Include="Descriptors\FieldMappingAttribute.cs" />
-    <Compile Include="Descriptors\FieldType.cs" />
-    <Compile Include="Descriptors\MappedType.cs" />
-    <Compile Include="EnumLite.cs" />
-    <Compile Include="ExtendableBuilderLite.cs" />
-    <Compile Include="ExtendableMessageLite.cs" />
-    <Compile Include="FieldSet.cs" />
-    <Compile Include="FrameworkPortability.cs" />
-    <Compile Include="GeneratedBuilderLite.cs" />
-    <Compile Include="GeneratedExtensionLite.cs" />
-    <Compile Include="GeneratedMessageLite.cs" />
-    <Compile Include="ICodedInputStream.cs" />
-    <Compile Include="ICodedOutputStream.cs" />
-    <Compile Include="IRpcDispatch.cs" />
-    <Compile Include="Properties\AssemblyInfo.cs" />
-    <Compile Include="ByteString.cs" />
-    <Compile Include="CodedInputStream.cs" />
-    <Compile Include="CodedOutputStream.cs" />
-    <Compile Include="ExtensionRegistryLite.cs" />
-    <Compile Include="IBuilderLite.cs" />
-    <Compile Include="IMessageLite.cs" />
-    <Compile Include="InvalidProtocolBufferException.cs" />
-    <Compile Include="SortedList.cs" />
-    <Compile Include="ThrowHelper.cs" />
-    <Compile Include="UninitializedMessageException.cs" />
-    <Compile Include="WireFormat.cs" />
-  </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 - 100
csharp/src/ProtocolBuffers/ProtocolBuffersLite.NET40.csproj

@@ -1,100 +0,0 @@
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
-  <PropertyGroup>
-    <EnvironmentFlavor>CLIENTPROFILE</EnvironmentFlavor>
-    <EnvironmentTemplate>NET40</EnvironmentTemplate>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.30729</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{6969BDCE-D925-43F3-94AC-A531E6DF2591}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <AppDesignerFolder>Properties</AppDesignerFolder>
-    <RootNamespace>Google.ProtocolBuffers</RootNamespace>
-    <AssemblyName>Google.ProtocolBuffersLite</AssemblyName>
-    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
-    <FileAlignment>512</FileAlignment>
-    <SignAssembly>true</SignAssembly>
-    <AssemblyOriginatorKeyFile>..\..\keys\Google.ProtocolBuffers.snk</AssemblyOriginatorKeyFile>
-    <OldToolsVersion>3.5</OldToolsVersion>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>bin\NET40\Debug</OutputPath>
-    <IntermediateOutputPath>obj\NET40\Debug\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>DEBUG;TRACE;LITE;$(EnvironmentFlavor);$(EnvironmentTemplate)</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>pdbonly</DebugType>
-    <Optimize>true</Optimize>
-    <OutputPath>bin\NET40\Release</OutputPath>
-    <IntermediateOutputPath>obj\NET40\Release\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>TRACE;LITE;$(EnvironmentFlavor);$(EnvironmentTemplate)</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="mscorlib" />
-    <Reference Include="System" />
-    <Reference Include="System.Xml" />
-    <Reference Include="System.Core" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="AbstractBuilderLite.cs" />
-    <Compile Include="AbstractMessageLite.cs" />
-    <Compile Include="ByteArray.cs" />
-    <Compile Include="CodedOutputStream.ComputeSize.cs" />
-    <Compile Include="Collections\Dictionaries.cs" />
-    <Compile Include="Collections\Enumerables.cs" />
-    <Compile Include="Collections\IPopsicleList.cs" />
-    <Compile Include="Collections\Lists.cs" />
-    <Compile Include="Collections\PopsicleList.cs" />
-    <Compile Include="Collections\ReadOnlyDictionary.cs" />
-    <Compile Include="CustomSerialization.cs" />
-    <Compile Include="Descriptors\FieldMappingAttribute.cs" />
-    <Compile Include="Descriptors\FieldType.cs" />
-    <Compile Include="Descriptors\MappedType.cs" />
-    <Compile Include="EnumLite.cs" />
-    <Compile Include="ExtendableBuilderLite.cs" />
-    <Compile Include="ExtendableMessageLite.cs" />
-    <Compile Include="FieldSet.cs" />
-    <Compile Include="FrameworkPortability.cs" />
-    <Compile Include="GeneratedBuilderLite.cs" />
-    <Compile Include="GeneratedExtensionLite.cs" />
-    <Compile Include="GeneratedMessageLite.cs" />
-    <Compile Include="ICodedInputStream.cs" />
-    <Compile Include="ICodedOutputStream.cs" />
-    <Compile Include="IRpcDispatch.cs" />
-    <Compile Include="Properties\AssemblyInfo.cs" />
-    <Compile Include="ByteString.cs" />
-    <Compile Include="CodedInputStream.cs" />
-    <Compile Include="CodedOutputStream.cs" />
-    <Compile Include="ExtensionRegistryLite.cs" />
-    <Compile Include="IBuilderLite.cs" />
-    <Compile Include="IMessageLite.cs" />
-    <Compile Include="InvalidProtocolBufferException.cs" />
-    <Compile Include="SortedList.cs" />
-    <Compile Include="ThrowHelper.cs" />
-    <Compile Include="UninitializedMessageException.cs" />
-    <Compile Include="WireFormat.cs" />
-  </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 - 103
csharp/src/ProtocolBuffers/ProtocolBuffersLite.PL40.csproj

@@ -1,103 +0,0 @@
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" xmlns:cs="urn:schemas-csharp-project:template">
-  <PropertyGroup>
-    <EnvironmentFlavor>PORTABLE_LIBRARY</EnvironmentFlavor>
-    <EnvironmentTemplate>PL40</EnvironmentTemplate>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.30729</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{6969BDCE-D925-43F3-94AC-A531E6DF2591}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <AppDesignerFolder>Properties</AppDesignerFolder>
-    <RootNamespace>Google.ProtocolBuffers</RootNamespace>
-    <AssemblyName>Google.ProtocolBuffersLite</AssemblyName>
-    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
-    <FileAlignment>512</FileAlignment>
-    <SignAssembly>true</SignAssembly>
-    <AssemblyOriginatorKeyFile>..\..\keys\Google.ProtocolBuffers.snk</AssemblyOriginatorKeyFile>
-    <OldToolsVersion>3.5</OldToolsVersion>
-    <MinimumVisualStudioVersion>10.0</MinimumVisualStudioVersion>
-    <ProjectTypeGuids>{786C830F-07A1-408B-BD7F-6EE04809D6DB};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
-    <TargetFrameworkProfile>Profile1</TargetFrameworkProfile>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>bin\PL40\Debug</OutputPath>
-    <IntermediateOutputPath>obj\PL40\Debug\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>DEBUG;TRACE;LITE;$(EnvironmentFlavor);$(EnvironmentTemplate);NOSERIALIZABLE;NOSORTEDLIST</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>pdbonly</DebugType>
-    <Optimize>true</Optimize>
-    <OutputPath>bin\PL40\Release</OutputPath>
-    <IntermediateOutputPath>obj\PL40\Release\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>TRACE;LITE;$(EnvironmentFlavor);$(EnvironmentTemplate);NOSERIALIZABLE;NOSORTEDLIST</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="mscorlib" />
-    <Reference Include="System" />
-    <Reference Include="System.Xml" />
-    <Reference Include="System.Core" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="AbstractBuilderLite.cs" />
-    <Compile Include="AbstractMessageLite.cs" />
-    <Compile Include="ByteArray.cs" />
-    <Compile Include="CodedOutputStream.ComputeSize.cs" />
-    <Compile Include="Collections\Dictionaries.cs" />
-    <Compile Include="Collections\Enumerables.cs" />
-    <Compile Include="Collections\IPopsicleList.cs" />
-    <Compile Include="Collections\Lists.cs" />
-    <Compile Include="Collections\PopsicleList.cs" />
-    <Compile Include="Collections\ReadOnlyDictionary.cs" />
-    <Compile Include="CustomSerialization.cs" />
-    <Compile Include="Descriptors\FieldMappingAttribute.cs" />
-    <Compile Include="Descriptors\FieldType.cs" />
-    <Compile Include="Descriptors\MappedType.cs" />
-    <Compile Include="EnumLite.cs" />
-    <Compile Include="ExtendableBuilderLite.cs" />
-    <Compile Include="ExtendableMessageLite.cs" />
-    <Compile Include="FieldSet.cs" />
-    <Compile Include="FrameworkPortability.cs" />
-    <Compile Include="GeneratedBuilderLite.cs" />
-    <Compile Include="GeneratedExtensionLite.cs" />
-    <Compile Include="GeneratedMessageLite.cs" />
-    <Compile Include="ICodedInputStream.cs" />
-    <Compile Include="ICodedOutputStream.cs" />
-    <Compile Include="IRpcDispatch.cs" />
-    <Compile Include="Properties\AssemblyInfo.cs" />
-    <Compile Include="ByteString.cs" />
-    <Compile Include="CodedInputStream.cs" />
-    <Compile Include="CodedOutputStream.cs" />
-    <Compile Include="ExtensionRegistryLite.cs" />
-    <Compile Include="IBuilderLite.cs" />
-    <Compile Include="IMessageLite.cs" />
-    <Compile Include="InvalidProtocolBufferException.cs" />
-    <Compile Include="SortedList.cs" />
-    <Compile Include="ThrowHelper.cs" />
-    <Compile Include="UninitializedMessageException.cs" />
-    <Compile Include="WireFormat.cs" />
-  </ItemGroup>
-  <Import Project="$(MSBuildExtensionsPath32)\Microsoft\Portable\$(TargetFrameworkVersion)\Microsoft.Portable.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 - 114
csharp/src/ProtocolBuffers/ProtocolBuffersLite.SL20.csproj

@@ -1,114 +0,0 @@
-<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" xmlns:cs="urn:schemas-csharp-project:template">
-  <PropertyGroup>
-    <EnvironmentFlavor>SILVERLIGHT</EnvironmentFlavor>
-    <EnvironmentTemplate>SL20</EnvironmentTemplate>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.30729</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{6969BDCE-D925-43F3-94AC-A531E6DF2591}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <AppDesignerFolder>Properties</AppDesignerFolder>
-    <RootNamespace>Google.ProtocolBuffers</RootNamespace>
-    <AssemblyName>Google.ProtocolBuffersLite</AssemblyName>
-    <TargetFrameworkVersion>v2.0</TargetFrameworkVersion>
-    <FileAlignment>512</FileAlignment>
-    <SignAssembly>true</SignAssembly>
-    <AssemblyOriginatorKeyFile>..\..\keys\Google.ProtocolBuffers.snk</AssemblyOriginatorKeyFile>
-    <OldToolsVersion>3.5</OldToolsVersion>
-    <ProjectTypeGuids>{A1591282-1198-4647-A2B1-27E5FF5F6F3B};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
-    <SilverlightApplication>false</SilverlightApplication>
-    <ValidateXaml>false</ValidateXaml>
-    <ThrowErrorsInValidation>false</ThrowErrorsInValidation>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>bin\SL20\Debug</OutputPath>
-    <IntermediateOutputPath>obj\SL20\Debug\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>DEBUG;TRACE;LITE;$(EnvironmentFlavor);$(EnvironmentTemplate);NOSERIALIZABLE;NOSORTEDLIST;NOEXTENSIONS</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-    <NoConfig>true</NoConfig>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>pdbonly</DebugType>
-    <Optimize>true</Optimize>
-    <OutputPath>bin\SL20\Release</OutputPath>
-    <IntermediateOutputPath>obj\SL20\Release\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>TRACE;LITE;$(EnvironmentFlavor);$(EnvironmentTemplate);NOSERIALIZABLE;NOSORTEDLIST;NOEXTENSIONS</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-    <NoConfig>true</NoConfig>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="mscorlib" />
-    <Reference Include="System" />
-    <Reference Include="System.Xml" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="AbstractBuilderLite.cs" />
-    <Compile Include="AbstractMessageLite.cs" />
-    <Compile Include="ByteArray.cs" />
-    <Compile Include="CodedOutputStream.ComputeSize.cs" />
-    <Compile Include="Collections\Dictionaries.cs" />
-    <Compile Include="Collections\Enumerables.cs" />
-    <Compile Include="Collections\IPopsicleList.cs" />
-    <Compile Include="Collections\Lists.cs" />
-    <Compile Include="Collections\PopsicleList.cs" />
-    <Compile Include="Collections\ReadOnlyDictionary.cs" />
-    <Compile Include="CustomSerialization.cs" />
-    <Compile Include="Descriptors\FieldMappingAttribute.cs" />
-    <Compile Include="Descriptors\FieldType.cs" />
-    <Compile Include="Descriptors\MappedType.cs" />
-    <Compile Include="EnumLite.cs" />
-    <Compile Include="ExtendableBuilderLite.cs" />
-    <Compile Include="ExtendableMessageLite.cs" />
-    <Compile Include="FieldSet.cs" />
-    <Compile Include="FrameworkPortability.cs" />
-    <Compile Include="GeneratedBuilderLite.cs" />
-    <Compile Include="GeneratedExtensionLite.cs" />
-    <Compile Include="GeneratedMessageLite.cs" />
-    <Compile Include="ICodedInputStream.cs" />
-    <Compile Include="ICodedOutputStream.cs" />
-    <Compile Include="IRpcDispatch.cs" />
-    <Compile Include="Properties\AssemblyInfo.cs" />
-    <Compile Include="ByteString.cs" />
-    <Compile Include="CodedInputStream.cs" />
-    <Compile Include="CodedOutputStream.cs" />
-    <Compile Include="ExtensionRegistryLite.cs" />
-    <Compile Include="IBuilderLite.cs" />
-    <Compile Include="IMessageLite.cs" />
-    <Compile Include="InvalidProtocolBufferException.cs" />
-    <Compile Include="SortedList.cs" />
-    <Compile Include="ThrowHelper.cs" />
-    <Compile Include="UninitializedMessageException.cs" />
-    <Compile Include="WireFormat.cs" />
-  </ItemGroup>
-  <Import Project="$(MSBuildExtensionsPath32)\Microsoft\Silverlight\v2.0\Microsoft.Silverlight.CSharp.targets" />
-  <ProjectExtensions>
-    <VisualStudio>
-      <FlavorProperties GUID="{A1591282-1198-4647-A2B1-27E5FF5F6F3B}">
-        <SilverlightProjectProperties>
-          <StartAction>OfflineApplication</StartAction>
-        </SilverlightProjectProperties>
-      </FlavorProperties>
-    </VisualStudio>
-  </ProjectExtensions>
-  <!-- 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 - 115
csharp/src/ProtocolBuffers/ProtocolBuffersLite.SL30.csproj

@@ -1,115 +0,0 @@
-<Project ToolsVersion="3.5" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" xmlns:cs="urn:schemas-csharp-project:template">
-  <PropertyGroup>
-    <EnvironmentFlavor>SILVERLIGHT</EnvironmentFlavor>
-    <EnvironmentTemplate>SL30</EnvironmentTemplate>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.30729</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{6969BDCE-D925-43F3-94AC-A531E6DF2591}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <AppDesignerFolder>Properties</AppDesignerFolder>
-    <RootNamespace>Google.ProtocolBuffers</RootNamespace>
-    <AssemblyName>Google.ProtocolBuffersLite</AssemblyName>
-    <TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
-    <FileAlignment>512</FileAlignment>
-    <SignAssembly>true</SignAssembly>
-    <AssemblyOriginatorKeyFile>..\..\keys\Google.ProtocolBuffers.snk</AssemblyOriginatorKeyFile>
-    <OldToolsVersion>3.5</OldToolsVersion>
-    <ProjectTypeGuids>{A1591282-1198-4647-A2B1-27E5FF5F6F3B};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
-    <SilverlightApplication>false</SilverlightApplication>
-    <ValidateXaml>false</ValidateXaml>
-    <ThrowErrorsInValidation>false</ThrowErrorsInValidation>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>bin\SL30\Debug</OutputPath>
-    <IntermediateOutputPath>obj\SL30\Debug\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>DEBUG;TRACE;LITE;$(EnvironmentFlavor);$(EnvironmentTemplate);NOSERIALIZABLE;NOSORTEDLIST</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-    <NoConfig>true</NoConfig>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>pdbonly</DebugType>
-    <Optimize>true</Optimize>
-    <OutputPath>bin\SL30\Release</OutputPath>
-    <IntermediateOutputPath>obj\SL30\Release\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>TRACE;LITE;$(EnvironmentFlavor);$(EnvironmentTemplate);NOSERIALIZABLE;NOSORTEDLIST</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-    <NoConfig>true</NoConfig>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="mscorlib" />
-    <Reference Include="System" />
-    <Reference Include="System.Xml" />
-    <Reference Include="System.Core" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="AbstractBuilderLite.cs" />
-    <Compile Include="AbstractMessageLite.cs" />
-    <Compile Include="ByteArray.cs" />
-    <Compile Include="CodedOutputStream.ComputeSize.cs" />
-    <Compile Include="Collections\Dictionaries.cs" />
-    <Compile Include="Collections\Enumerables.cs" />
-    <Compile Include="Collections\IPopsicleList.cs" />
-    <Compile Include="Collections\Lists.cs" />
-    <Compile Include="Collections\PopsicleList.cs" />
-    <Compile Include="Collections\ReadOnlyDictionary.cs" />
-    <Compile Include="CustomSerialization.cs" />
-    <Compile Include="Descriptors\FieldMappingAttribute.cs" />
-    <Compile Include="Descriptors\FieldType.cs" />
-    <Compile Include="Descriptors\MappedType.cs" />
-    <Compile Include="EnumLite.cs" />
-    <Compile Include="ExtendableBuilderLite.cs" />
-    <Compile Include="ExtendableMessageLite.cs" />
-    <Compile Include="FieldSet.cs" />
-    <Compile Include="FrameworkPortability.cs" />
-    <Compile Include="GeneratedBuilderLite.cs" />
-    <Compile Include="GeneratedExtensionLite.cs" />
-    <Compile Include="GeneratedMessageLite.cs" />
-    <Compile Include="ICodedInputStream.cs" />
-    <Compile Include="ICodedOutputStream.cs" />
-    <Compile Include="IRpcDispatch.cs" />
-    <Compile Include="Properties\AssemblyInfo.cs" />
-    <Compile Include="ByteString.cs" />
-    <Compile Include="CodedInputStream.cs" />
-    <Compile Include="CodedOutputStream.cs" />
-    <Compile Include="ExtensionRegistryLite.cs" />
-    <Compile Include="IBuilderLite.cs" />
-    <Compile Include="IMessageLite.cs" />
-    <Compile Include="InvalidProtocolBufferException.cs" />
-    <Compile Include="SortedList.cs" />
-    <Compile Include="ThrowHelper.cs" />
-    <Compile Include="UninitializedMessageException.cs" />
-    <Compile Include="WireFormat.cs" />
-  </ItemGroup>
-  <Import Project="$(MSBuildExtensionsPath32)\Microsoft\Silverlight\v3.0\Microsoft.Silverlight.CSharp.targets" />
-  <ProjectExtensions>
-    <VisualStudio>
-      <FlavorProperties GUID="{A1591282-1198-4647-A2B1-27E5FF5F6F3B}">
-        <SilverlightProjectProperties>
-          <StartAction>OfflineApplication</StartAction>
-        </SilverlightProjectProperties>
-      </FlavorProperties>
-    </VisualStudio>
-  </ProjectExtensions>
-  <!-- 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 - 116
csharp/src/ProtocolBuffers/ProtocolBuffersLite.SL40.csproj

@@ -1,116 +0,0 @@
-<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" xmlns:cs="urn:schemas-csharp-project:template">
-  <PropertyGroup>
-    <EnvironmentFlavor>SILVERLIGHT</EnvironmentFlavor>
-    <EnvironmentTemplate>SL40</EnvironmentTemplate>
-    <Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
-    <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
-    <ProductVersion>9.0.30729</ProductVersion>
-    <SchemaVersion>2.0</SchemaVersion>
-    <ProjectGuid>{6969BDCE-D925-43F3-94AC-A531E6DF2591}</ProjectGuid>
-    <OutputType>Library</OutputType>
-    <AppDesignerFolder>Properties</AppDesignerFolder>
-    <RootNamespace>Google.ProtocolBuffers</RootNamespace>
-    <AssemblyName>Google.ProtocolBuffersLite</AssemblyName>
-    <TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
-    <FileAlignment>512</FileAlignment>
-    <SignAssembly>true</SignAssembly>
-    <AssemblyOriginatorKeyFile>..\..\keys\Google.ProtocolBuffers.snk</AssemblyOriginatorKeyFile>
-    <OldToolsVersion>3.5</OldToolsVersion>
-    <ProjectTypeGuids>{A1591282-1198-4647-A2B1-27E5FF5F6F3B};{fae04ec0-301f-11d3-bf4b-00c04f79efbc}</ProjectTypeGuids>
-    <SilverlightApplication>false</SilverlightApplication>
-    <ValidateXaml>false</ValidateXaml>
-    <ThrowErrorsInValidation>false</ThrowErrorsInValidation>
-    <SilverlightVersion>v4.0</SilverlightVersion>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
-    <DebugSymbols>true</DebugSymbols>
-    <DebugType>full</DebugType>
-    <Optimize>false</Optimize>
-    <OutputPath>bin\SL40\Debug</OutputPath>
-    <IntermediateOutputPath>obj\SL40\Debug\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>DEBUG;TRACE;LITE;$(EnvironmentFlavor);$(EnvironmentTemplate);NOSERIALIZABLE;NOSORTEDLIST</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-    <NoConfig>true</NoConfig>
-  </PropertyGroup>
-  <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
-    <DebugType>pdbonly</DebugType>
-    <Optimize>true</Optimize>
-    <OutputPath>bin\SL40\Release</OutputPath>
-    <IntermediateOutputPath>obj\SL40\Release\</IntermediateOutputPath>
-    <DocumentationFile>$(OutputPath)\$(AssemblyName).xml</DocumentationFile>
-    <NoWarn>1591, 1570, 1571, 1572, 1573, 1574</NoWarn>
-    <DefineConstants>TRACE;LITE;$(EnvironmentFlavor);$(EnvironmentTemplate);NOSERIALIZABLE;NOSORTEDLIST</DefineConstants>
-    <ErrorReport>prompt</ErrorReport>
-    <WarningLevel>4</WarningLevel>
-    <NoStdLib>true</NoStdLib>
-    <GenerateSerializationAssemblies>Off</GenerateSerializationAssemblies>
-    <NoConfig>true</NoConfig>
-  </PropertyGroup>
-  <ItemGroup>
-    <Reference Include="mscorlib" />
-    <Reference Include="System" />
-    <Reference Include="System.Xml" />
-    <Reference Include="System.Core" />
-  </ItemGroup>
-  <ItemGroup>
-    <Compile Include="AbstractBuilderLite.cs" />
-    <Compile Include="AbstractMessageLite.cs" />
-    <Compile Include="ByteArray.cs" />
-    <Compile Include="CodedOutputStream.ComputeSize.cs" />
-    <Compile Include="Collections\Dictionaries.cs" />
-    <Compile Include="Collections\Enumerables.cs" />
-    <Compile Include="Collections\IPopsicleList.cs" />
-    <Compile Include="Collections\Lists.cs" />
-    <Compile Include="Collections\PopsicleList.cs" />
-    <Compile Include="Collections\ReadOnlyDictionary.cs" />
-    <Compile Include="CustomSerialization.cs" />
-    <Compile Include="Descriptors\FieldMappingAttribute.cs" />
-    <Compile Include="Descriptors\FieldType.cs" />
-    <Compile Include="Descriptors\MappedType.cs" />
-    <Compile Include="EnumLite.cs" />
-    <Compile Include="ExtendableBuilderLite.cs" />
-    <Compile Include="ExtendableMessageLite.cs" />
-    <Compile Include="FieldSet.cs" />
-    <Compile Include="FrameworkPortability.cs" />
-    <Compile Include="GeneratedBuilderLite.cs" />
-    <Compile Include="GeneratedExtensionLite.cs" />
-    <Compile Include="GeneratedMessageLite.cs" />
-    <Compile Include="ICodedInputStream.cs" />
-    <Compile Include="ICodedOutputStream.cs" />
-    <Compile Include="IRpcDispatch.cs" />
-    <Compile Include="Properties\AssemblyInfo.cs" />
-    <Compile Include="ByteString.cs" />
-    <Compile Include="CodedInputStream.cs" />
-    <Compile Include="CodedOutputStream.cs" />
-    <Compile Include="ExtensionRegistryLite.cs" />
-    <Compile Include="IBuilderLite.cs" />
-    <Compile Include="IMessageLite.cs" />
-    <Compile Include="InvalidProtocolBufferException.cs" />
-    <Compile Include="SortedList.cs" />
-    <Compile Include="ThrowHelper.cs" />
-    <Compile Include="UninitializedMessageException.cs" />
-    <Compile Include="WireFormat.cs" />
-  </ItemGroup>
-  <Import Project="$(MSBuildExtensionsPath32)\Microsoft\Silverlight\$(SilverlightVersion)\Microsoft.Silverlight.CSharp.targets" />
-  <ProjectExtensions>
-    <VisualStudio>
-      <FlavorProperties GUID="{A1591282-1198-4647-A2B1-27E5FF5F6F3B}">
-        <SilverlightProjectProperties>
-          <StartAction>OfflineApplication</StartAction>
-        </SilverlightProjectProperties>
-      </FlavorProperties>
-    </VisualStudio>
-  </ProjectExtensions>
-  <!-- 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 - 55
csharp/src/ProtocolBuffersLibrary.CF20.sln

@@ -1,55 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffers", "ProtocolBuffers\ProtocolBuffers.CF20.csproj", "{6908BDCE-D925-43F3-94AC-A531E6DF2591}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLite", "ProtocolBuffers\ProtocolBuffersLite.CF20.csproj", "{6969BDCE-D925-43F3-94AC-A531E6DF2591}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffers.Serialization", "ProtocolBuffers.Serialization\ProtocolBuffers.Serialization.CF20.csproj", "{231391AF-449C-4A39-986C-AD7F270F4750}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLite.Serialization", "ProtocolBuffers.Serialization\ProtocolBuffersLite.Serialization.CF20.csproj", "{E067A59D-9D0A-4A1F-92B1-38E4457241D1}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffers.Test", "ProtocolBuffers.Test\ProtocolBuffers.Test.CF20.csproj", "{DD01ED24-3750-4567-9A23-1DB676A15610}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLite.Test", "ProtocolBuffersLite.Test\ProtocolBuffersLite.Test.CF20.csproj", "{EE01ED24-3750-4567-9A23-1DB676A15610}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLiteMixed.Test", "ProtocolBuffersLite.Test\ProtocolBuffersLiteMixed.Test.CF20.csproj", "{EEFFED24-3750-4567-9A23-1DB676A15610}"
-EndProject
-Global
-	GlobalSection(SolutionConfigurationPlatforms) = preSolution
-		Debug|Any CPU = Debug|Any CPU
-		Release|Any CPU = Release|Any CPU
-	EndGlobalSection
-	GlobalSection(ProjectConfigurationPlatforms) = postSolution
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.Build.0 = Release|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.Build.0 = Release|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Release|Any CPU.Build.0 = Release|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Release|Any CPU.Build.0 = Release|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.Build.0 = Release|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.Build.0 = Release|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.Build.0 = Release|Any CPU
-	EndGlobalSection
-	GlobalSection(SolutionProperties) = preSolution
-		HideSolutionNode = FALSE
-	EndGlobalSection
-EndGlobal

+ 0 - 55
csharp/src/ProtocolBuffersLibrary.CF35.sln

@@ -1,55 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffers", "ProtocolBuffers\ProtocolBuffers.CF35.csproj", "{6908BDCE-D925-43F3-94AC-A531E6DF2591}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLite", "ProtocolBuffers\ProtocolBuffersLite.CF35.csproj", "{6969BDCE-D925-43F3-94AC-A531E6DF2591}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffers.Serialization", "ProtocolBuffers.Serialization\ProtocolBuffers.Serialization.CF35.csproj", "{231391AF-449C-4A39-986C-AD7F270F4750}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLite.Serialization", "ProtocolBuffers.Serialization\ProtocolBuffersLite.Serialization.CF35.csproj", "{E067A59D-9D0A-4A1F-92B1-38E4457241D1}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffers.Test", "ProtocolBuffers.Test\ProtocolBuffers.Test.CF35.csproj", "{DD01ED24-3750-4567-9A23-1DB676A15610}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLite.Test", "ProtocolBuffersLite.Test\ProtocolBuffersLite.Test.CF35.csproj", "{EE01ED24-3750-4567-9A23-1DB676A15610}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLiteMixed.Test", "ProtocolBuffersLite.Test\ProtocolBuffersLiteMixed.Test.CF35.csproj", "{EEFFED24-3750-4567-9A23-1DB676A15610}"
-EndProject
-Global
-	GlobalSection(SolutionConfigurationPlatforms) = preSolution
-		Debug|Any CPU = Debug|Any CPU
-		Release|Any CPU = Release|Any CPU
-	EndGlobalSection
-	GlobalSection(ProjectConfigurationPlatforms) = postSolution
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.Build.0 = Release|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.Build.0 = Release|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Release|Any CPU.Build.0 = Release|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Release|Any CPU.Build.0 = Release|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.Build.0 = Release|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.Build.0 = Release|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.Build.0 = Release|Any CPU
-	EndGlobalSection
-	GlobalSection(SolutionProperties) = preSolution
-		HideSolutionNode = FALSE
-	EndGlobalSection
-EndGlobal

+ 0 - 55
csharp/src/ProtocolBuffersLibrary.NET20.sln

@@ -1,55 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffers", "ProtocolBuffers\ProtocolBuffers.NET20.csproj", "{6908BDCE-D925-43F3-94AC-A531E6DF2591}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLite", "ProtocolBuffers\ProtocolBuffersLite.NET20.csproj", "{6969BDCE-D925-43F3-94AC-A531E6DF2591}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffers.Serialization", "ProtocolBuffers.Serialization\ProtocolBuffers.Serialization.NET20.csproj", "{231391AF-449C-4A39-986C-AD7F270F4750}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLite.Serialization", "ProtocolBuffers.Serialization\ProtocolBuffersLite.Serialization.NET20.csproj", "{E067A59D-9D0A-4A1F-92B1-38E4457241D1}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffers.Test", "ProtocolBuffers.Test\ProtocolBuffers.Test.NET20.csproj", "{DD01ED24-3750-4567-9A23-1DB676A15610}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLite.Test", "ProtocolBuffersLite.Test\ProtocolBuffersLite.Test.NET20.csproj", "{EE01ED24-3750-4567-9A23-1DB676A15610}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLiteMixed.Test", "ProtocolBuffersLite.Test\ProtocolBuffersLiteMixed.Test.NET20.csproj", "{EEFFED24-3750-4567-9A23-1DB676A15610}"
-EndProject
-Global
-	GlobalSection(SolutionConfigurationPlatforms) = preSolution
-		Debug|Any CPU = Debug|Any CPU
-		Release|Any CPU = Release|Any CPU
-	EndGlobalSection
-	GlobalSection(ProjectConfigurationPlatforms) = postSolution
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.Build.0 = Release|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.Build.0 = Release|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Release|Any CPU.Build.0 = Release|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Release|Any CPU.Build.0 = Release|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.Build.0 = Release|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.Build.0 = Release|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.Build.0 = Release|Any CPU
-	EndGlobalSection
-	GlobalSection(SolutionProperties) = preSolution
-		HideSolutionNode = FALSE
-	EndGlobalSection
-EndGlobal

+ 0 - 55
csharp/src/ProtocolBuffersLibrary.NET35.sln

@@ -1,55 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffers", "ProtocolBuffers\ProtocolBuffers.NET35.csproj", "{6908BDCE-D925-43F3-94AC-A531E6DF2591}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLite", "ProtocolBuffers\ProtocolBuffersLite.NET35.csproj", "{6969BDCE-D925-43F3-94AC-A531E6DF2591}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffers.Serialization", "ProtocolBuffers.Serialization\ProtocolBuffers.Serialization.NET35.csproj", "{231391AF-449C-4A39-986C-AD7F270F4750}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLite.Serialization", "ProtocolBuffers.Serialization\ProtocolBuffersLite.Serialization.NET35.csproj", "{E067A59D-9D0A-4A1F-92B1-38E4457241D1}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffers.Test", "ProtocolBuffers.Test\ProtocolBuffers.Test.NET35.csproj", "{DD01ED24-3750-4567-9A23-1DB676A15610}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLite.Test", "ProtocolBuffersLite.Test\ProtocolBuffersLite.Test.NET35.csproj", "{EE01ED24-3750-4567-9A23-1DB676A15610}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLiteMixed.Test", "ProtocolBuffersLite.Test\ProtocolBuffersLiteMixed.Test.NET35.csproj", "{EEFFED24-3750-4567-9A23-1DB676A15610}"
-EndProject
-Global
-	GlobalSection(SolutionConfigurationPlatforms) = preSolution
-		Debug|Any CPU = Debug|Any CPU
-		Release|Any CPU = Release|Any CPU
-	EndGlobalSection
-	GlobalSection(ProjectConfigurationPlatforms) = postSolution
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.Build.0 = Release|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.Build.0 = Release|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Release|Any CPU.Build.0 = Release|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Release|Any CPU.Build.0 = Release|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.Build.0 = Release|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.Build.0 = Release|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.Build.0 = Release|Any CPU
-	EndGlobalSection
-	GlobalSection(SolutionProperties) = preSolution
-		HideSolutionNode = FALSE
-	EndGlobalSection
-EndGlobal

+ 0 - 55
csharp/src/ProtocolBuffersLibrary.NET40.sln

@@ -1,55 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 11.00
-# Visual Studio 2010
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffers", "ProtocolBuffers\ProtocolBuffers.NET40.csproj", "{6908BDCE-D925-43F3-94AC-A531E6DF2591}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLite", "ProtocolBuffers\ProtocolBuffersLite.NET40.csproj", "{6969BDCE-D925-43F3-94AC-A531E6DF2591}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffers.Serialization", "ProtocolBuffers.Serialization\ProtocolBuffers.Serialization.NET40.csproj", "{231391AF-449C-4A39-986C-AD7F270F4750}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLite.Serialization", "ProtocolBuffers.Serialization\ProtocolBuffersLite.Serialization.NET40.csproj", "{E067A59D-9D0A-4A1F-92B1-38E4457241D1}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffers.Test", "ProtocolBuffers.Test\ProtocolBuffers.Test.NET40.csproj", "{DD01ED24-3750-4567-9A23-1DB676A15610}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLite.Test", "ProtocolBuffersLite.Test\ProtocolBuffersLite.Test.NET40.csproj", "{EE01ED24-3750-4567-9A23-1DB676A15610}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLiteMixed.Test", "ProtocolBuffersLite.Test\ProtocolBuffersLiteMixed.Test.NET40.csproj", "{EEFFED24-3750-4567-9A23-1DB676A15610}"
-EndProject
-Global
-	GlobalSection(SolutionConfigurationPlatforms) = preSolution
-		Debug|Any CPU = Debug|Any CPU
-		Release|Any CPU = Release|Any CPU
-	EndGlobalSection
-	GlobalSection(ProjectConfigurationPlatforms) = postSolution
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.Build.0 = Release|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.Build.0 = Release|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Release|Any CPU.Build.0 = Release|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Release|Any CPU.Build.0 = Release|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.Build.0 = Release|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.Build.0 = Release|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.Build.0 = Release|Any CPU
-	EndGlobalSection
-	GlobalSection(SolutionProperties) = preSolution
-		HideSolutionNode = FALSE
-	EndGlobalSection
-EndGlobal

+ 0 - 55
csharp/src/ProtocolBuffersLibrary.PL40.sln

@@ -1,55 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 11.00
-# Visual Studio 2010
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffers", "ProtocolBuffers\ProtocolBuffers.PL40.csproj", "{6908BDCE-D925-43F3-94AC-A531E6DF2591}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLite", "ProtocolBuffers\ProtocolBuffersLite.PL40.csproj", "{6969BDCE-D925-43F3-94AC-A531E6DF2591}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffers.Serialization", "ProtocolBuffers.Serialization\ProtocolBuffers.Serialization.PL40.csproj", "{231391AF-449C-4A39-986C-AD7F270F4750}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLite.Serialization", "ProtocolBuffers.Serialization\ProtocolBuffersLite.Serialization.PL40.csproj", "{E067A59D-9D0A-4A1F-92B1-38E4457241D1}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffers.Test", "ProtocolBuffers.Test\ProtocolBuffers.Test.PL40.csproj", "{DD01ED24-3750-4567-9A23-1DB676A15610}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLite.Test", "ProtocolBuffersLite.Test\ProtocolBuffersLite.Test.PL40.csproj", "{EE01ED24-3750-4567-9A23-1DB676A15610}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLiteMixed.Test", "ProtocolBuffersLite.Test\ProtocolBuffersLiteMixed.Test.PL40.csproj", "{EEFFED24-3750-4567-9A23-1DB676A15610}"
-EndProject
-Global
-	GlobalSection(SolutionConfigurationPlatforms) = preSolution
-		Debug|Any CPU = Debug|Any CPU
-		Release|Any CPU = Release|Any CPU
-	EndGlobalSection
-	GlobalSection(ProjectConfigurationPlatforms) = postSolution
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.Build.0 = Release|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.Build.0 = Release|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Release|Any CPU.Build.0 = Release|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Release|Any CPU.Build.0 = Release|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.Build.0 = Release|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.Build.0 = Release|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.Build.0 = Release|Any CPU
-	EndGlobalSection
-	GlobalSection(SolutionProperties) = preSolution
-		HideSolutionNode = FALSE
-	EndGlobalSection
-EndGlobal

+ 0 - 55
csharp/src/ProtocolBuffersLibrary.SL20.sln

@@ -1,55 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffers", "ProtocolBuffers\ProtocolBuffers.SL20.csproj", "{6908BDCE-D925-43F3-94AC-A531E6DF2591}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLite", "ProtocolBuffers\ProtocolBuffersLite.SL20.csproj", "{6969BDCE-D925-43F3-94AC-A531E6DF2591}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffers.Serialization", "ProtocolBuffers.Serialization\ProtocolBuffers.Serialization.SL20.csproj", "{231391AF-449C-4A39-986C-AD7F270F4750}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLite.Serialization", "ProtocolBuffers.Serialization\ProtocolBuffersLite.Serialization.SL20.csproj", "{E067A59D-9D0A-4A1F-92B1-38E4457241D1}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffers.Test", "ProtocolBuffers.Test\ProtocolBuffers.Test.SL20.csproj", "{DD01ED24-3750-4567-9A23-1DB676A15610}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLite.Test", "ProtocolBuffersLite.Test\ProtocolBuffersLite.Test.SL20.csproj", "{EE01ED24-3750-4567-9A23-1DB676A15610}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLiteMixed.Test", "ProtocolBuffersLite.Test\ProtocolBuffersLiteMixed.Test.SL20.csproj", "{EEFFED24-3750-4567-9A23-1DB676A15610}"
-EndProject
-Global
-	GlobalSection(SolutionConfigurationPlatforms) = preSolution
-		Debug|Any CPU = Debug|Any CPU
-		Release|Any CPU = Release|Any CPU
-	EndGlobalSection
-	GlobalSection(ProjectConfigurationPlatforms) = postSolution
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.Build.0 = Release|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.Build.0 = Release|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Release|Any CPU.Build.0 = Release|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Release|Any CPU.Build.0 = Release|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.Build.0 = Release|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.Build.0 = Release|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.Build.0 = Release|Any CPU
-	EndGlobalSection
-	GlobalSection(SolutionProperties) = preSolution
-		HideSolutionNode = FALSE
-	EndGlobalSection
-EndGlobal

+ 0 - 55
csharp/src/ProtocolBuffersLibrary.SL30.sln

@@ -1,55 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 10.00
-# Visual Studio 2008
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffers", "ProtocolBuffers\ProtocolBuffers.SL30.csproj", "{6908BDCE-D925-43F3-94AC-A531E6DF2591}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLite", "ProtocolBuffers\ProtocolBuffersLite.SL30.csproj", "{6969BDCE-D925-43F3-94AC-A531E6DF2591}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffers.Serialization", "ProtocolBuffers.Serialization\ProtocolBuffers.Serialization.SL30.csproj", "{231391AF-449C-4A39-986C-AD7F270F4750}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLite.Serialization", "ProtocolBuffers.Serialization\ProtocolBuffersLite.Serialization.SL30.csproj", "{E067A59D-9D0A-4A1F-92B1-38E4457241D1}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffers.Test", "ProtocolBuffers.Test\ProtocolBuffers.Test.SL30.csproj", "{DD01ED24-3750-4567-9A23-1DB676A15610}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLite.Test", "ProtocolBuffersLite.Test\ProtocolBuffersLite.Test.SL30.csproj", "{EE01ED24-3750-4567-9A23-1DB676A15610}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLiteMixed.Test", "ProtocolBuffersLite.Test\ProtocolBuffersLiteMixed.Test.SL30.csproj", "{EEFFED24-3750-4567-9A23-1DB676A15610}"
-EndProject
-Global
-	GlobalSection(SolutionConfigurationPlatforms) = preSolution
-		Debug|Any CPU = Debug|Any CPU
-		Release|Any CPU = Release|Any CPU
-	EndGlobalSection
-	GlobalSection(ProjectConfigurationPlatforms) = postSolution
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.Build.0 = Release|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.Build.0 = Release|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Release|Any CPU.Build.0 = Release|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Release|Any CPU.Build.0 = Release|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.Build.0 = Release|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.Build.0 = Release|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.Build.0 = Release|Any CPU
-	EndGlobalSection
-	GlobalSection(SolutionProperties) = preSolution
-		HideSolutionNode = FALSE
-	EndGlobalSection
-EndGlobal

+ 0 - 55
csharp/src/ProtocolBuffersLibrary.SL40.sln

@@ -1,55 +0,0 @@
-Microsoft Visual Studio Solution File, Format Version 11.00
-# Visual Studio 2010
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffers", "ProtocolBuffers\ProtocolBuffers.SL40.csproj", "{6908BDCE-D925-43F3-94AC-A531E6DF2591}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLite", "ProtocolBuffers\ProtocolBuffersLite.SL40.csproj", "{6969BDCE-D925-43F3-94AC-A531E6DF2591}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffers.Serialization", "ProtocolBuffers.Serialization\ProtocolBuffers.Serialization.SL40.csproj", "{231391AF-449C-4A39-986C-AD7F270F4750}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLite.Serialization", "ProtocolBuffers.Serialization\ProtocolBuffersLite.Serialization.SL40.csproj", "{E067A59D-9D0A-4A1F-92B1-38E4457241D1}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffers.Test", "ProtocolBuffers.Test\ProtocolBuffers.Test.SL40.csproj", "{DD01ED24-3750-4567-9A23-1DB676A15610}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLite.Test", "ProtocolBuffersLite.Test\ProtocolBuffersLite.Test.SL40.csproj", "{EE01ED24-3750-4567-9A23-1DB676A15610}"
-EndProject
-Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ProtocolBuffersLiteMixed.Test", "ProtocolBuffersLite.Test\ProtocolBuffersLiteMixed.Test.SL40.csproj", "{EEFFED24-3750-4567-9A23-1DB676A15610}"
-EndProject
-Global
-	GlobalSection(SolutionConfigurationPlatforms) = preSolution
-		Debug|Any CPU = Debug|Any CPU
-		Release|Any CPU = Release|Any CPU
-	EndGlobalSection
-	GlobalSection(ProjectConfigurationPlatforms) = postSolution
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{6908BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.Build.0 = Release|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{6969BDCE-D925-43F3-94AC-A531E6DF2591}.Release|Any CPU.Build.0 = Release|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{231391AF-449C-4A39-986C-AD7F270F4750}.Release|Any CPU.Build.0 = Release|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{E067A59D-9D0A-4A1F-92B1-38E4457241D1}.Release|Any CPU.Build.0 = Release|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{DD01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.Build.0 = Release|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{EE01ED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.Build.0 = Release|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Debug|Any CPU.Build.0 = Debug|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.ActiveCfg = Release|Any CPU
-		{EEFFED24-3750-4567-9A23-1DB676A15610}.Release|Any CPU.Build.0 = Release|Any CPU
-	EndGlobalSection
-	GlobalSection(SolutionProperties) = preSolution
-		HideSolutionNode = FALSE
-	EndGlobalSection
-EndGlobal

+ 0 - 8
csharp/src/UseVS2008.bat

@@ -1,8 +0,0 @@
-@ECHO OFF
-REM ---- Converts the solution to Visual Studio 2008 ----
-PUSHD %~dp0
-ECHO Microsoft Visual Studio Solution File, Format Version 10.00> Temp.sln
-ECHO # Visual Studio 2008>> Temp.sln
-type ProtocolBuffers.sln | FIND /V " Visual Studio " >> Temp.sln
-move /Y Temp.sln ProtocolBuffers.sln
-POPD

+ 0 - 8
csharp/src/UseVS2010.bat

@@ -1,8 +0,0 @@
-@ECHO OFF
-REM ---- Converts the solution to Visual Studio 2010 ----
-PUSHD %~dp0
-ECHO Microsoft Visual Studio Solution File, Format Version 11.00> Temp.sln
-ECHO # Visual Studio 2010>> Temp.sln
-type ProtocolBuffers.sln | FIND /V " Visual Studio " >> Temp.sln
-move /Y Temp.sln ProtocolBuffers.sln
-POPD