version 2.4.1.473
diff --git a/src/ProtocolBuffersLite.Test/TestProtos/UnitTestLiteProtoFile.cs b/src/ProtocolBuffersLite.Test/TestProtos/UnitTestLiteProtoFile.cs
index 0142393..c261977 100644
--- a/src/ProtocolBuffersLite.Test/TestProtos/UnitTestLiteProtoFile.cs
+++ b/src/ProtocolBuffersLite.Test/TestProtos/UnitTestLiteProtoFile.cs
@@ -1,4 +1,4 @@
-// Generated by ProtoGen, Version=2.3.0.277, Culture=neutral, PublicKeyToken=17b3b1f090c3ea48.  DO NOT EDIT!

+// Generated by ProtoGen, Version=2.4.1.473, Culture=neutral, PublicKeyToken=55f7125234beb589.  DO NOT EDIT!

 #pragma warning disable 1591, 0612

 #region Designer generated code

 

@@ -10,7 +10,7 @@
   

   [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]

   [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]

-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]

+  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]

   public static partial class UnitTestLiteProtoFile {

   

     #region Extension registration

@@ -1042,7 +1042,7 @@
   }

   #region Enums

   [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]

-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]

+  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]

   public enum ForeignEnumLite {

     FOREIGN_LITE_FOO = 4,

     FOREIGN_LITE_BAR = 5,

@@ -1054,7 +1054,7 @@
   #region Messages

   [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]

   [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]

-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]

+  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]

   public sealed partial class TestAllTypesLite : pb::GeneratedMessageLite<TestAllTypesLite, TestAllTypesLite.Builder> {

     private TestAllTypesLite() { }

     private static readonly TestAllTypesLite defaultInstance = new TestAllTypesLite().MakeReadOnly();

@@ -1075,10 +1075,10 @@
     #region Nested types

     [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]

     [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]

-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]

+    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]

     public static class Types {

       [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]

-      [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]

+      [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]

       public enum NestedEnum {

         FOO = 1,

         BAR = 2,

@@ -1087,7 +1087,7 @@
       

       [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]

       [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]

-      [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]

+      [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]

       public sealed partial class NestedMessage : pb::GeneratedMessageLite<NestedMessage, NestedMessage.Builder> {

         private NestedMessage() { }

         private static readonly NestedMessage defaultInstance = new NestedMessage().MakeReadOnly();

@@ -1206,7 +1206,7 @@
         

         [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]

         [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]

-        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]

+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]

         public sealed partial class Builder : pb::GeneratedBuilderLite<NestedMessage, Builder> {

           protected override Builder ThisBuilder {

             get { return this; }

@@ -1352,7 +1352,7 @@
       

       [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]

       [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]

-      [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]

+      [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]

       public sealed partial class OptionalGroup : pb::GeneratedMessageLite<OptionalGroup, OptionalGroup.Builder> {

         private OptionalGroup() { }

         private static readonly OptionalGroup defaultInstance = new OptionalGroup().MakeReadOnly();

@@ -1471,7 +1471,7 @@
         

         [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]

         [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]

-        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]

+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]

         public sealed partial class Builder : pb::GeneratedBuilderLite<OptionalGroup, Builder> {

           protected override Builder ThisBuilder {

             get { return this; }

@@ -1617,7 +1617,7 @@
       

       [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]

       [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]

-      [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]

+      [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]

       public sealed partial class RepeatedGroup : pb::GeneratedMessageLite<RepeatedGroup, RepeatedGroup.Builder> {

         private RepeatedGroup() { }

         private static readonly RepeatedGroup defaultInstance = new RepeatedGroup().MakeReadOnly();

@@ -1736,7 +1736,7 @@
         

         [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]

         [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]

-        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]

+        [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]

         public sealed partial class Builder : pb::GeneratedBuilderLite<RepeatedGroup, Builder> {

           protected override Builder ThisBuilder {

             get { return this; }

@@ -3509,7 +3509,7 @@
     

     [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]

     [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]

-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]

+    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]

     public sealed partial class Builder : pb::GeneratedBuilderLite<TestAllTypesLite, Builder> {

       protected override Builder ThisBuilder {

         get { return this; }

@@ -5955,7 +5955,7 @@
   

   [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]

   [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]

-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]

+  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]

   public sealed partial class ForeignMessageLite : pb::GeneratedMessageLite<ForeignMessageLite, ForeignMessageLite.Builder> {

     private ForeignMessageLite() { }

     private static readonly ForeignMessageLite defaultInstance = new ForeignMessageLite().MakeReadOnly();

@@ -6074,7 +6074,7 @@
     

     [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]

     [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]

-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]

+    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]

     public sealed partial class Builder : pb::GeneratedBuilderLite<ForeignMessageLite, Builder> {

       protected override Builder ThisBuilder {

         get { return this; }

@@ -6220,7 +6220,7 @@
   

   [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]

   [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]

-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]

+  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]

   public sealed partial class TestPackedTypesLite : pb::GeneratedMessageLite<TestPackedTypesLite, TestPackedTypesLite.Builder> {

     private TestPackedTypesLite() { }

     private static readonly TestPackedTypesLite defaultInstance = new TestPackedTypesLite().MakeReadOnly();

@@ -6791,7 +6791,7 @@
     

     [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]

     [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]

-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]

+    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]

     public sealed partial class Builder : pb::GeneratedBuilderLite<TestPackedTypesLite, Builder> {

       protected override Builder ThisBuilder {

         get { return this; }

@@ -7463,7 +7463,7 @@
   

   [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]

   [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]

-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]

+  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]

   public sealed partial class TestAllExtensionsLite : pb::ExtendableMessageLite<TestAllExtensionsLite, TestAllExtensionsLite.Builder> {

     private TestAllExtensionsLite() { }

     private static readonly TestAllExtensionsLite defaultInstance = new TestAllExtensionsLite().MakeReadOnly();

@@ -7570,7 +7570,7 @@
     

     [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]

     [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]

-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]

+    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]

     public sealed partial class Builder : pb::ExtendableBuilderLite<TestAllExtensionsLite, Builder> {

       protected override Builder ThisBuilder {

         get { return this; }

@@ -7690,7 +7690,7 @@
   

   [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]

   [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]

-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]

+  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]

   public sealed partial class OptionalGroup_extension_lite : pb::GeneratedMessageLite<OptionalGroup_extension_lite, OptionalGroup_extension_lite.Builder> {

     private OptionalGroup_extension_lite() { }

     private static readonly OptionalGroup_extension_lite defaultInstance = new OptionalGroup_extension_lite().MakeReadOnly();

@@ -7809,7 +7809,7 @@
     

     [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]

     [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]

-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]

+    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]

     public sealed partial class Builder : pb::GeneratedBuilderLite<OptionalGroup_extension_lite, Builder> {

       protected override Builder ThisBuilder {

         get { return this; }

@@ -7955,7 +7955,7 @@
   

   [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]

   [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]

-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]

+  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]

   public sealed partial class RepeatedGroup_extension_lite : pb::GeneratedMessageLite<RepeatedGroup_extension_lite, RepeatedGroup_extension_lite.Builder> {

     private RepeatedGroup_extension_lite() { }

     private static readonly RepeatedGroup_extension_lite defaultInstance = new RepeatedGroup_extension_lite().MakeReadOnly();

@@ -8074,7 +8074,7 @@
     

     [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]

     [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]

-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]

+    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]

     public sealed partial class Builder : pb::GeneratedBuilderLite<RepeatedGroup_extension_lite, Builder> {

       protected override Builder ThisBuilder {

         get { return this; }

@@ -8220,7 +8220,7 @@
   

   [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]

   [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]

-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]

+  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]

   public sealed partial class TestPackedExtensionsLite : pb::ExtendableMessageLite<TestPackedExtensionsLite, TestPackedExtensionsLite.Builder> {

     private TestPackedExtensionsLite() { }

     private static readonly TestPackedExtensionsLite defaultInstance = new TestPackedExtensionsLite().MakeReadOnly();

@@ -8327,7 +8327,7 @@
     

     [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]

     [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]

-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]

+    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]

     public sealed partial class Builder : pb::ExtendableBuilderLite<TestPackedExtensionsLite, Builder> {

       protected override Builder ThisBuilder {

         get { return this; }

@@ -8447,7 +8447,7 @@
   

   [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]

   [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]

-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]

+  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]

   public sealed partial class TestNestedExtensionLite : pb::GeneratedMessageLite<TestNestedExtensionLite, TestNestedExtensionLite.Builder> {

     private TestNestedExtensionLite() { }

     private static readonly TestNestedExtensionLite defaultInstance = new TestNestedExtensionLite().MakeReadOnly();

@@ -8549,7 +8549,7 @@
     

     [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]

     [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]

-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]

+    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]

     public sealed partial class Builder : pb::GeneratedBuilderLite<TestNestedExtensionLite, Builder> {

       protected override Builder ThisBuilder {

         get { return this; }

@@ -8668,7 +8668,7 @@
   

   [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]

   [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]

-  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]

+  [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]

   public sealed partial class TestDeprecatedLite : pb::GeneratedMessageLite<TestDeprecatedLite, TestDeprecatedLite.Builder> {

     private TestDeprecatedLite() { }

     private static readonly TestDeprecatedLite defaultInstance = new TestDeprecatedLite().MakeReadOnly();

@@ -8789,7 +8789,7 @@
     

     [global::System.Diagnostics.DebuggerNonUserCodeAttribute()]

     [global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]

-    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.3.0.277")]

+    [global::System.CodeDom.Compiler.GeneratedCodeAttribute("ProtoGen", "2.4.1.473")]

     public sealed partial class Builder : pb::GeneratedBuilderLite<TestDeprecatedLite, Builder> {

       protected override Builder ThisBuilder {

         get { return this; }